声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 4445|回复: 7

[综合讨论] matlab里怎么实现gabor小波变换啊

[复制链接]
发表于 2007-10-29 15:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
小波工具箱里面找不到,有没有哪里可以下到gabor的程序啊?
回复
分享到:

使用道具 举报

发表于 2007-10-29 16:23 | 显示全部楼层
找本讲小波变换的书,上边应该会有
发表于 2007-10-29 21:22 | 显示全部楼层
gabor小波好像就是db1小波,我以前用过二维的小波变换,[ca1,ch1,cv1,cd1] = dwt2(I,'db1');I是要变换的信号,应该一维的也是这样,小波名称取‘db1’就可以了。
发表于 2007-10-29 21:58 | 显示全部楼层

这是一个用在指纹图像处理上边的gabor滤波器程序

  1. function [gaborp_2d]=gabor2d_sub(angle,num_disk)
  2. % Modified by Luigi Rosa
  3. global immagine n_bands h_bands n_arcs h_radius h_lato n_sectors matrice

  4. variance=32;
  5. k=10;

  6. x=cos(angle*pi/num_disk);
  7. y=sin(angle*pi/num_disk);
  8. w=(2*pi)/k;
  9. p=0;
  10. m=0;
  11. for (i=-16:1:16)
  12.    p=p+1;
  13.    sinp(p)=i*y;
  14.    cosp(p)=i*x;
  15.    for (j=-16:1:16)
  16.       m=m+1;
  17.       x_s(m)=i;
  18.       y_s(m)=j;
  19.    end
  20. end

  21. p=0;
  22. for (j=1:1:33)
  23.    for (i=1:1:33)
  24.       p=p+1;
  25.       xx(p)=sinp(i)+cosp(j);
  26.       yy(p)=cosp(i)-sinp(j);
  27.       gaborp(p)=1*exp(-((xx(p)*xx(p))+(yy(p)*yy(p)))/variance)*cos(w*xx(p));
  28.       gaborp_2d(i,j)=gaborp(p);
  29.    end
  30. end
复制代码

都用工具箱函数,其实不利于对原理的理解。有时候自己动手写写,也是不错的选择。希望对你有所帮助

[ 本帖最后由 花如月 于 2007-10-29 21:59 编辑 ]
 楼主| 发表于 2007-10-30 08:39 | 显示全部楼层

回复 #3 freebrother 的帖子

db1是haar小波,不是gabor小波。
发表于 2007-11-5 20:44 | 显示全部楼层

gabor命令属于时频分析,你去下载时频工具箱,安装在matlab上,就可以直接应用了,大概是tftb,可以在google上搜一下,也可以去http://matlab-sp.ys168.com上找找。

评分

1

查看全部评分

发表于 2007-11-7 20:40 | 显示全部楼层
:handshake thank you!
发表于 2007-11-21 15:34 | 显示全部楼层
我觉得"aprillq"提供的信息不准确,TF toolbox中的tfrgabor不是gabor小波变换。而是基于高斯函数的短时傅里叶变换。TF toolbox好像只有Morlet和Mexcian hat 小波变换。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-18 14:30 , Processed in 0.076799 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表