2015-05-30 6 views
0

Я новичок в обработке изображений. Я хочу рассказать о фазовом спектре, используя MATLAB любого изображения, например, Лена или оператор.Как найти местоположения частот, присутствующих в изображении с использованием фазового спектра -MATLAB?

Я добавляю код, что я пытался, но ничего не понимаю о сюжете.

Как найти местоположения частоты, присутствующие на изображении с использованием фазы spectrum?

image=imread('E:\cameraman.jpg'); 
figure,imshow(image); 
image=rgb2gray(image); 
fourier_transform=fftn(image); 

phase_spectrum=angle(fourier_transform); 
figure,imshow(phase_spectrum) 
+0

Пожалуйста, покажите нам некоторые из ваших усилий! –

+0

@GoogleHireMe OK, пожалуйста, подождите некоторое время, чтобы опубликовать мой код. – devraj

+0

@GoogleHireMe извините, сэр за поздний ответ, но я разместил свой код. Вы можете объяснить, как изучать фазовый спектр? – devraj

ответ

0

Чтобы получить фазовый спектр вы просто вычислить БПФ и получить угол результирующего массива (так же, как вы сделали). Обычно fftshift операция выполняется после FFT для того, чтобы сдвинуть происхождение участка до центра графа

т.е.
lenaImage = imread('LenaG', 'bmp') 
imshow(angle(fftshift(fft2(lenaImage)))) 

Лена изображения и результирующий фазовый участок можно увидеть ниже.

enter image description hereenter image description here

+0

спасибо, сэр, но похоже, что фазовый спектр очень сложный. Так как изучать/анализировать вышеупомянутый фазовый спектр? – devraj

+0

Фаза изображения используется при восстановлении изображения. Частотный спектр просто говорит вам, какие элементы частоты существуют в изображении, но фаза сообщает вам точно, где эти частоты находятся на изображении. Загрузите изображение lena, и вы обратите внимание, что фазовый спектр также будет вращаться. – KillaKem

+0

сэр, у сказал: «Фаза точно говорит вам, где эти частоты есть на картинке». Я хочу спросить вас: «Как найти места частот с использованием вышеуказанного фазового спектра?» – devraj