zoukankan      html  css  js  c++  java
  • matlab练习程序(构建Hessian矩阵)

    很多算法都用到了这个矩阵,比如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
  • 相关阅读:
    HadoopDB:混合分布式系统
    分布式一致性
    Hadoop和RDBMS的混合系统介绍
    《Facebook效应》
    《程序员的思维修炼》
    KMP算法实现
    关于毕业季照片分享的思考
    SDN:软件定义网络
    退出域不能够重新加入域,郁闷呀
    ◆聚会时可以玩的游戏◆
  • 原文地址:https://www.cnblogs.com/tiandsp/p/3015522.html
Copyright © 2011-2022 走看看