在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
很多算法都用到了这个矩阵,比如Hessian affine region detector、SURF,虽然这些算法我还没有完全搞透,不过那都是后话,先把这个矩阵搞出来再说,学习是不断迭代的过程。 整个矩阵的形成主要由四部分公式决定: g(x,y)就是高斯函数了,没啥可说的: 对高斯函数的x和y分别求二阶偏导: 求出的模板对原图进行卷积: 卷积后的值构成Hessian矩阵: 所以这里的H是相当于原图像每一个像素都能求出一个Hessian矩阵。 matlab代码如下: clear all; close all; clc; img=double(imread('lena.jpg')); [m n]=size(img); w=4; sigma=1.2; [x y]=meshgrid(-w:w,-w:w); %高斯函数对应的二阶偏导,如何求导数请自行脑补 Dxx = 1/(2*pi*sigma^4)*(x.^2/sigma^2-1)*exp(-(x.^2+x.^2)/(2*sigma^2)); Dyy = 1/(2*pi*sigma^4)*(y.^2/sigma^2-1)*exp(-(x.^2+y.^2)/(2*sigma^2)); Dxy = 1/(2*pi*sigma^6)*(x.*y)*exp(-(x.^2+y.^2)/(2*sigma^2)); Ixx=imfilter(img,Dxx,'replicate'); Iyy=imfilter(img,Dyy,'replicate'); Ixy=imfilter(img,Dxy,'replicate'); H=cell(m,n); for i=1:m for j=1:n H{i,j}=[Ixx(i,j) Ixy(i,j);Ixy(i,j) Iyy(i,j)]; end end
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论