Resmin Frekans Domaindeki Islemleri


Resim işlemedeki kullandığımız yontemlerin yanı sıra  resmin frekans domaine geçmesi ilede  bazı işlemler yaparız ve bu imge işlemede sıkça kullanılan yonlerdendir.
Daha önce filtreleme işlemini konvolüsyon ile yapıyorduk. Frekans düzleminde ise çarpma işlemi ile yapıyoruz.Frekans domain 'e  geçiş ve geri dönüş işlemleri için hesapsal yük fazladır.

Frekans domaine geçiş için fourier dönüşümü kullanılır.

                          

Bir resimin fourier transformu.

Burda resimin köşeleri 0 Hz ortalara doğru gidildikçe frekans artar. fftshift komutu  ile düşük frekanslar köşelerden ortalara kaydırılır.

fftshift uygulandığında
Resimin Yüksek Frekanslarını Alma Uygulaması(High Pass Filter)


Clear
I = imread('plaka.jpeg')
I_resize = imresize(I,[256 256])

I_gray = rgb2gray(I_resize);

figure
imshow(I_gray)
xlabel({'RESIM'});

F_I_gray = fft2(I_gray);
figure

F_I_gray = fftshift(F_I_gray);
imshow(F_I_gray)
%*************************mask********************************

mask1 = ones(256,256);
mask = zeros(256,256);
mask(30:226,30:226) = 1;
mask = mask1 - mask;
%mask = imread('open_app.bmp');
%mask = imresize(mask,[256 256]);
%mask = ones(256,256) - mask;

figure
imshow(mask)
xlabel({'MASK'});

figure
imshow(mask.*F_I_gray)
xlabel({'mask.*F_I_gray'});

F_I_gray = mask.*F_I_gray;
F_I_gray = fftshift(F_I_gray);
figure
imshow(F_I_gray)
resim2 = ifft2(F_I_gray);

figure
imshow(resim2,[])
xlabel({'Filitre ile carpilmis resim'});







şimdi 3.resmin inverse fourierini aldığımda resmin yüksek frekanlı kısımları kalacak

resim2 = ifft2(F_I_gray);
%kodu ile inverse fourier transform yapılır.


Yüksek frekans resimdeki ayrıntılardır.Arabanın ön ızgaraları çok ayrıntılı  filtrelenmiş resimdede oralar gözüküyor.


Resimin Düşük Frekanslarını Alma Uygulaması(Low Pass Filter)
Sadece Mask ' ı değiştirecem. Eski flitrede kenarları alıyordu şimdi ise kenarları almayacak.

mask = zeros(256,256);
mask(60:196,60:196) = 1;






Unknown

Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.

1 yorum:

  1. selamun aleykum kardeşim sana CW den PM attım bakarmısın :)

    YanıtlaSil