标签:div mic fine 如何 double cell 高斯 col matlab
很多算法都用到了这个矩阵,比如Hessian affine region detector、SURF,虽然这些算法我还没有完全搞透,不过那都是后话,先把这个矩阵搞出来再说,学习是不断迭代的过程。
整个矩阵的形成主要由四部分公式决定:
g(x,y)就是高斯函数了,没啥可说的:
对高斯函数的x和y分别求二阶偏导:
求出的模板对原图进行卷积:
所以这里的H是相当于原图像每一个像素都能求出一个Hessian矩阵。
matlab代码如下:
1 clear all; 2 close all; 3 clc; 4
5 img=double(imread(‘lena.jpg‘)); 6 [m n]=size(img); 7
8 w=4; 9 sigma=1.2; 10 [x y]=meshgrid(-w:w,-w:w); 11 %高斯函数对应的二阶偏导,如何求导数请自行脑补 12 Dxx = 1/(2*pi*sigma^4)*(x.^2/sigma^2-1)*exp(-(x.^2+x.^2)/(2*sigma^2)); 13 Dyy = 1/(2*pi*sigma^4)*(y.^2/sigma^2-1)*exp(-(x.^2+y.^2)/(2*sigma^2)); 14 Dxy = 1/(2*pi*sigma^6)*(x.*y)*exp(-(x.^2+y.^2)/(2*sigma^2)); 15
16 Ixx=imfilter(img,Dxx,‘replicate‘); 17 Iyy=imfilter(img,Dyy,‘replicate‘); 18 Ixy=imfilter(img,Dxy,‘replicate‘); 19
20 H=cell(m,n); 21 for i=1:m 22 for j=1:n 23 H{i,j}=[Ixx(i,j) Ixy(i,j);Ixy(i,j) Iyy(i,j)]; 24 end 25 end
MATLAB 构建Hessian矩阵
标签:div mic fine 如何 double cell 高斯 col matlab
原文地址:https://www.cnblogs.com/ybqjymy/p/13646488.html
暂无评论...