SUSAN角点检测算子的MATLAB实现
更新时间:2024-03-05 16:13:01 阅读量: 综合文库 文档下载
- susan算子检测边缘推荐度:
- 相关推荐
SUSAN角点检测算子的MATLAB实现
[filename,pathname,~]=uigetfile('*.jpg','选择JPG格式图片');
if ~ischar(filename) return end
str=[pathname filename]; pic=imread(str);
if length(size(pic))==3 img=rgb2gray(pic); end
[M,N]=size(img);
timg=zeros(M+6,N+6);
timg(4:end-3,4:end-3)=img; %扩展图像边缘3个像素 img=timg; t=45; %阈值
USAN=[]; %用于存放USAN for i= 4:M+3 for j=4:N+3
tmp=img(i-3:i+3,j-3:j+3); cnt=0; %计数专用,统计圆形邻域内满足条件的像素点个数 for p=1:7 for q=1:7 if
(p-4)^2+(q-4)^2<=12 %半径一般在3~4之间
if abs(img(i,j)-tmp(p,q)) end end end end USAN=[USAN cnt]; end end g=max(USAN)/2; %给定的阈值 for k=1:length(USAN) if USAN(k) USAN(k)=g-USAN(k); %反向相减,使得USAN取局部最大 else USAN(k)=0; end end imgn=reshape(USAN,M,N); %USAN向量张成二维图像 imgn=fliplr(imrotate(imgn,-90)); %调整图像 loc=[]; for i=2:M-1 for j=2:N-1 sq=imgn(i-1:i+1,j-1:j+1); sq=reshape(sq,1,9); sq=[sq(1:4),sq(6:9)]; if imgn(i,j)>sq %局部非极大值抑制 loc=[loc;[j,i]]; end end end imshowpair(pic,pic,'montage'); 运行结果图如下: hold on plot(loc(:,1)+size(pic,2),loc(:,2),'*'); hold off
正在阅读:
SUSAN角点检测算子的MATLAB实现03-05
主管护师习题1(23)01-21
高中物理之电表的改装的相关习题附答案04-29
新疆杰出青年自然科学基金项目,优秀青年科技创新人才、青年博士科技人才培养项目人选推荐表09-14
庆祝一周岁生日祝福语02-24
2019-2020学年度英语七年级上Lesson 8 Let's have fun !牛津译林版知识点练习第九十二篇05-04
《尘世是唯一的天堂》读后感06-09
贵阳学院音乐系“春之声”合唱团成果总结09-03
- 《江苏省环境水质(地表水)自动监测预警系统运行管理办法(试行)》
- 安乐死合法化辩论赛立论稿(浙大新生赛)
- 公共科目模拟试卷公务员考试资料
- 我国固定资产投资FAI对GDP的影响
- 大学生创新创业训练计划项目申请书大创项目申报表
- 完美版—单片机控制步进电机
- 2013资阳中考化学试题
- 18.两位数减一位数退位(397道)
- 工程量计算规则
- 二年级操行评语(下)
- 第3章 流程控制语句
- 浅基桥墩加固技术
- 课题研究的主要方法
- 5100软件说明书 - 图文
- 车间技术员年终总结
- 关于印发《中铁建工集团开展项目管理实验室活动方案》的通知
- 经典诵读结题报告
- 地下水动力学习题答案
- 2018年全国各地高考数学模拟试题平面解析几何试题汇编(含答案解
- 街道办事处主任2018年度述职述廉报告
- 算子
- 检测
- 实现
- MATLAB
- SUSAN