Что обозначает частотная область в случае изображений?

110

Я только что узнал о частотной области в изображениях.

Я могу понять частотный спектр в случае волн. Он обозначает, какие частоты присутствуют в волне. Если мы рисуем частотный спектр , мы получаем импульсный сигнал при и . И мы можем использовать соответствующие фильтры для извлечения конкретной информации.- f + fcos(2πft)f+f

Но что означает частотный спектр в случае изображений? Когда мы берем БПФ изображения в OpenCV, мы получаем странную картину. Что обозначает это изображение? И каково его применение?

Я читал некоторые книги, но они дают много математических уравнений, а не физическое значение. Так может ли кто-нибудь дать простое объяснение частотной области в изображениях с простым применением его в обработке изображений?

Абид Рахман К
источник
5
Лучший способ понять, что делает преобразование, - это поиграть с подачей простых входных данных в обратное преобразование.
эндолит
1
Смотрите также это интересное объяснение Стива Эддина. Blogs.mathworks.com/steve/2009/12/04/…
Алессандро Якопсон
@endolith Да! вам нужно заранее получить знания о предметной области, чтобы полностью понять, что происходит и почему это происходит
SIslam
дорогая частотная область изображения представляет интенсивность мощности в ваттах по отношению к определенной частоте в герцах, такой как (компонент постоянного тока, низкая частота и высокая частота)
mntaser

Ответы:

93

Но что означает частотный спектр в случае изображений?

«Математические уравнения» важны, поэтому не пропускайте их полностью. Но 2-е БПФ также имеет интуитивную интерпретацию. Для иллюстрации я рассчитал обратное БПФ нескольких образцов изображений:

введите описание изображения здесь

Как видите, в частотной области установлен только один пиксель. Результатом в области изображения (я только отображал действительную часть) является «повернутый косинус» (мнимой частью будет соответствующий синус).

Если я установлю другой пиксель в частотной области (на левой границе):

введите описание изображения здесь

Я получаю другую 2d частоту.

Если я установил более одного пикселя в частотной области:

введите описание изображения здесь

Вы получаете сумму двух косинусов.

Таким образом, как 1-мерная волна, которая может быть представлена ​​в виде суммы синусов и косинусов, любое 2-мерное изображение может быть представлено (свободно говоря) в виде суммы «повернутых синусов и косинусов», как показано выше.

когда мы берем FFT изображения в opencv, мы получаем странную картину. Что обозначает это изображение?

Он обозначает амплитуды и частоты синусов / косинусов, которые при сложении дадут вам исходное изображение.

И каково его применение?

Их действительно слишком много, чтобы назвать их всех. Корреляция и свертка могут быть очень эффективно рассчитаны с использованием БПФ, но это скорее оптимизация, вы не «смотрите» на результат БПФ для этого. Он используется для сжатия изображений, потому что высокочастотные составляющие обычно являются просто шумом.

Ники Эстнер
источник
3
Вы можете указать, какая высокочастотная часть, а какая низкочастотная в изображении частотной области?
Абид Рахман К
4
@arkiaz: На изображениях, которые я показал, самая высокая частота находится в центре изображения, самая низкая частота (то есть среднее значение входного изображения) - это верхний левый пиксель в результате FFT. Это то, что дает большинство реализаций FFT. Если вы отображаете результат FFT, обычно перемещают самую низкую частоту в центр отображаемого изображения.
Ники Эстнер
1
@ Мохаммед: я использовал InverseFourierфункцию Mathematica . Разве октава / матлаб не ifft2делают то же самое?
Ники Эстнер
1
@JimClay Для цветных изображений я бы порекомендовал использовать домен YUV . Y = абсолютная интенсивность, а УФ = цвет. Даже для цветных изображений большая часть интересующей вас информации связана с интенсивностью изображения. Вы используете все те же математические инструменты, просто не забудьте преобразовать обратно.
Atav32
4
Это было бы здорово в качестве анимации, например, переместить точку вокруг и показать, как волны меняют ширину и угол
эндолит
29

Я думаю, что это было очень хорошо изложено в хорошо известном «Руководстве по DSP» ( глава 24, раздел 5 ):

Фурье-анализ используется в обработке изображений практически так же, как и для одномерных сигналов. Однако изображения не имеют своей информации, закодированной в частотной области, что делает методы намного менее полезными. Например, когда выполняется преобразование Фурье для аудиосигнала, запутанная форма волны во временной области преобразуется в простой для понимания частотный спектр.

Для сравнения, преобразование Фурье изображения преобразует прямую информацию в пространственной области в скремблированную форму в частотной области. Короче говоря, не ожидайте, что преобразование Фурье поможет вам понять информацию, закодированную в изображениях.

Таким образом, есть, конечно, некоторая структура и значение за кажущимся случайным шаблоном, полученным путем взятия ДПФ типичного изображения (такого как пример ниже), но это не в форме, которую человеческий мозг готов понять интуитивно, по крайней мере, в отношении визуального восприятия.

Imgur

Вот еще одно интересное и вполне читаемое изложение того, что содержится в преобразовании Фурье изображения и как его можно интерпретировать. У него есть серия изображений, которые ясно дают понять, как соотносится преобразованное Фурье и исходное изображение.

редактировать: взгляните также на эту страницу , которая демонстрирует - ближе к концу - как большая часть воспринимаемой важной информации изображения хранится в фазовом (угловом) компоненте частотного представления.

правка 2: еще один пример значения фазы и величины в представлении Фурье: «Раздел 3.4.1, Важность фазы и величины» из учебника Делфу « Основы обработки изображений » демонстрирует это довольно четко:

Imgur

waldyrious
источник
Привет! Я пытался перейти по второй ссылке в вашем вопросе ( «еще одна интересная и вполне читаемая экспозиция ...» ), но ссылка не работает. Я также попробовал ссылку, предоставленную в комментариях, но не работает. Не могли бы вы найти и отредактировать в рабочей ссылке, пожалуйста?
Пенелопа
@penelope Вы второй человек, который заметил проблемы со ссылкой (см. мой предыдущий комментарий). Страница кажется нестабильной, действительно. Как я уже говорил ранее, я заменю ссылку версией веб-архива. Спасибо за указание на это!
Waldyrious
1
На самом деле, примеры и объяснения по (наконец-то работающей) ссылке великолепны :)
Пенелопа
12

Волна является одномерной волной; это зависит только от . Волна является двумерной волной. Это зависит от и . Как видите, у вас есть две частоты в любом направлении.f(t)=cos(ωt)tf(x,y)=cos(ωx+ψy)xy

Следовательно, преобразование Фурье (БПФ) для даст вам , так же как БПФ для даст вам . И если ваш вход представляет собой функцию суммирования 2D-косинусов, то ваш 2D-БПФ будет суммой частот этих косинусов - опять же прямой аналог 1D-БПФ.cos(ωx+ψy)ω,ψcos(ωx)ω

MSalters
источник
10

Возможно, стоит отметить, что анализ Фурье является частным случаем концепции, называемой ортогональными функциями . Основная идея состоит в том, что вы разбиваете сложный сигнал на линейную суперпозицию более простых «базовых» функций. Вы можете выполнить обработку или анализ с помощью базовых функций, а затем суммировать результаты для базовых функций, чтобы получить результат для исходного сигнала.

Для того, чтобы это работало, существуют определенные математические требования к базисным функциям, т.е. они идеально образуют ортонормированную базу. В случае преобразования Фурье базисные функции являются комплексными экспонентами. Тем не менее, есть много других функций, которые также могут быть использованы для этого.

Hilmar
источник
Это правда. Какие существуют другие типы базовых функций? Я думаю о вейвлетах daubechies, но есть и другие? Что бы отличить их?
Спейси
Вероятно, наиболее известны полиномы; представление функции в виде множества полиномов известно как ее ряд Тейлора . Эта серия легко вычисляется из производных функции.
MSalters
2
Один из способов поиска базисных функций - применение анализа главных компонентов . Получающиеся «собственные изображения» часто имеют более интуитивно понятный человеческий вид, чем функции sin / cos. Например, см. Eigenfaces . Частотная область все еще важна для восприятия (у наших глаз / мозга есть краевые детекторы, которые чувствительны к частоте, особенно когда задействовано движение); основные функции просто не очень значимы, как изображения.
Дэн Брайант
PCA - это хорошая методика базовых вычислений, которая широко понятна, но есть много других, которые делают разные предположения о том, как были сгенерированы данные; Независимый компонентный анализ (ICA) является одним из популярных примеров. Чуть дальше, есть алгоритмы для обучения общих базовых функций с использованием разреженного кодирования (например, J Mairal и др., «Онлайн-словарное обучение для разреженного кодирования», ICML 2009), а затем подходы «обучения особенностям», разработанные глубокими сетями. люди.
lmjohns3
1
Почему функции должны быть ортогональными?
Quant231
8

В изображениях увеличение частоты связано с более резкими переходами по яркости или цвету. Кроме того, шум обычно внедряется в верхнюю часть спектра, поэтому фильтрация нижних частот может использоваться для уменьшения шума.

Эмре
источник
1
То есть вы имеете в виду, что резкие переходы иногда рассматриваются как шум?
Абид Рахман К
1
Иногда да. Типичными примерами являются шум комаров (звенящий по краям), блочный шум JPEG на краях макроблоков и, конечно же, зернистость. Рассмотрим изображение простого градиента. Добавление зерна к этому изображению увеличивает его высокочастотное содержимое за счет введения мельчайших переходов по всему изображению.
Эмре