Matlab实现Forstner特征提取

Forstner算子是Forstner(1986)在研究基于特征的影像匹配时提取的兴趣算子,该算子本身也具有吸引人的特征,因为它不仅能找到具有精确视察的点,同时它还能确定由任意数量和方向的边缘所形成的角点及圆、圆形影像片与圆环的中心。

代码(参考超人琪的博客):

F=imread('2053146.jpg');
f=rgb2gray(F);
figure(1);
imshow(F);%显示原始标准影
%判断是否为彩色图像,是彩色则转换为灰度图像
[x,y,z]=size(F);

figure(2);
imshow(f);%显示灰度图像

%lever=graythresh(pic_gray);%二值图像的阈值
f2=im2bw(f,0.9);%把灰度图像转换成二值图像,阈值可调
figure(3);
imshow(f2);

 
%第一步:先用4个方向的差分算子提取初选点
result=zeros(x,y);%特征提取结果
for i=2:x-1
    for j=2:y-1
        dg1=abs(f2(i,j)-f2(i+1,j));
        dg2=abs(f2(i,j)-f2(i,j+1));
        dg3=abs(f2(i,j)-f2(i-1,j));
        dg4=abs(f2(i,j)-f2(i,j-1));
        dg=[dg1,dg2,dg3,dg4];
        temp=sort(dg);%对四个差分算子进行升序排列
        if temp(3)==1%有任意两个大于阈值,则该像素有可能是一特征点
            result(i,j)=255;%是初选点
        else
            result(i,j)=0;%不是初选点
        end
    end
end
figure(4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值