Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Зменшення Шуму та Згладжування | Обробка Зображень з OpenCV
Основи комп'ютерного зору

bookЗменшення Шуму та Згладжування

Шум на зображеннях проявляється як небажана зернистість або спотворення, що часто виникає через низьке освітлення, артефакти стиснення або обмеження сенсора. Техніки згладжування допомагають зменшити шум, зберігаючи важливі деталі зображення.

Гаусове розмивання (згладжування шуму)

Функція cv2.GaussianBlur застосовує гаусове розмивання, яке згладжує зображення шляхом усереднення значень пікселів за допомогою гаусового ядра (зважене середнє, яке надає більшу вагу центральним пікселям):

  • cv2.GaussianBlur(src, ksize, sigmaX):
    • src: вихідне зображення для розмивання;
    • ksize: розмір ядра у форматі (width, height), обидва значення мають бути непарними (наприклад, (5, 5));
    • sigmaX: стандартне відхилення у напрямку X; визначає ступінь розмивання.
  • Функція зменшує шум і деталі зображення шляхом згортки зображення з гаусовою функцією, що корисно для завдань, таких як виявлення контурів або попередня обробка перед порогуванням.
blurred = cv2.GaussianBlur(image, ksize, sigmaX)
GaussianBlurExample
Note
Дізнайтеся більше

У cv2.GaussianBlur() параметр sigmaX — це стандартне відхилення Гаусового ядра по осі X, а аналогічний параметр по осі Y (sigmaY) за замовчуванням має значення 0. Якщо обидва параметри sigmaX та sigmaY дорівнюють 0, стандартне відхилення обчислюється на основі розміру ядра.

Медіанне розмиття (видалення шуму типу «сіль і перець»)

Функція cv2.medianBlur застосовує медіанний фільтр, який замінює значення кожного пікселя на медіанне значення сусідніх пікселів у вікні ядра:

  • cv2.medianBlur(src, ksize):
    • src: вихідне зображення для фільтрації;
    • ksize: розмір квадратного ядра (має бути непарним цілим числом, наприклад, 3, 5, 7).
  • Медіанне розмиття особливо ефективне для видалення шуму типу «сіль і перець», оскільки зберігає краї, усуваючи ізольовані зашумлені пікселі.
median_blurred = cv2.medianBlur(image, ksize)
MedianBlurExample
Завдання

Swipe to start coding

Вам надано змінну image із зашумленим зображенням цуценяти: noisy puppy

  • Застосувати Гаусове розмивання та зберегти результат у змінній gaussian_blurred;
  • Застосувати медіанне розмивання та зберегти результат у змінній median_blurred.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 4
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

Awesome!

Completion rate improved to 3.45

bookЗменшення Шуму та Згладжування

Свайпніть щоб показати меню

Шум на зображеннях проявляється як небажана зернистість або спотворення, що часто виникає через низьке освітлення, артефакти стиснення або обмеження сенсора. Техніки згладжування допомагають зменшити шум, зберігаючи важливі деталі зображення.

Гаусове розмивання (згладжування шуму)

Функція cv2.GaussianBlur застосовує гаусове розмивання, яке згладжує зображення шляхом усереднення значень пікселів за допомогою гаусового ядра (зважене середнє, яке надає більшу вагу центральним пікселям):

  • cv2.GaussianBlur(src, ksize, sigmaX):
    • src: вихідне зображення для розмивання;
    • ksize: розмір ядра у форматі (width, height), обидва значення мають бути непарними (наприклад, (5, 5));
    • sigmaX: стандартне відхилення у напрямку X; визначає ступінь розмивання.
  • Функція зменшує шум і деталі зображення шляхом згортки зображення з гаусовою функцією, що корисно для завдань, таких як виявлення контурів або попередня обробка перед порогуванням.
blurred = cv2.GaussianBlur(image, ksize, sigmaX)
GaussianBlurExample
Note
Дізнайтеся більше

У cv2.GaussianBlur() параметр sigmaX — це стандартне відхилення Гаусового ядра по осі X, а аналогічний параметр по осі Y (sigmaY) за замовчуванням має значення 0. Якщо обидва параметри sigmaX та sigmaY дорівнюють 0, стандартне відхилення обчислюється на основі розміру ядра.

Медіанне розмиття (видалення шуму типу «сіль і перець»)

Функція cv2.medianBlur застосовує медіанний фільтр, який замінює значення кожного пікселя на медіанне значення сусідніх пікселів у вікні ядра:

  • cv2.medianBlur(src, ksize):
    • src: вихідне зображення для фільтрації;
    • ksize: розмір квадратного ядра (має бути непарним цілим числом, наприклад, 3, 5, 7).
  • Медіанне розмиття особливо ефективне для видалення шуму типу «сіль і перець», оскільки зберігає краї, усуваючи ізольовані зашумлені пікселі.
median_blurred = cv2.medianBlur(image, ksize)
MedianBlurExample
Завдання

Swipe to start coding

Вам надано змінну image із зашумленим зображенням цуценяти: noisy puppy

  • Застосувати Гаусове розмивання та зберегти результат у змінній gaussian_blurred;
  • Застосувати медіанне розмивання та зберегти результат у змінній median_blurred.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 4
single

single

some-alt