下面来介绍一下关于Hough变换的原理及其如何在MATLAB中实现。

Hough变换:Hough变换是一种使用表决原理的参数估计技术。其原理是利用图像空间和Hough参数空间的点-线对偶性,把图像空间中的检测问题转换到参数空间。国内外对Hough变换的研究及应用动态:Hough变换于1962年由Paul Hough提出,并在美国作为专利被发表。它所实现的是一种从图像空间到参数空间的映射关系。由于具有一些明显优点和可贵性质,它引起了许多国内外学者和工程技术人员的普遍关注。例如,由于其根据局部度量来计算全面描述参数,因而对于区域边界被噪声干扰或被其他目标遮盖而引起边界发生某些间断的情况,它具有很好的容错性和鲁棒性。多年来,专家们对Hough变换的理论性质和应用方法进行了深入而广泛的研究, 并取得了许多有价值的成果。

Hough变换的实质是将图像空间内具有一定关系的像元进行聚类,寻找能把这些像元用某一解析形式联系起来的参数空间累积对应点。在参数空间不超过二维的情况下, 这种变换有着理想的效果。但是,一旦参数空间增大,计算量便会急剧上升,同时耗费巨大的存储空间,耗时也随之猛增。就此,多年来国内外众多学者针对具体情况对常规Hough变换进行了多方面的探索,并提出了许多有价值的改进方法。

MATLAB中的实现方法:

1、打开MATLAB软件,在其主界面的编辑器中写入下列代码:

I=imread('H:\snsm\a2.jpg');     %读图
rotI=rgb2gray(I);               %rgb转灰度图
subplot(2,2,1);               %显示灰度图
imshow(rotI);
title('灰度图像');
axis on;
BW=edge(rotI,'prewitt');
subplot(2,2,2);
imshow(BW);
title('prewitt算子边缘检测 后图像');
axis on;
[H,T,R]=hough(BW);
subplot(2,2,3);
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(:))));
x=T(P(:,2));y=R(P(:,1));
plot(x,y,'s','color','white');
lines=houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);
subplot(2,2,4);,imshow(rotI);
title('霍夫变换图像检测');
axis on;
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(len>max_len)
max_len=len;
xy_long=xy;
end
end
plot(xy_long(:,1),xy_long(:,2),'LineWidth',2,'Color','cyan');

2、代码保存至自定义路径下,点击运行,结果如下:

如图所示,prewitt算子对灰度图进行边缘检测,茶叶的部分图像边缘就十分清晰了,再通过Hough变换后就显示其线性比例在对应像素值的输入,最后是霍夫变换 图像检测的图片,基本介绍完毕,请大家继续关注!!

MATLAB中的Hough变换相关推荐

  1. hough函数 matlab,在不使用hough函数的情况下在MATLAB中进行Hough变换

    我在 Rosetta Code的MATLAB中找到了Hough变换的实现,但是我无法理解它.另外我想修改它以显示原始图像和重建线(de-Houghing). 理解它和de-Houghing的任何帮助表 ...

  2. hough变换连接边缘matlab,边缘检测与Hough变换实验报告 Matlab - 图文

    <边缘检测与Hough变换实验报告 Matlab - 图文>由会员分享,可在线阅读,更多相关<边缘检测与Hough变换实验报告 Matlab - 图文(5页珍藏版)>请在人人文 ...

  3. MATLAB编程 利用Hough变换检测圆

    MATLAB代码下载:利用Hough变换检测圆.docx-专业指导文档类资源-CSDN下载利用Hough变换检测圆,可以设置要检测圆的个数,最小尺寸.更多下载资源.学习资料请访问CSDN下载频道.ht ...

  4. matlab中的fft变换后的频率的缩放系数问题。

    本文的目的在于说明fft变换之后的幅值对应的真实频率到底是多少. 为了方便大家理解fft的基础知识,在下面附上<小波分析与傅里叶变换基础>的pdf,dft,fft相关在第三章. 链接:ht ...

  5. MatLab中的fft变换(快速傅里叶变换)

    本文章内容只作为个人学习总结使用. 目录 说明: 基本的FFT使用方法: 1.简单的FFT功能介绍: 2.恢复幅度轴,创建频率轴: 说明: 本文章主要进行MATLAB中fft函数基本使用方法的讨论,关 ...

  6. 图像处理之Hadamard变换和Hough变换

    一.Hadamard变换 1.基本原理 Hadamard变换相当于在原来的图像矩阵左右分别乘以一一个矩阵,这两个矩阵都是正交矩阵,称为Hadamard变换矩阵.Hadamard变换矩阵中所有的元素都是 ...

  7. MATLAB中hough反变换,matlab中hough变换

    hough 变换提取直线(Matlab 实现) Hough 变换提取直线一.实验目标实现用 Hough 变换检测直线的算法二.实验内容 1.读入图像选取有较多直线及部分曲线以作对比的...... j= ...

  8. hough函数 matlab,matlab中hough函数

    hough 变换提取直线(Matlab 实现) Hough 变换提取直线一.实验目标实现用 Hough 变换检测直线的算法二.实验内容 1.读入图像选取有较多直线及部分曲线以作对比的...... 基于 ...

  9. 【图像检测-道路检测】基于hough变换实现道路检测直线检测附matlab代码

    1 内容介绍 随着遥感技术和计算机技术的飞速发展,遥感图像的采集变得越来越容易,遥感图像中的物体特征识别及检测变得越来越重要,直线是图像中物体基本的特征之一,研究图像中直线的检测算法对计算机视觉和模式 ...

  10. 利用MATLAB帮助求解作业中的Laplace变换和Z变换

    ■ MATLAB中的Laplace变换的相关命令 下面给出了几个介绍MATLAB中进行Laplace变换的相关连接: Laplace transforms with MATLAB Inverse La ...

最新文章

  1. java获取ajax上传的文件,Java使用Ajax异步上传文件
  2. javascript元素跟随鼠标在指定区域运动
  3. 错误:不能继续进行下一步操作 openfire 设置._如何为MacBook或Mac电脑恢复出厂设置...
  4. 神经网络与深度学习——TensorFlow2.0实战(笔记)(四)(python模块、包和库)
  5. java volatile修饰引用_关于volatile修饰引用类型的疑惑
  6. c 最大子序列和_最大连续子序列
  7. 求一个任意实数c的算术平方根g_初中数学实数相关知识点:这些小技巧,解题有大用...
  8. TypeScript 令我苦不堪言
  9. java jhap_Java-Live与JVAP工具的Max
  10. ios虚拟机安装(二)
  11. 方块方舟怎么自建服务器,方块方舟新版更新,玩家可自定义单机局域网数值
  12. 腾讯良心软件,被秒了
  13. wincc项目激活需要哪些服务器,WinCC创建服务器客户端项目
  14. 10种微信公众号的推广吸粉方法
  15. c语言十进制转二进制过程,C语言十进制转二进制代码实例
  16. 酷软正在连接服务器,蜗牛星际:我的B款双网口机箱PVE+爱快+LEDE 双软路由 保姆级教程...
  17. 国产手机已经用上了 120W 快充技术,苹果还在用20W的原因一
  18. 凸包——Graham-Scan算法
  19. vue实现关注与取消关注的按钮
  20. 只有真正将产业互联网看成是一种嬗变的过程,才能把握其精髓和原始奥义

热门文章

  1. 诺顿企业版安装找不到路径
  2. thinkpade470清灰_ThinkPad笔记本E470/T470/T470s禁用触控板教程
  3. 思科模拟器Cisco Packet Tracer 的安装与使用(汉化教程)
  4. 万年历插件软件测试,万年历软件测试实训报告
  5. 时速云Kubernetes进阶培训 第三期
  6. HTML5期末大作业:我的家乡网站设计——我的家乡-杭州(7页) HTML+CSS+JavaScript 大学生家乡网页作品 老家网页设计作业模板 学生网页制作源代码下载
  7. wacom数位板怎么调压感_手绘板压感是什么 数位板压感怎么调【教程】
  8. JVM内存模型及CMS、G1和ZGC垃圾回收器详解
  9. rainmeter皮肤编写教程
  10. Android Activity防劫持方案