⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gaborfilter.m

📁 基于瑞利波及lamb波的频散曲线程序,可用于根据实验绘制Rali波及lamb波的频散曲线,检验其在不同材料中的频散特性
💻 M
字号:
%%%%%%%VERSION 1 

%The Gabor filter is basically a Gaussian (with variances sx and sy along  
%  x and y-axes respectively) 
%modulated by a complex sinusoid (with centre frequencies U and V along  
% x and y-axes respectively) 
%described by the following equation 
%% 
%               1                -1     x  ^    y  ^ 
%%% G(x,y) = ---------- * exp ([----{(----) 2+(----) 2}+2*pi*i*(Ux+Vy)]) 
%            2*pi*sx*sy           2    sx       sy 

%% Describtion : 

%% I : Input image 
%% Sx & Sy : Variances along x and y-axes respectively 
%% U & V : Centre frequencies  along x and y-axes respectively 

%% G : The output filter as described above 
%% G : The output filter as described above 
%% gabout : The output filtered image 

%%  Author : Ahmad poursaberi  e-mail : a.poursaberi@ece.ut.ac.ir 
%%          Faulty of Engineering, Electrical&Computer Department,Tehran 
%%          University,Iran,June 2004 

function [G,gabout] = gaborfilter(I,Sx,Sy,U,V); 

if isa(I,'double')~=1 
    I = double(I); 
end 

for x = -fix(Sx):fix(Sx) 
    for y = -fix(Sy):fix(Sy) 
        G(fix(Sx)+x+1,fix(Sy)+y+1) = (1/(2*pi*Sx*Sy))*exp(-.5*((x/Sx)^2+... 
                                     (y/Sy)^2)+2*pi*i*(U*x+V*y)); 
    end 
end 

Imgabout = conv2(I,double(imag(G)),'same'); 
Regabout = conv2(I,double(real(G)),'same'); 


for x = -fix(Sx):fix(Sx) 
    for y = -fix(Sy):fix(Sy) 
        G(fix(Sx)+x+1,fix(Sy)+y+1) = (1/(2*pi*Sx*Sy))*exp(-.5*((x/Sx)^2+... 
                                     (y/Sy)^2)+2*pi*i*(U*x+V*y)); 
    end 
end 

Imgabout = conv2(I,double(imag(G)),'same'); 
Regabout = conv2(I,double(real(G)),'same'); 

gabout = uint8(sqrt(Imgabout.*Imgabout + Regabout.*Regabout)); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -