《边缘检测与Hough变换实验报告 Matlab - 图文》由会员分享,可在线阅读,更多相关《边缘检测与Hough变换实验报告 Matlab - 图文(5页珍藏版)》请在人人文库网上搜索。

1、边缘检测与Hough变换实验报告 Matlab - 图文边缘检测与Hough变换 实验目的:写一段代码实现一幅图像,其中分为以下两个步骤 1. 使用Matlab中的canny算子进行边缘检测,可以让使用者交互式的输入不同的Sigma的值实现边缘检测。 2. 运用Hough变换来找到最突出的边缘,在图像中找到并画出最长的直线。 实验原理: canny算子边缘检测的基本原理是:采用二维高斯函数的任一方向上的一阶方向导数为噪声滤波器,通过与图像f(x,y)卷积进行滤波,然后对滤波后的图像寻找图像梯度的局部极大值,以确定图像边缘。 Canny边缘检测算子是一种最优边缘检测算子。其实现步骤如下: 1) 。

2、用高斯滤波器平滑图像 2) 计算滤波后图像梯度的幅值和方向 3) 对梯度幅值应用非极大值抑制,其过程为找出图像梯度中的局部极大值点,把其他非局部极大值置零,以得到细化的边缘; 4) 再用双阈值算法检测和连接边缘; 使用canny算子的edge函数调用格式为 BW=edge(I,canny); BW=edge(I,canny,thresh,sigma); BW=edge(I,canny,thresh); BW,threshold=edge(I,canny,?); 2.Hough变换时最常用的直线提取方法,它的基本思想是:将直线上每一个数据点变换为参数平面中的一条直线或曲线,利用共线的数据点对应的。

3、参数曲线相交于参数空间中一点的关系,使得直线提取问题转化为计数问题。Hough变换提取直线的主要优点是受直线中的间隙和噪声影响较小。 Hough检测直线的Matlab实现:在Matlab图像处理工具箱中提供了3个与Hough变换有关的函数,分别为hough函数,houghpeaks函数和houghlines函数。 hough函数的调用格式为H,theta,rho=hough(BW);其中BW为二值图像,H为Hough变换矩阵,theta为变换轴间隔,rho为元素个数。 Houghpeaks函数是用来提取Hough变换后参数平面上的峰值点。其调用格式为peaks=houghpeaks(H,num。

4、peaks),其中,H为Hough函数的输出,参数平面的技术结果矩阵,参数numpeaks为指定要提取的峰值数目,默认值为1;输出参数peaks为Q*2维峰值位置矩阵,其中Q为提取的峰值数目,peaks的第q行分别存储第q个峰值的行和列坐标。 Hough函数用于在图像中提取参数平面上的峰值点对应的直线。其调用格式为lines=houghlines(BW,theta,rho,peaks) Lines=houghlines(?,param1,val1,param2,val2) 其中,BW与Hough函数的BW相同,为二值图象。theta和rho为hough函数返回的输出,指示轴和轴各个单元对应的值。

5、。Peaks为houghpeaks函数返回的输出,指示峰值的行和列坐标,houghlines函数将根据这些峰值提取直线。Param和val是参数对,用于指定是否合并或保留直线段的相关参数,其取值有两种。当param=MinLength时,bal指定合并后的直线被保留的门限长度,长度小于val的直线被舍去。当param=FillGap时,val指定直线段被合并的门限间隔。如果两条斜率和截距均相同的直线段间隔小于val给点的值,则它们被合并为一条直线。 实验程序与实验结果如下: nny算子边缘检测 clear all; I1=imread(F:robotImagessniper.jpg); I=r。

6、gb2gray(I1);% 彩色图像灰度化 imshow(I1); title(原始图像); BW1= edge(I,Canny,0.4,0.5) ; ge调用Canny为检测算子判别阈值为0.5 figure,imshow(BW1); title( 阈值为0.4,sigma值为0.5的Canny算子边缘检测图像 ); BW2= edge(I,Canny,0.4,0.8) ; ge调用Canny为检测算子判别阈值为0.8 figure,imshow(BW2); title( 阈值为0.4,sigma值为0.8的Canny算子边缘检测图像); BW20= edge(I,Canny,0.4,1) 。

7、; ge调用Canny为检测算子判别阈值为1 figure,imshow(BW20); title( 阈值为0.4,sigma值为1的Canny算子边缘检测图像); BW21= edge(I,Canny,0.4,1.5) ; ge调用Canny为检测算子判别阈值为1.5 figure,imshow(BW21); title( 阈值为0.4,sigma值为1.5的Canny算子边缘检测图像 ); BW22= edge(I,Canny,0.4,2) ; ge调用Canny为检测算子判别阈值为2 figure,imshow(BW22); title( 阈值为0.4,sigma值为2的Canny算子边。

8、缘检测图像 ); %Hough变换检测直线程序 rotI=I; BW=edge(rotI,canny,0.4,1.5); %用canny算子提取图像边缘 H,T,R=hough(BW); %对图像进行Hough变换 figure; imshow(H, ,XData,T,YData,R,. InitialMagnification,fit); title(峰值提取效果); xlabel(theta),ylabel(rho); axis on,axis normal,hold on; %寻找参数平面上的极值点 P =houghpeaks(H,5,threshold,ceil(0.3*max(H(:。

9、); x=T(P(:,2);y=R(P(:,1); plot(x,y,s,color,white); %找出对应的直线边缘 lines=houghlines(BW,T,R,P,FillGap,58,MinLength,5); figure,imshow(BW), title(直线标记结果); hold on max_len=0; for k=1:length(lines) xy=lines(k).point1;lines(k).point2; plot(xy(:,1),xy(:,2),LineWidth,2,Color,green); %标记直线边缘对应的起点 plot(xy(1,1),xy(1,2),x,LineWidth,2,Color,yellow); plot(xy(2,1),xy(2,2),x,LineWidth,2,Color,red); %计算直线边缘长度 len=norm(lines(k).point1-lines(k).point2); if(lenmax_len) max_len=len; xy_long=xy; end end plot(xy_long(:,1),xy_long(:,2),LineWidth,2,Color,r); 程序结果:。

hough变换连接边缘matlab,边缘检测与Hough变换实验报告 Matlab - 图文相关推荐

  1. 用matlab设计滤波器实验报告,数字信号出来实验报告--matlab滤波器设计

    数字信号出来实验报告--matlab滤波器设计 广 西 工 学 院 实 验 报 告 用 纸 实验名称 IIR数字滤波器的设计 实验成绩 指导老师 陈艳 系(院) 计算机工程系 班级 学号 学生姓名 一 ...

  2. matlab数字图像实验报告,数字图像处理实验报告(matlab)

    数字图像处理实验报告(matlab) 学院:自动化学院 班级:电081班 姓名:李林树 学号:40850099 2011年10月 实验一 直方图均衡化 一. 实验目的: 1. 熟悉图像数据在计算机中的 ...

  3. 领域平均法matlab代码实验,数字图像处理邻域平均法滤波实验报告matlab实现.doc...

    数字图像处理邻域平均法滤波实验报告matlab实现 数字图像处理 实验报告 实验三 邻域平均法滤波 学号 姓名 实验三 邻域平均法滤波 一.实验内容 选取噪声较明显的图像,分别采用3*3.5*5.7* ...

  4. matlab图像处理基础实验,数字图像处理实验报告 Matlab图像处理基础

    <数字图像处理实验报告 Matlab图像处理基础>由会员分享,可在线阅读,更多相关<数字图像处理实验报告 Matlab图像处理基础(27页珍藏版)>请在人人文库网上搜索. 1. ...

  5. matlab音频信号处理实验报告,matlab音频信号处理实验报告.docx

    matlab音频信号处理实验报告 MATLAB音频信号处理实验 南昌航空大学信息工程学院 课程实验报告 实验名称:实验时间:2014年4月23日 指导教师: 班级: 学号: 姓名: 成绩: 南昌航空大 ...

  6. matlab操作入门实验报告,MATLAB基本操作实验报告.doc

    MATLAB基本操作实验报告MATLAB基本操作实验报告 南昌航空大学 数学与信息科学学院 实 验 报 告 课程名称: 实验名称: 实验类型: 验证性 综合性□ 设计性□ 实验室名称: 班级学号: 学 ...

  7. matlab上机实验报告,matlab实验报告格式.doc

    matlab实验报告格式,matlab实验报告,matlab实验报告总结,matlab综合实验报告,matlab数学实验报告,matlab仿真实验报告,matlab上机实验报告,matlab实验报告模 ...

  8. 西安交通大学matlab实验报告,matlab实验报告.doc

    matlab实验报告.doc MATLAB实验报告1MATLAB实验报告MATLAB实验报告2姓名学号0905130129专业班级通信工程1301班学院信息科学与工程学院指导老师陈科文.支国明.张金焕 ...

  9. 电路仿真matlab实验总结,基于matlab的boost电路仿真的实验报告分析.doc

    基于matlab的boost电路仿真的实验报告分析.doc Boost电路 1.实验名称:基于matlab的boost电路仿真的实验报告分析. 2.实验目的:学习matlab的基础知识和操作: 改变占 ...

最新文章

  1. zabbix snmp trap 监控
  2. python列表按照指定顺序排序-Python常见排序操作示例【字典、列表、指定元素等】...
  3. 基本Socket通信流程
  4. C语言学习之函数调用递归问题,有5个学生坐在一起,问第5个学生多少岁?
  5. VS2008 AJAX控件介绍
  6. 增删改查通用测试用例-禅道模板
  7. 大叔也说Xamarin~Android篇~环境部署与破解
  8. ES6新特性_ES6语法糖-子类对父类方法的重写---JavaScript_ECMAScript_ES6-ES11新特性工作笔记037
  9. Windows Azure Azure 简介
  10. Python爬虫教程-22-lxml-etree和xpath配合使用
  11. python定时任务apschedule_Python定时任务-APScheduler
  12. A survey of network-based intrusion detection data sets翻译二(5-8)
  13. 黑龙江省大学计算机学校排名2015,2015黑龙江省最佳大学排行榜
  14. 虚拟服务器vdi重删,VDI桌面虚拟化简介
  15. 常用类/ID命名举例
  16. linux下QT工程调用opencv、libtorch,并用cmake编译,及其遇到的一些问题的解决方法
  17. 设计模式:里氏替换原则(详解)
  18. [软考]之原码、反码、补码和移码
  19. RISC-V相关概念整理
  20. vue框架使用pdf.js

热门文章

  1. Unity.Interception System (2.0)
  2. 操作系统 —— 磁盘
  3. java中字符串函数_JAVA中字符串函数subString的用法小结
  4. 复制给节点的命令_深入理解redis主从复制原理
  5. linux系统下替换图片,Linux(ubuntu系统)下使用FreeImage库
  6. ubuntu命令模式中文乱码
  7. FCOS: A Simple and Strong Anchor-free Object Detector
  8. 利用xlwt写excel并进行单元格的合并
  9. RetinaNet+focal loss
  10. Python 操作 pymysql 批量 增、删、改、查