必威体育Betway必威体育官网
当前位置:首页 > IT技术

霍夫变换

时间:2019-10-05 02:44:23来源:IT技术作者:seo实验室小编阅读:58次「手机版」
 

霍夫变换

学过图像处理的人都知道,霍夫变换是用来检测线的,它的原理也非常简单,就是将离散的点映射到参数空间,在参数空间内累计最多的点就是初始空间内决定线的参数。

检测直线

霍夫变换检测直线是最基本的应用,其本质就是已知很多点(x0,y0),(x1,y1)......" role="presentation">(x0,y0),(x1,y1)......求直线y=kx+b" role="presentation">y=kx+b中的斜率k" role="presentation">k和偏移b" role="presentation">b

学过数学的人都知道,两点决定一条直线,只要知道两组(x,y)" role="presentation">(x,y)就可以得到唯一的k" role="presentation">kb" role="presentation">b,因此可以通过任意两点得到若干组(k,b)" role="presentation">(k,b),选取出现次数最多的一组(k,b)" role="presentation">(k,b)就是要求的参数。

当然,OpenCV中采取的并不是这种方法,而是从直角坐标系映射到极坐标系的方法。但是本质还是相同的,极坐标系下求解的是(ρ,θ)" role="presentation">(ρ,θ),但是归根结底,决定直线的就是两个参数。极坐标的映射方法是对于直角坐标系下的点,每隔一定的角度如π/10" role="presentation">π/10画过该点的直线,对应的(ρ,θ)" role="presentation">(ρ,θ)映射到极坐标系下,这样每个点在极坐标系下都可以映射为周期为2π" role="presentation">2π的类似于正余弦曲线一样的曲线,将所有的点通过这种方式映射后,在极坐标系下,大多数曲线会交于一个点,通过投票的方式得到该点,那么该点所对应的(ρ,θ)" role="presentation">(ρ,θ)就是要求的结果。

检测圆

圆的公式为(x−x0)2+(y−y0)2=r2" role="presentation">(xx0)2+(yy0)2=r2根据之前对检测直线的讨论,对圆的检测本质上就是求三个参数(x0,y0,r)" role="presentation">(x0,y0,r),所以就可以通过任意三点求解三个未知数,然后对(x0,y0,r)" role="presentation">(x0,y0,r)这个集合投票,最终出现次数最多的一组参数就是决定圆方程的参数

一般情况(椭圆等)

更一般的情况,也就是对一般方程曲线的拟合,例如椭圆等等,本质上就是看要求未知参数的个数来决定解方程所需要的点的个数,最后将参数组投票

霍夫变换作为一个函数在opencv中已经高效的实现,在这里不赘述,自己通过循环写的霍夫变换性能上无法跟opencv相提并论,因此除非是一般曲线的拟合,直线和圆的检测建议直接调用opencv函数

霍夫变换一般步骤

另外,在做霍夫变换时,我们不可能将所有的点都做映射,这样计算量太大,因此我们一般会

1)先用canny算子对边缘轮廓做提取,主要目的是降维,这样可以尽可能的去掉平滑区域的点减少计算量,

2)之后利用二值的方法(包括开闭操作等)提取轮廓,去掉噪声等扰动,主要目的是在拟合线性方程时尽可能准确,

3)霍夫变换完成空间映射

4)计数器统计出现次数最高的未知系数组合,如(ρ,θ)" role="presentation">(ρ,θ)

相关阅读

傅里叶变换和小波变换分析

一、前言 我们经常接触到的信号,正弦信号,余弦信号,甚至是复杂的心电图、脑电图、地震波信号都是时域上的信号,我们也成为原始信号,

学习笔记--霍夫曼树与霍夫曼编码解码

先摘一下百科的说法“哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种。Huffman于

简述计算机三大变换的联系和区别 (傅里叶变换 拉普拉

Q:简述计算机三大变换的联系和区别 (傅里叶变换 拉普拉斯变换 z变换)(1) 傅里叶变换定义:表示能将满足一定条件的某个函数表示成

傅里叶变换(时域频域)

我保证这篇文章和你以前看过的所有文章都不同,这是 2012 年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯

十分简明易懂的FFT(快速傅里叶变换)

FFT前言 快速傅里叶变换 (fast Fourier transform),即利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法的统称,简称FFT。快

分享到:

栏目导航

推荐阅读

热门阅读