gabor

利用Gabor变换法分析纹理图像 matlab代码实现

匿名 (未验证) 提交于 2019-12-02 23:56:01
Gabor变化属于加窗傅里叶变换,Gabor函数可以在频域不同尺度、不同方向上提取相关的特征。Gabor函数与人眼的生物作用相仿,所以经常用于纹理识别上,并取得了较好的效果。 二维Gobor滤波函数: 其中: xp = x*cos(theta)+y*sin(theta) yp=y*cos(theta)-x*sin(theta) mean(平均值) Con(对比度) Ent(熵) theta=pi/10 0.0043 1.6111 0.4046 theta=pi/4 0.0042 1.5869 0.3623 熵反映了图像的能量,当滤波器的方向和图像纹理方向越吻合,输出图像的能量越大。这证明了Gabor函数可以捕捉到相当多的纹理信息,具有极佳的空间特征。 来源:博客园 作者: 我坚信阳光灿烂 链接:https://www.cnblogs.com/wojianxin/p/11432280.html

利用Gabor变换法分析纹理图像 matlab代码实现

独自空忆成欢 提交于 2019-11-28 22:59:19
Gabor变化属于加窗傅里叶变换,Gabor函数可以在频域不同尺度、不同方向上提取相关的特征。Gabor函数与人眼的生物作用相仿,所以经常用于纹理识别上,并取得了较好的效果。 二维Gobor滤波函数: ​ 其中: xp = x*cos(theta)+y*sin(theta) yp=y*cos(theta)-x*sin(theta) function [ G,gabout ] = gaborfilter(I,Sx,Sy,f,theta) % gaborfilter定义,I为输入图像,Sx、Sy是变量在x,y轴变化的范围,即选定的gabor小波窗口的大小 % f为正弦函数的频率,theta为gabor滤波器的方向。G为gabor滤波函数g(x,y),gabout为gabor滤波后的图像 if isa(I,'double')~=1 I = double(I); end for x = -fix(Sx):fix(Sx) for y=-fix(Sy):fix(Sy) xp = x * cos(theta) + y * sin(theta); yp = y * cos(theta) - x*sin(theta); G(fix(Sx)+x+1,fix(Sy)+y+1) = exp(-.5*((xp/Sx)^2+(yp/Sy)^2))*cos(2*pi*f*xp); end end