资源简介

这是MATLAB的亚像素边缘提取程序,经过我的验证,能够实现相应的功能。

资源截图

代码片段和文件信息


%function [xy]=SubPixel(x0y0Gx2Gy2Gxy)
clear;
x0=95;
y0=642;
X= imread(‘E:\mtalab7.1\work\11.bmp‘);     % 读取图像
f1=X;
ori_im=double(f1)/255;                   %unit8转化为64位双精度double64
fx = [ -1 0 1 ];                     % x方向梯度算子(用于Harris角点提取算法)
Ix = filter2(fxori_im);                % x方向滤波
fy = [-1;0;1];                     % y方向梯度算子(用于Harris角点提取算法)
Iy = filter2(fyori_im);                % y方向滤波
Gx2 = Ix.^2;
Gy2 = Iy.^2;
Gxy = Ix.*Iy;
i=y0;
j=x0;
a=(Gx2(i-1j-1)+Gx2(ij-1)+Gx2(i+1j-1));             %计算a、b、c、d、e、f的初值
a=a+(Gx2(i-1j)+Gx2(ij)+Gx2(i+1j));
a=a+(Gx2(i-1j+1)+Gx2(ij+1)+Gx2(i+1j+1));

c=(Gy2(i-1j-1)+Gy2(i-1j)+Gy2(i-1j+1));
c=c+(Gy2(ij-1)+Gy2(ij)+Gy2(ij+1));
c=c+(Gy2(i+1j-1)+Gy2(i+1j)+Gy2(i+1j+1));

b=(Gxy(i-1j-1)+Gxy(ij-1)+Gxy(i+1

评论

共有 条评论