• 大小: 1KB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2021-05-26
  • 语言: Matlab
  • 标签: gabor  

资源简介

使用matlab写的gabor滤波器,由于好多没有实例,所以我附带了测试文件

资源截图

代码片段和文件信息

function [GaborReal GaborImg] = MakeGaborKernal(GaborH GaborW U V Kmaxfsigma )
% function [GaborReal GaborImg] = MakeGaborKernal[GaborH GaborW U V]
% 用以生成 Gabor 核
% GaborReal: 核实部 GaborImg: 虚部
% GaborHGaborW: Gabor窗口 高宽.
% UV: 方向 大小
%            ||Kuv||^2
% G(Z) = ---------------- exp(-||Kuv||^2 * Z^2)/(2*sigma*sigma)(exp(i*Kuv*Z)-exp(-sigma*sigma/2))
%          sigma*sigma

HarfH = fix(GaborH/2);
HarfW = fix(GaborW/2);

Qu = pi*U/8;
sqsigma = sigma*sigma;
% Kv = 2.5*pi*(2^(-(V+2)/2));
Kv = Kmax/(f^V);
 
postmean = exp(-sqsigma/2);

for j = -HarfH : HarfH
    for i =  -HarfW : HarfW
      
        tmp1 = exp(-(Kv*Kv*(j*j+i*i)/(2*sqsigma)));
        tmp2 = cos(Kv*cos(Qu)*i+Kv*sin(Qu)*j) - postmean;
  %      tmp3 = sin(Kv*cos(Qu)*i+Kv*sin(Qu)*j) - exp(-sqsigma/2);
        tmp3 = sin(Kv*cos(Qu)*i+Kv*sin(Qu)*j);
       
        GaborReal(j+HarfH+1 i+HarfW+1) = Kv*Kv*tmp1*tmp2/sqsigma;
        GaborImg(j+HarfH+1 i+HarfW+1) = Kv*Kv*tmp1*tmp3/sqsigma;
    end
end

评论

共有 条评论