Гауссове згладжування: відмінності між версіями

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[перевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Enns.ia (обговорення | внесок)
Функція пропозицій посилань: додано 2 посилання.
Мітки: Візуальний редактор Редагування з мобільного пристрою Редагування через мобільну версію Завдання новачку Запропоноване: додати посилання
BlzzUa (обговорення | внесок)
Немає опису редагування
Рядок 19: Рядок 19:
: <math>G(x,y) = \frac{1}{2\pi \sigma^2} e^{-\frac{x^2 + y^2}{2 \sigma^2}}</math><ref name="ShapiroStockman">Shapiro, L. G. &amp; Stockman, G. C: «Computer Vision», page 137, 150. Prentence Hall, 2001</ref><ref name="NixonAguado">Mark S. Nixon and Alberto S. Aguado. ''Feature Extraction and Image Processing''. Academic Press, 2008, p. 88.</ref>
: <math>G(x,y) = \frac{1}{2\pi \sigma^2} e^{-\frac{x^2 + y^2}{2 \sigma^2}}</math><ref name="ShapiroStockman">Shapiro, L. G. &amp; Stockman, G. C: «Computer Vision», page 137, 150. Prentence Hall, 2001</ref><ref name="NixonAguado">Mark S. Nixon and Alberto S. Aguado. ''Feature Extraction and Image Processing''. Academic Press, 2008, p. 88.</ref>


де ''x''&nbsp;— це відстань від початку координат в осі абсцис, ''y''&nbsp;— це відстань від початку координат в осі ординат, а ''σ''&nbsp;— [[стандартне відхилення]] розподілу Гауса. Коли метод застосовується у двох вимірах, отримується поверхня, [[контур]]и якої&nbsp;— [[концентричні кола]] розподілу Гауса з центральної точки. Значення з цього розподілу використовуються для створення матриці [[Згортка (математичний аналіз)|згортки]]. Для кожного нового значення пікселя визначається [[середнє зважене]] в околі пікселя. Значення поточного оригінального пікселя має більшу вагу (найвище значення розподілу Гауса), а сусідні пікселі отримують все меншу вагу в залежності від того, наскільки далеко вони знаходяться від поточного оригінального пікселя. Це надає ефект розмитості, яка зберігає кордони та краї краще, ніж інші, аналогічні фільтри розмиття.
де ''x''&nbsp;— це відстань від початку координат в осі абсцис, ''y''&nbsp;— це відстань від початку координат в осі ординат, а ''σ''&nbsp;— [[стандартне відхилення]] розподілу Гауса. Коли метод застосовується у двох вимірах, отримується поверхня, [[контур]]и якої&nbsp;— [[концентричні кола]] розподілу Гауса з центральної точки. Значення з цього розподілу використовуються для створення матриці [[Згортка (математичний аналіз)|згортки]]. Для кожного нового значення пікселя визначається [[середнє зважене]] в околі пікселя. Значення поточного оригінального пікселя має більшу вагу (найвище значення розподілу Гауса), а сусідні пікселі отримують все меншу вагу в залежності від того, наскільки далеко вони знаходяться від поточного оригінального пікселя. Це надає ефект розмитості, яке зберігає кордони та краї краще, ніж інші, аналогічні фільтри розмиття.


Теоретично, в кожній точці зображення буде відмінним від нуля результат функції Гауса, це означає, що для розрахунку для кожного пікселя необхідно брати значення усіх пікселів у зображенні. На практиці, при обчисленні дискретного спрощення функції Гауса, вага пікселів на відстані більш ніж 3''σ'' достатньо мала, щоб мати якийсь вплив на середнє зважене значення і вважається нулем. Значення пікселів, що розташовані за межами цього діапазону, можуть бути проігноровані. Як правило, програмі [[Обробка зображень|обробки зображень]] необхідно тільки розрахувати матриці з розмірами <math>\lceil6\sigma\rceil</math> × <math>\lceil6\sigma\rceil</math>, щоб забезпечити результат, який є досить близьким до отриманого від усього розподілу Гауса.
Теоретично для розрахунку для кожного пікселя результата необхідно брати значення усіх пікселів у зображенні. На практиці, при обчисленні дискретного спрощення функції Гауса, вага пікселів на відстані більш ніж 3''σ'' достатньо мала, щоб мати якийсь вплив на середнє зважене значення і вважається нулем. Значення пікселів, що розташовані за межами цього діапазону, можуть бути проігноровані. Як правило, програмі [[Обробка зображень|обробки зображень]] необхідно тільки розрахувати матриці з розмірами <math>\lceil6\sigma\rceil</math> × <math>\lceil6\sigma\rceil</math>, яка називається ядром, щоб забезпечити результат, який є досить близьким до отриманого від усього розподілу Гауса.


Розмивання Гауса може застосовуватися для двовимірних зображень у вигляді двох незалежних одновимірних, так званих ''[[Роздільний фільтр|лінійно розділених]]'' розрахунків. Тобто, ефект застосування двовимірної матриці може бути досягнуто завдяки застосуванню ряду одновимірної матриці Гауса в горизонтальному напрямку, а потім повторно у вертикальному напрямку. З точки зору швидкості обчислення, це корисна властивість, оскільки розрахунки можуть бути виконані в <math>O\left(w_\text{kernel} w_\text{image} h_\text{image}\right) + O\left(h_\text{kernel} w_\text{image} h_\text{image}\right)</math> час (де ''H''- це висота і ''W''- це ширина, див. [[Нотація Ландау]]), на відміну від <math>O\left(w_\text{kernel} h_\text{kernel} w_\text{image} h_\text{image}\right)</math> для нерозділених обчислень.
Розмивання Гауса може застосовуватися для двовимірних зображень у вигляді двох незалежних одновимірних, так званих ''[[Роздільний фільтр|лінійно розділених]]'' розрахунків. Тобто, ефект застосування двовимірної матриці може бути досягнуто завдяки застосуванню ряду одновимірної матриці Гауса в горизонтальному напрямку, а потім повторно у вертикальному напрямку. З точки зору швидкості обчислення, це корисна властивість, оскільки розрахунки можуть бути виконані в <math>O\left(w_\text{kernel} w_\text{image} h_\text{image}\right) + O\left(h_\text{kernel} w_\text{image} h_\text{image}\right)</math> час (де ''H''- це висота і ''W''- це ширина, див. [[Нотація Ландау]]), на відміну від <math>O\left(w_\text{kernel} h_\text{kernel} w_\text{image} h_\text{image}\right)</math> для нерозділених обчислень.


Застосування розмивання Гауса призводить до розмивання на зображення і має ті ж наслідки, що застосування єдиного розмивання Гауса, [[радіус]] якого рівний квадратному кореню з суми квадратів радіусу розмиття, що застосовується. Наприклад, застосовуючи послідовне розмивання Гауса з радіусом 6 і 8 дає ті ж результати, як застосування єдиного розмивання радіусом 10, оскільки <math>\sqrt{6^2 + 8^2} = 10</math>. Згідно з цим відношенням, час обробки не може бути зменшений шляхом імітації розмивання Гауса з послідовним процесом.
Застосування розмивання Гауса призводить до розмивання на зображення і має ті ж наслідки, що застосування єдиного розмивання Гауса, [[радіус]] якого рівний квадратному кореню з суми квадратів радіусу розмиття, що застосовується. Наприклад, застосовуючи послідовне розмивання Гауса з радіусом 6 і 8 дає ті ж результати, як застосування єдиного розмивання радіусом 10, оскільки <math>\sqrt{6^2 + 8^2} = 10</math>. Згідно з цим відношенням, час обробки не може бути зменшений шляхом імітації розмивання Гауса з послідовним процесом.

== Фільтр низьких частот ==
[[Файл:Blour-scale-image.png|міні|250x250пкс|Приклад різних ступенів розмиття за Гаусом. Перший кадр не розфокусований.]]Гаусове розмиття&nbsp;— це [[фільтр низьких частот]], який послаблює високочастотні сигнали.<ref name="HaddadAkansu">R.A. Haddad and A.N. Akansu, "[https://web.njit.edu/~akansu/PAPERS/Haddad-AkansuFastGaussianBinomialFiltersIEEE-TSP-March1991.pdf A Class of Fast Gaussian Binomial Filters for Speech and Image Processing], " IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 39, pp 723—727, March 1991.</ref>
Його амплітудний графік Боде ([[логарифмічна шкала]] в [[Частотна область|частотній області]]) є [[Парабола|параболою]].


== Приклад матриці Гауса ==
== Приклад матриці Гауса ==


Рядок 58: Рядок 52:
Для скорочення часу обчислень можна скористатися лінійно відокремленим розмиванням Гауса, [[Роздільний фільтр|розділивши]] цей процес на два етапи. У першому проходженні одновимірна матриця використовується для розмиття зображення тільки в горизонтальному або вертикальному напрямку. На другому проході матриця використовується для розмиття в іншому напрямку. Отриманий результат відповідає результату з використанням двовимірних матриць, але вимагає меншої кількості обчислень.
Для скорочення часу обчислень можна скористатися лінійно відокремленим розмиванням Гауса, [[Роздільний фільтр|розділивши]] цей процес на два етапи. У першому проходженні одновимірна матриця використовується для розмиття зображення тільки в горизонтальному або вертикальному напрямку. На другому проході матриця використовується для розмиття в іншому напрямку. Отриманий результат відповідає результату з використанням двовимірних матриць, але вимагає меншої кількості обчислень.


Дискретизація, як правило, досягається шляхом відбору для фільтра гаусівських [[Дискретний простір|дискретних точок]] на відповідних позиціях кожного центрального [[Піксель|пікселя]]. Це дозволяє зменшити обчислювальні витрати, але при дуже малих значеннях точки відбору гауссової функції невелика кількість зразків призводить до великої помилки. У цих випадках точність підтримується (при невеликій обчислювальної вартості) шляхом інтеграції гаусових функцій по площі кожного пікселя.<ref name="Reinhard"> Еріка Рейнхарда. ''Зображення з високим динамічним діапазоном: збір, відображення та Image-Based Lighting''. Morgan Kaufmann, 2006, с. 233—234. </ref>
Дискретизація, як правило, досягається за допомогою вибірки для фільтра гаусівських [[Дискретний простір|дискретних точок]] на відповідних позиціях кожного центрального [[Піксель|пікселя]]. Це дозволяє зменшити обчислювальні витрати, але при дуже малих значеннях точки відбору гаусової функції невелика кількість зразків призводить до великої помилки. У цих випадках точність підтримується (при невеликій обчислювальної вартості) шляхом інтеграції гаусових функцій по площі кожного пікселя.<ref name="Reinhard"> Еріка Рейнхарда. ''Зображення з високим динамічним діапазоном: збір, відображення та Image-Based Lighting''. Morgan Kaufmann, 2006, с. 233—234. </ref>


При конвертації гаусівських безперервних величин у дискретні значення, необхідного для ядра, сума цих значень буде відрізнятися від 1. Це може викликати потемніння або яскравість зображення. Для виправлення цього значення може бути нормалізована шляхом ділення кожного терміна в ядрі за сумою всіх умов в ядрі.
При конвертації гаусівських безперервних величин у дискретні значення, необхідного для ядра, сума цих значень буде відрізнятися від 1. Це може викликати потемніння або яскравість зображення. Для виправлення цього значення може бути нормалізована шляхом ділення кожного терміна в ядрі за сумою всіх умов в ядрі.
Рядок 66: Рядок 60:
<math display="block">\sigma_r \approx \frac{\sigma_X}{\sigma_f 2 \sqrt \pi}.</math>
<math display="block">\sigma_r \approx \frac{\sigma_X}{\sigma_f 2 \sqrt \pi}.</math>


== Використання ==
== Загальне використання ==
=== Виявлення країв ===
=== Виявлення країв ===
[[Файл:Edge Image.gif|міні|384x384пкс|Це показує, як згладжування впливає на виявлення країв. З більшим згладжуванням виявляється менше країв]]
[[Файл:Edge Image.gif|міні|384x384пкс|Це показує, як згладжування впливає на виявлення країв. З більшим згладжуванням виявляється менше країв]]
Гаусове згладжування зазвичай використовується з визначенням країв. Більшість алгоритмів виявлення країв чутливі до шуму; двовимірний фільтр [[П'єр-Симон Лаплас|Лапласа]], побудований на основі дискретизації оператора Лапласа, дуже чутливий до шумного середовища.
Гаусове згладжування зазвичай використовується з визначенням країв. Більшість алгоритмів виявлення країв чутливі до шуму; двовимірний фільтр [[П'єр-Симон Лаплас|Лапласа]], побудований на основі дискретизації оператора Лапласа, дуже чутливий до шумного середовища.


Використання фільтра Gaussian Blur перед виявленням країв має на меті зменшити рівень шуму в зображенні, що покращує результат наступного алгоритму визначення країв. Цей підхід зазвичай називають фільтрацією Лапласа-Гаусса або фільтрацією LoG.
Використання фільтра Gaussian Blur перед виявленням країв має на меті зменшити рівень шуму в зображенні, що покращує результат наступного алгоритму визначення країв. Цей підхід зазвичай називають фільтрацією Лапласа-Гауса або фільтрацією LoG.


=== Фотографія ===
=== Фотографія ===
Рядок 79: Рядок 73:
Гаусове розмиття автоматично застосовується під час [[Редагування зображень|пост-обробки]] фотографій програмним забезпеченням камери, що призводить до незворотної втрати деталей.
Гаусове розмиття автоматично застосовується під час [[Редагування зображень|пост-обробки]] фотографій програмним забезпеченням камери, що призводить до незворотної втрати деталей.


=== Фільтр низьких частот ===
[[Файл:Blour-scale-image.png|міні|250x250пкс|Приклад різних ступенів розмиття за Гаусом. Перший кадр не розфокусований.]]В обробці сигналів Гаусове розмиття&nbsp;— це [[фільтр низьких частот]], який послаблює високочастотні сигнали.<ref name="HaddadAkansu">R.A. Haddad and A.N. Akansu, "[https://web.njit.edu/~akansu/PAPERS/Haddad-AkansuFastGaussianBinomialFiltersIEEE-TSP-March1991.pdf A Class of Fast Gaussian Binomial Filters for Speech and Image Processing], " IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 39, pp 723—727, March 1991.</ref>
Його амплітудний графік Боде ([[логарифмічна шкала]] в [[Частотна область|частотній області]]) є [[Парабола|параболою]].
== Див. також ==
== Див. також ==
* [[Різниця гауссіанів]]
* [[Різниця гауссіанів]]

Версія за 18:04, 21 березня 2024

Оригінал зображення
Original image
Розмите зображення з σ = 2
Розмите зображення Гаусівським розмиттям,
де σ = 2.

Розмивання Гауса — це спосіб розфокусування зображення за допомогою фільтра, який використовує математичну функцію, названу на честь вченого Карла Фрідріха Гауса. Цей ефект широко використовується в графічних програмах, як правило, для зменшення зашумленості зображенні та зниження деталізації. Візуальний ефект цієї фільтрації розмивання аналогічний погляду на зображення крізь напівпрозорий екран, суттєво відрізняючись від ефекту боке, який можна отримати за допомогою несфокусованого об'єктива або тіні об'єкта при звичайному освітленні.

Принцип роботи

Розмивання Гауса може бути застосоване для отримання згладженого чорно-білого зображення з півтонного друку.

Розмивання Гауса — це тип фільтру розмивання зображення, що використовує функцію Гауса (яка також зустрічається в нормальному розподілі в області статистики) для розрахунку трансформації кожного пікселя у зображенні. Рівняння функції Гауса в одному вимірі:

Для двовимірного випадку, вираз складається з двох таких функцій, по одній для кожної осі виміру:

[1][2]

де x — це відстань від початку координат в осі абсцис, y — це відстань від початку координат в осі ординат, а σ — стандартне відхилення розподілу Гауса. Коли метод застосовується у двох вимірах, отримується поверхня, контури якої — концентричні кола розподілу Гауса з центральної точки. Значення з цього розподілу використовуються для створення матриці згортки. Для кожного нового значення пікселя визначається середнє зважене в околі пікселя. Значення поточного оригінального пікселя має більшу вагу (найвище значення розподілу Гауса), а сусідні пікселі отримують все меншу вагу в залежності від того, наскільки далеко вони знаходяться від поточного оригінального пікселя. Це надає ефект розмитості, яке зберігає кордони та краї краще, ніж інші, аналогічні фільтри розмиття.

Теоретично для розрахунку для кожного пікселя результата необхідно брати значення усіх пікселів у зображенні. На практиці, при обчисленні дискретного спрощення функції Гауса, вага пікселів на відстані більш ніж 3σ достатньо мала, щоб мати якийсь вплив на середнє зважене значення і вважається нулем. Значення пікселів, що розташовані за межами цього діапазону, можуть бути проігноровані. Як правило, програмі обробки зображень необхідно тільки розрахувати матриці з розмірами × , яка називається ядром, щоб забезпечити результат, який є досить близьким до отриманого від усього розподілу Гауса.

Розмивання Гауса може застосовуватися для двовимірних зображень у вигляді двох незалежних одновимірних, так званих лінійно розділених розрахунків. Тобто, ефект застосування двовимірної матриці може бути досягнуто завдяки застосуванню ряду одновимірної матриці Гауса в горизонтальному напрямку, а потім повторно у вертикальному напрямку. З точки зору швидкості обчислення, це корисна властивість, оскільки розрахунки можуть бути виконані в час (де H- це висота і W- це ширина, див. Нотація Ландау), на відміну від для нерозділених обчислень.

Застосування розмивання Гауса призводить до розмивання на зображення і має ті ж наслідки, що застосування єдиного розмивання Гауса, радіус якого рівний квадратному кореню з суми квадратів радіусу розмиття, що застосовується. Наприклад, застосовуючи послідовне розмивання Гауса з радіусом 6 і 8 дає ті ж результати, як застосування єдиного розмивання радіусом 10, оскільки . Згідно з цим відношенням, час обробки не може бути зменшений шляхом імітації розмивання Гауса з послідовним процесом.

Приклад матриці Гауса

Це приклад матриці ваги пікселя. Центральний елемент ([4, 4]) має найбільше значення. Для елементів, відстань яких до центру зростає, зниження значення відбувається симетрично.

0.00000067 0.00002292 0.00019117 0.00038771 0.00019117 0.00002292 0.00000067
0.00002292 0.00078633 0.00655965 0.01330373 0.00655965 0.00078633 0.00002292
0.00019117 0.00655965 0.05472157 0.11098164 0.05472157 0.00655965 0.00019117
0.00038771 0.01330373 0.11098164 0.22508352 0.11098164 0.01330373 0.00038771
0.00019117 0.00655965 0.05472157 0.11098164 0.05472157 0.00655965 0.00019117
0.00002292 0.00078633 0.00655965 0.01330373 0.00655965 0.00078633 0.00002292
0.00000067 0.00002292 0.00019117 0.00038771 0.00019117 0.00002292 0.00000067

Центральний елемент 0.22508352 є у 1177 разів більший за 0,00019117 (який знаходиться майже за межами 3σ).

Різниця між малим і великим розмиттям за Гаусом

Реалізація

Для скорочення часу обчислень можна скористатися лінійно відокремленим розмиванням Гауса, розділивши цей процес на два етапи. У першому проходженні одновимірна матриця використовується для розмиття зображення тільки в горизонтальному або вертикальному напрямку. На другому проході матриця використовується для розмиття в іншому напрямку. Отриманий результат відповідає результату з використанням двовимірних матриць, але вимагає меншої кількості обчислень.

Дискретизація, як правило, досягається за допомогою вибірки для фільтра гаусівських дискретних точок на відповідних позиціях кожного центрального пікселя. Це дозволяє зменшити обчислювальні витрати, але при дуже малих значеннях точки відбору гаусової функції невелика кількість зразків призводить до великої помилки. У цих випадках точність підтримується (при невеликій обчислювальної вартості) шляхом інтеграції гаусових функцій по площі кожного пікселя.[3]

При конвертації гаусівських безперервних величин у дискретні значення, необхідного для ядра, сума цих значень буде відрізнятися від 1. Це може викликати потемніння або яскравість зображення. Для виправлення цього значення може бути нормалізована шляхом ділення кожного терміна в ядрі за сумою всіх умов в ядрі.

Зменшення дисперсії

Скільки коштує фільтр Гауса зі стандартним відхиленням σ f згладити картинку? Іншими словами, наскільки це зменшує стандартне відхилення значень пікселів на зображенні? Припустімо, що значення пікселів відтінків сірого мають стандартне відхилення σx, то після застосування фільтра зменшене стандартне відхилення σr можна приблизно оцінити як

Використання

Виявлення країв

Це показує, як згладжування впливає на виявлення країв. З більшим згладжуванням виявляється менше країв

Гаусове згладжування зазвичай використовується з визначенням країв. Більшість алгоритмів виявлення країв чутливі до шуму; двовимірний фільтр Лапласа, побудований на основі дискретизації оператора Лапласа, дуже чутливий до шумного середовища.

Використання фільтра Gaussian Blur перед виявленням країв має на меті зменшити рівень шуму в зображенні, що покращує результат наступного алгоритму визначення країв. Цей підхід зазвичай називають фільтрацією Лапласа-Гауса або фільтрацією LoG.

Фотографія

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

Гаусове розмиття автоматично застосовується під час пост-обробки фотографій програмним забезпеченням камери, що призводить до незворотної втрати деталей.

Фільтр низьких частот

Приклад різних ступенів розмиття за Гаусом. Перший кадр не розфокусований.

В обробці сигналів Гаусове розмиття — це фільтр низьких частот, який послаблює високочастотні сигнали.[4]

Його амплітудний графік Боде (логарифмічна шкала в частотній області) є параболою.

Див. також

Примітки

  1. Shapiro, L. G. & Stockman, G. C: «Computer Vision», page 137, 150. Prentence Hall, 2001
  2. Mark S. Nixon and Alberto S. Aguado. Feature Extraction and Image Processing. Academic Press, 2008, p. 88.
  3. Еріка Рейнхарда. Зображення з високим динамічним діапазоном: збір, відображення та Image-Based Lighting. Morgan Kaufmann, 2006, с. 233—234.
  4. R.A. Haddad and A.N. Akansu, "A Class of Fast Gaussian Binomial Filters for Speech and Image Processing, " IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 39, pp 723—727, March 1991.

Посилання