Частотная область.
Преобразования Фурье в одномерном случае - одномерный интеграл.
В двумерном - в показателе экспоненты появляется xu+yv:
F(u, v) = ∫ f(x,y) e -2πi(xu+yv) dxdy
- F(u,v) - полный спектр.
-
F(u,v) - спектр. (Если первое назвать спектром, то второе - амплитудный спектр) (модуль - комплексный)
Свойства спектра
-
Сдвиг.
-
Дистрибутивность и изменение масштаба. F(af + bg) = aF(f)+bF(g)
- Период F(u + M, v + N) = F(u, v)
- F(u, v) = Fy(Fx(f)) = Fx(Fy(f))
- f над R,
F = WM * f. Сложность вычисления O(M²) Если изображение квадратное MxM, то O(M²M + MM²) = O(M³) , где M - размер изображения по одной стороне.
Придумали делать не за M², а за MlogM, потому что Wm не произвольная матрица, а определенная, потому что ΩM - степени одного комплексного числа.
Тут немножко конволюции, как мы считали на алгоритмах, пользуясь разделением чётных и нечётных корней.
Обработка изображений в частотной области
В некоторых случаях в частотной области решить проще, а иногда есть случаи, когда в пространственной области не решается, а в частотной всё нормально.
Фильтрация в частотной области - умножение двух одинаковых по размерам спектров.
Если f имеет спектр F, а h -> H (f, h - изображения одинакового размера), то g=f * h <=> G = F * H
Фильтры низкой частоты
- Идеальный ФНЧ
- В частотной области: H(u,v)={1, если D(u,v)< D0; 0, иначе}
- А в пространственной области - функция как нормальная, но с волнами - и вообще неудобно.
- Фильтры Баттерворта (БФНЧ)
Семейство фильтров разной степени гладкости, в зависимости от n. Точка 0.5 - неподвижная. Волн только одна-две на каждой ветви.
- Фильтр Гаусса Низких частот (ГФНЧ)
Он уже выглядит как настоящая нормальная функция. В этом смысле он лучше всех предыдущих.
Её обратная функция (h) имеет качественно такой же вид. Поэтому паразитных волн при свёртке не имеет. Можно взять в качестве σ= D0 Отдельно про Гаусса:
Фильтры высоких частот ФВЧ
Чтобы получить передаточную функцию ультра высоких частот мы берем дополнение. Hh(u, v) = 1 - Hl(u, v) , (high - low)
Повышение резкости.
Хорошо делать при помощи преобразования Лапласа.
H(лаплас)(u,v) = -(u²+v²)
Детектор краев Канни
Создается порог Т1, от которого считать точку зародышевой. От неё ведется трасировка по светлым линиям, пока они не станут слишком тёмными(порог Т2)