一种用于圆检测的改进Hough变换方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1引言
人工图像中,大多数物体都是由线或曲线组成的,所以图像处理中对线或曲线的识别和定位就显得十分重要。
Hough(霍夫)变换是一种用于区域边界形状描述的方法,经典Hough变换常常被用于直线段、圆和椭圆的检测。
其基本思想是将图像的空间域变换到参数空间,用大多数边界点满足的某种参数形式来描述图像中的曲线(区域边界)[1]。
通过设置累加器进行累加,求得峰值对应的点就是所需要的信息。
多年来,许多学者利用Hough变换针对具体情况进行了扩展。
张红民等利用中心点生成圆弧的方法统计一定范围内点的累加值获得圆心[2];孔兵等根据最小二乘法原理用圆来逼近轮廓[3];Leavers采用动态广义Hough变换思想(DGHT)来检测圆[4];魏怡利用分区和跟踪算法改进了DGHT[5];Yip等使用平行切线以及在一个二维累加数组中对4个向量进行累加来获得圆的信息[6]。
所有对Hough变换的扩展都是为了减少该方法所需的较大的存储空间以及降低计算所需的时间。
而这正是Hough变换的最大的缺点。
2圆的Hough变换检测方法
2.1基本变换
Hough变换可应用于检测图像空间的解析曲线。
解析曲线的参数表示的一般形式是:
f(x,a)=0
式中,x是解析曲线上的点(二维矢量),a是参数空间中的点(矢量)。
对于圆来说,半径为r,圆心坐标为(a,J)的圆在参数空间中的表示为:
(x i-a)2+(y i-J)2=r2(1)此时点x=x
i
,y
i
!"T,a=[a,J,r]T,其参数空间为三维。
显然,在参数空间中,(1)式表示的是一个三维锥面。
它表示的物理意义是,图像空间中的圆对应着参数空间中的一个点,而图像空间中的一个点(x,y)对应着参数空间中的一个三维直立圆锥,该点约束了通过该点一族圆的参数(a,J,r),如图1所示。
对于图像空间中的一个圆,它的半径是固定不变的,圆周上的各个点组成的集合在参数空间中就表现为r相等,而a,J 不等的各个圆锥的集合。
如图2所示。
一种用于圆检测的改进Hough变换方法
孙亦南1刘伟军1王越超1孙亦蓬2
1(中国科学院研究生院中国科学院沈阳自动化研究所先进制造实验室,沈阳110016)
2(河南濮阳中原油田钻井工程技术研究院,濮阳457001)
E-maiI:************.cn
摘要Hough变换在图像处理中占有重要地位,但本身具有存储空间大计算时间长的缺点。
文章利用圆的几何特性,针对Hough变换的缺点进行改进,并将其应用到图像中存在多个圆的情况。
实验表明,该算法能较好地减少存储空间及降低计算时间,并能良好地对图像中多个圆进行检测。
关键词图像处理Hough变换圆检测
文章编号1002-8331-(2003)20-0035-03文献标识码A中图分类号TP391.41
A Method for Circle Detection Using Modified Hough Transform
Sun Yinan1Liu Weijun1Wang Yuechao1Sun Yipeng2
1(Graduate SchooI of Chinese Academy of Sciences,Advanced Manufacture Lab,Shenyang
Institute of Automation,Chinese Academy of Sciences,Shenyang110016)
2(DriIIing Engineering Academy of Zhongyuan OiI-fieId,Puyang,He'nan,Puyang457001)Abstract:Hough transform takes an important part in the image processing,but it has the disadvantages of massive storage reguirement and high cost of computation.This paper modifies the disadvantages of Hough transform using the geometricaI characteristic of circIe,and uses it in the instance of muIti-circIes in one image.The experiments show that it is good for the arithmetic to reduce storage space and recede caIcuIationaI time,and can weII detect muIti-circIes in one image.
Keywords:Image process,Hough transform,CircIe detection
基金项目:国家863高技术研究发展计划基金资助项目(编号:2001AA421160)
作者简介:孙亦南(1978-),男,在读博士。
研究方向为反求工程、机器视觉、图像处理与模式识别。
刘伟军(1969-),男,工学博士。
主要研究领域为三维自由曲面测量与重建、快速原型制造技术、虚拟现实技术等。
王越超(1960-),男,汉族,工学博士。
现任中国科学院机器人学重点实验室主任,研究员,中科院沈阳自动化研究所副所长。
主要研究方向:机器人控制理论与方法研究、智能机器与系统研究。
35
计算机工程与应用2003.20
2003.20计算机工程与应用
图l
图像空间中的点对应参数空间中的直立圆锥
图2
图像空间中圆上的点在参数空间中的表示
显然,图像空间中圆上的点映射到参数空间中的一族圆锥的交点正好对应于圆的圆心坐标和圆的半径。
对参数空间适当量化,得到一个三维的累加器阵列,阵列中的每一个立方小格对应(a ,6,r )的参数离散值。
对图像空间所存在的圆边界形状检测时,先计算图像每点强度的梯度信息,然后根据适当阈值求出边缘,再计算与边缘上的每一点像素距离为r 的所有点(a ,6),同时将对应(a ,6,r )立方小格的累加器加。
改变r 值
(可以根据先验知识确定其变化范围,减少计算量)再重复上述过程,当对全部边缘点变换完成后,对三维阵列的所有累加器的值进行检验,其峰值小格的坐标就对应着图像空间中圆的圆心。
对于数字图像,式可写为:(x i -a )2
+
(y i -6)2
-r 2
!!(2)
式中,!是考虑到对图像进行数字化和量化的补偿。
对边缘上的每一点(x i ,y i ),给定半径r ,a ,6的变化范围都是2r ,因此,对应a 的变化,需要计算(2)式2r 次。
明显的,只计算a 的变化会漏掉一些点,所以还要对应6的变化计算(2)式
2r 次,同时排除已计算过的重复点,这样总共需计算大约3r
次。
设每次这种运算耗时t 则对于一个边缘点需耗时3rt 秒。
设
半径的变化范围为R ,
则每个边缘点共耗时:R
r=l
23rt=3
2
R (R +l )t
设共有N 个边缘点,则总耗时为32
NXRX (R +l )Xt 。
对于本
课题所涉及的图像,NXRX (R +l )是l05数量级,这个计算量是很大的。
2.2
利用梯度方向
对灰度图像获取边缘的同时,得到图像每点的强度信息可
以显著减少Hough 变换的计算量。
这种改进方法是使r 沿着边缘点(x i ,y i )的法线方向变化,而不是所有方向。
圆心的计算公式为:
a=x i -r cos "
6=y i
-r sin {"
其中,"=arctg
(g y
g x
),g x ,g y 分别是两个方向的梯度。
实际计算中,可以直接计算出:
cos "=g x g
sin "=g y
g \
<
\L
其中,g=
(g 2
x +g 2
y )l
2。
这样,Hough 变换总耗时为NXRXt ,大大减少了Hough 变换的开销。
这种方法已成为圆检测的标准Hough 变换。
对于大多数灰度图像来说,抽取后的景物边缘仍有一定的宽度,以及噪声的存在,参与变换的像素点仍然较多,从而计算量依然较大。
文章提出了一种新的算法以减少Hough 变换的开销。
3
该文的算法
Hough 变换之所以计算量大,
是因为它涉及的点数过多以及积累阵列的维数过高。
因此,尽可能的减少参与Hough 变换的点数和降低积累阵列的维数是提高Hough 变换效率的关键。
所以,文章就从这两个方面入手,以提高速度。
3.l 减少点数
这里,不利用边缘点的梯度信息。
可以对灰度图先进行二
值化,再利用数学形态学的方法提取边缘。
采用Freeman 链码来表示边缘,
同时将轮廓进行平滑[7],去除噪声产生的毛刺边缘,保证链码表示的是单像素宽的边缘,这样就减少了Hough 变换所涉及点的数目。
3.2减少维数
如图3所示,从边缘上某一点A 开始,顺时针相隔I 个点
取一点B ,
过B 点作线段AB 的垂线,必交圆与一点C ,连接点A 和C 。
三点就组成一个直角三角形,
由圆的性质可知,斜角边AC 必过圆的圆心。
从B 点顺时针相隔I 个点再取一点D ,过D 点作线段BD 的垂线,必交圆于一点E ,B ,D ,E 三点也组成一个直角三角形,且BE 也过圆心。
这样,直线AC 和BE 的交点就唯一确定了圆的圆心。
图3
利用圆的性质确定圆心
再从S 点相隔m 个点取点A l ,重复上述过程。
直到A i 回
36
计算机工程与应用2003.20n m
(a 1,b 1,r 1)
(a 2,b 2,r 2)
Times
(ms )15020(134,279,118)(343,180,109)31120020(134,279,118)(343,180,109)308300
20(134,
278,118)(343,180,109)315
n m a b r times
(ms )150202592682402052002025826824021025050258268240208300
20
259
268
240
203
到最初点A 的附近,完成搜索。
每一次确定了圆心,就将求得圆心对应点的累加器加1。
搜索完毕后,累积阵列中最大值对应的坐标就是所求的圆心坐标。
该累加阵列就可以设计为二维的,相对于标准Hough 变换减少了一维,这就减少了所需的存储空间。
设A ,B 的坐标分别为(x 1,y 1),(x 2,y 2),则直线BC 的方程为:
y=y 2+
x 2-x 1
y 2-y 1
(x-x 2):0(3)
顺时针将B 点以后点的坐标代入(3)式,可得到点C ,从而得到直线AC 的方程。
同理,可得到直线BE 的方程,二者连立,就可获得圆心的坐标。
设计算(3)式需耗时T (由于没有平方开方运算,T<t ),由于C 点必与B 点在同一半圆上,因此共需将边缘上N 2-I
个的
点代入,则求得C 点需耗时
(N 2-I )T 。
搜索整个链码共N m
次,
所以求得圆心坐标共耗时(N 2-I )N
m
T 。
对于该课题涉及的图
像,其数量级为103,
从而显著减少了计算时间。
4试验结果
实验采用机器为P 4/1.7 ,分别采用标准的Hough 变换和
该文的改进算法对如图4所示的图像进行检测。
图4
实验所用图像
表1和表2列出了两种算法对图4检测的数据:
表1
用标准Hough 变换对图4处理
表2
用该文方法对图4处理
通过对表1和表2的比较,该文的算法较标准Hough 算法在计算时间上减少了一个数量级,而且精度也达到了较高的水平。
这在实际应用中具有显著的意义。
在图像存在多个圆的情况中,该文的方法具有比标准
Hough 变换更强的适用性。
如图5所示,
如果图像中含有多于一个圆的时候,采用标准Hough 变换方法对该图像处理,由于其算法是确定峰值最大的立方小格,因此只能确定一个圆的参数,要想获得所有圆参数必须还需附近额外的限制条件,比如,设定一个阈值!,
如果两点间的距离小于该值,则认为这两点表示同一个圆的信息。
对于有多个圆的情况,限制条件将会更多。
图5
图像中含有多个圆
该文的方法利用链码描述各个圆的边界,在生成链码的同时就可以将各个圆区分开来,分别对链码进行操作,得到各个圆的信息。
而不需要附加额外的限制条件。
这就简化了处理的工作,可以适用更多的复杂情况。
表3列出了该文方法对图5检测的结果:
表3
对多个圆检测的结果
5结论
该文的算法仍保留着Hough 变换的优点,对图像中的噪
声不敏感;对于图像中有若干圆的情况,由于该文采用链码的方法来描述圆的边缘,可以很好地将各个圆区分开来,分别确定各圆的圆心坐标及半径。
而标准的Hough 变换方法在处理这种情况时,需要附加额外的限制条件才能有效区分。
通过实
验比较,该文的算法较标准Hough 变换在计算速度上提高了一个数量级。
该文的算法在目标比较清晰,图像不太残缺的情况下,具有较好的结果。
由于算法的局限性,对于有较大残缺的圆弧就无能为力了。
这就限制了算法的使用范围,需要在今后的工作中解决。
(收稿日期:2003年4月)
参考文献
1.郑南宁.计算机视觉与模式识别 M .北京:科学出版社,1987:154~160
2.张红民,
张玉坚.基于广义Hough 变换的圆心坐标快速提取方法 J .江汉石油学院学报,2000;22(2):64~66
3.孔兵,
王昭,谭玉山.基于圆拟合的激光光斑中心检测算法 J .红外与激光工程,2002;31(3):275~279
4.LEAVERS V F.The dynamic generaiized Hough transform :Its reia-tionship to the probabiiistic Hough transform and an appiication to the concurrent detection of circies and eiiipse J .CVGIP :Image Un-derst ,1992;56(3):381~398
5.魏怡.改进的动态广义Hough 变换及其在圆检测中的应用 J .测绘信息与工程,1998;(4):8~11
6.YIP R K K ,TAM P K S ,LEUNG D N K.Modification of Hough transform for circies and eiiipses detection using a 2-dimensionai ar-ray J .Pattern Recognit ,1992;25(9):1007~2022
7.任世宏,
郭志芬.一种基于链码的轮廓平滑算法 J .北京理工大学学报,1998;18(4):494~497
半径变化范围
a
b
r times
(ms )0-30025926824010650-40025926724016980-500
259268
241
2210
37
一种用于圆检测的改进Hough变换方法
作者:孙亦南, 刘伟军, 王越超, 孙亦蓬
作者单位:孙亦南,刘伟军,王越超(中国科学院研究生院中国科学院沈阳自动化研究所先进制造实验室,沈阳,110016), 孙亦蓬(河南濮阳中原油田钻井工程技术研究院,濮阳,457001)
刊名:
计算机工程与应用
英文刊名:COMPUTER ENGINEERING AND APPLICATIONS
年,卷(期):2003,39(20)
被引用次数:45次
1.郑南宁计算机视觉与模式识别 1987
2.张红民;张玉坚基于广义Hough变换的圆心坐标快速提取方法[期刊论文]-江汉石油学院学报 2000(02)
3.孔兵;王昭;谭玉山基于圆拟合的激光光斑中心检测算法[期刊论文]-红外与激光工程 2002(03)
4.Leavers V F The dynamic generalized Hough transform:Its relationship to the probabilistic Hough transform and an application to the concurrent detection of circles and ellipse 1992(03)
5.魏怡改进的动态广义Hough变换及其在圆检测中的应用 1998(04)
6.Yip R K K;TAM P K S;LEUNG D N K Modification of Hough transform for circ1es and ellipses detection using
a 2-dimensional array 1992(09)
7.任世宏;郭志芬一种基于链码的轮廊平滑算法[期刊论文]-北京理工大学学报 1998(04)
1.王强.胡建平.胡凯.陆志敏.胡维平.WANG Qiang.HU Jian-ping.HU Kai.LU Zhi-min.HU Wei-ping一种用于圆检测的快速HOUGH算法[期刊论文]-小型微型计算机系统2000,21(9)
2.蔡晋辉.蒋庆.周泽魁.施丽莲圆检测HOUGH变换的改进算法研究[期刊论文]-模式识别与人工智能2004,17(1)
3.束志林.戚飞虎一种新的随机Hough快速圆检测算法[期刊论文]-计算机工程2003,29(6)
4.黄永林.叶玉堂.陈镇龙.乔闹生.Huang Yonglin.Ye Yutang.Chen Zhenlong.Qiao Naosheng一种新的快速Hough变换圆检测方法[期刊论文]-电子测量与仪器学报2010,24(9)
5.黎自强.滕弘飞.Li Ziqiang.Teng Hongfei广义Hough变换:多个圆的快速随机检测[期刊论文]-计算机辅助设计与图形学学报2006,18(1)
6.林金龙.石青云用点Hough变换实现圆检测的方法[期刊论文]-计算机工程2003,29(11)
7.陈燕新.戚飞虎.CHEN Yan-Xin.QI Fei-Hu一种新的基于随机Hough变换的椭圆检测方法[期刊论文]-红外与毫米波学报2000,19(1)
8.赵桂霞.黄山.ZHAO Gui-xia.HUANG Shan一种基于随机Hough变换圆检测的改进算法[期刊论文]-计算机技术与发展2008,18(4)
9.王健.王孝通.徐晓刚.李博.WANG Jian.WANG Xiao-tong.XU Xiao-gang.LI Bo基于梯度的随机Hough快速圆检测方法[期刊论文]-计算机应用研究2006,23(8)
10.李良福.冯祖仁.贺凯良.LI Liang-fu.FENG Zu-ren.HE Kai-Liang一种基于随机Hough变换的椭圆检测算法研究[期刊论文]-模式识别与人工智能2005,18(4)
1.阮春燕.毛国红计算机视觉在精密模具破损检测系统的应用[期刊论文]-计算机仿真 2013(8)
2.黎海兵.易卫东一种高效检测图像中是否有三角形的算法[期刊论文]-中国图象图形学报 2008(3)
3.杜艳红.高庆吉.曾浩.牛国臣基于颜色和形状特征的目标检测与识别[期刊论文]-东北电力学院学报(自然科学版)2005(2)
4.李军基于计算机图像处理的电机同心度检测[期刊论文]-微电机 2005(2)
5.柏长冰.齐春.宋福民.杨莹Hough变换快速检测圆形PCB Mark[期刊论文]-光电工程 2005(9)
6.杜艳红.高庆吉.孙承琦.曾浩基于颜色和形状特征的目标检测与识别[期刊论文]-东北电力学院学报 2005(1)
7.张丹丹.彭延军基于Canny算子和三次B样条曲线的鼻子边缘拟合[期刊论文]-信息技术与信息化 2010(5)
8.舒梅.董秀成基于肤色和模板匹配的人眼定位[期刊论文]-计算机工程与应用 2009(2)
9.王小华.谢君廷.李本伍一种新的基于梯度方向角的圆检测算法[期刊论文]-机电工程 2008(3)
10.张丹丹.张凌燕.彭延军一种基于圆检测的眼睛定位方法[期刊论文]-山东科技大学学报(自然科学版) 2007(3)
11.赵亮.韩波.李平基于DSP平台的微型UAV视觉系统[期刊论文]-机电工程 2007(2)
12.李江涛.倪国强.王强.黄光华一种快速准确识别圆形目标的新算法[期刊论文]-激光与红外 2007(6)
13.高绍嵩.范洪达.魏宇基于机器视觉的玻璃瓶检测系统[期刊论文]-海军航空工程学院学报 2006(2)
14.章宇庆.刘学平.戎国林高速在线PCB焊接质量检测系统[期刊论文]-机械设计与制造 2010(3)
15.沈子琦.王召巴基于图像处理的喷管装配对准方法研究[期刊论文]-弹箭与制导学报 2008(2)
16.王小琦.王哲.刘东.郭世明改进Hough变换在调车信号灯识别中的应用[期刊论文]-铁路通信信号工程技术 2008(1)
17.周世恒.王哲.郭世明基于改进Hough变换的信号灯视觉识别系统[期刊论文]-工业控制计算机 2008(6)
18.徐春.林忠钦.李淑慧.夏年炯基于Hough变换的双球冲球心精确定位技术[期刊论文]-计算机应用 2006(9)
19.钟锦敏.韩彦芳.施鹏飞Hough变换在表面污渍检测中的应用[期刊论文]-测控技术 2006(11)
20.赵京东用两步Hough变换检测圆[期刊论文]-计算机应用 2008(7)
21.严筱永基于图像的啤酒瓶瓶口与瓶底污损自动检测[学位论文]硕士 2006
22.赵三元.沈庭芝.林健文.胡宇.田卉改进PF算法对红外图像中瞳孔的跟踪[期刊论文]-北京理工大学学报 2009(11)
23.潘星宇.王耀南.张辉.龚权华不透明瓶质量视觉检测系统研究[期刊论文]-计算机工程与应用 2013(19)
24.吴彰良.刘洁.孙长库基于计算机视觉的油封尺寸检测系统设计[期刊论文]-计算机测量与控制 2012(5)
25.张兵权.王建峰.卢军一种新的对随机Hough变换改进的检测圆的方法[期刊论文]-计算机工程与应用 2006(18)
26.张维胜.王超.张红.吴樊.汤益先.穆湘萍基于遥感影像的油罐自动检测算法[期刊论文]-宇航学报 2006(6)
27.张杰.杨晓飞.赵瑞莲基于积分投影和Hough变换圆检测的人眼精确定位方法研究[期刊论文]-电子器件 2005(4)
28.张杰.杨晓飞.赵瑞莲基于Hough变换圆检测的人眼精确定位方法[期刊论文]-计算机工程与应用 2005(27)
29.王建锋.吴庆标一种随机Hough变换检测圆的改进算法[期刊论文]-计算机工程与应用 2005(14)
30.张建恩.曹长修.金琼图像处理中的圆分析算法[期刊论文]-重庆大学学报(自然科学版) 2005(11)
31.柴业宏数字图像处理技术对影响投篮命中相关因素的分析[期刊论文]-合肥工业大学学报(自然科学版) 2007(12)
32.谢国俊.曹其新.夏年炯基于机器视觉的镀锌板粉化区域的提取方法[期刊论文]-华中科技大学学报(自然科学版)2006(9)
33.景文博.王光腾.祝勇.付强.王晓曼.姜会林机器视觉流感疫苗血凝素含量测量实验研究[期刊论文]-光电工程 2010(11)
34.荆晶基于广义Hough变换的鞋样检测及矢量化技术研究[学位论文]硕士 2006
35.卢奇武图像处理技术在机械零件检测系统中的应用[学位论文]硕士 2004
36.叶翔宇航天员舱内活动地面模拟实验研究[学位论文]硕士 2005
37.王敏油井射孔质量自动识别系统研究与开发[学位论文]硕士 2006
38.杨晓飞人脸识别系统研究[学位论文]硕士 2005
39.陈军基于静态摄像机的室内移动机器人全局定位研究[学位论文]硕士 2004
40.胡海波基于图像测量技术CDT荫罩板检测系统研究[学位论文]硕士 2005
41.马伟遥感图象中的油库识别[学位论文]硕士 2005。