本发明涉及数字图像处理和模式识别领域,特别是在数字图像处理中利用Hough变换快速检测圆形目标的方法。

背景技术:

圆形目标检测在计算机视觉和模式识别领域有着广泛的应用。例如,在工业生产线上有圆形的工件,道路上有圆形的交通信号,生物信息领域中的圆形虹膜等。在这些应用场景中,往往需要对圆形目标进行快速、准确地识别和定位,以便进一步分析处理。

常用的圆形目标检测的方法有:基于最大估计的拟合方法、基于Hough变换的投票方法。拟合方法受噪声影响大;Hough变换方法对图像噪声、目标不完整性的鲁棒性好、抗干扰能力强。

传统的利用Hough变换的圆检测算法将图像空间中一个边缘点变换到三维参数空间中的一个圆锥,所有边缘点在参数空间对应的圆锥簇相交于一峰值点。进而将圆检测问题转化为参数空间的峰值搜索问题。由于圆的投票方程为:(x-x0)2+(y-y0)2=r2,标准Hough变换定义了一个三维的参数空间,需要更多的时间消耗和大量的内存开销。

为此,出现了各种改进的Hough变换方法用于圆检测。

第一类是运用随机采样方法【Chung K L,Huang Y H,Shen S M,et al.Efficient sampling strategy and refinement strategy for randomized circle detection[J].Pattern Recognition,2012,45(1):252-263.】。随机Hough变换从图像空间中随机选择三个点,变换到参数空间中的一个点。虽然随机Hough变换降低了算法的时间开销,但是仍然采用的是3D的参数空间。当处理复杂图像时,由于无效采样而引入无效累积,导致算法性能大大降低。

第二类方法是运用低维参数空间的两步策略。首先利用圆边缘点的梯度方向信息【Jain N,Jain N.Coin Recognition Using Circular Hough Transform[J].International Journal of Electronics Communication&Computer Technology,2012,2(3):101-104】、或者圆弦的中垂线【Kim,HeungSoo,Kim,et al.A two-step circle detection algorithm from the intersecting chords[J].Pattern Recognition Letters,2001,22(6):787-798.】,向一个2D累加器投票求得圆心坐标。然后运用1D的直方图投票估计圆的半径。这类算法采用2D+1D的参数空间,提高了Hough变换的执行效率,但是与传统Hough变换相比受噪声影响大,当出现同心圆时效果并不好。

相关的专利文献有:

【黄海清.利用改进霍夫变换进行类圆形检测的图像处理方法:CN,CN102568007A[P].2012.】、【CN201410594409.0一种基于Hough变换的圆检测方法】利用边缘点梯度方向信息降低了对内存的需求,提高了算法效率。而边缘梯度的提取对图像噪声非常敏感。

【张翼,孙永荣,刘晓俊,等.一种基于图像的圆形小目标精确检测方法:CN,CN 103150730 A[P].2013.】、【CN201410598274.5一种圆形图形的检测方法】通过Hough变换和最小二乘拟合进行二次检测。而拟合算法对图像噪声敏感,并且受Hough检测结果的影响。

【Poyil B,Sripadarao A M.Hough transform for circles:,EP2738711[P].2014.】、【B·波伊勒,A·M·斯里帕达拉奥.Hough transform for circles:,CN 103854279A[P].2014.】运用软、硬件结合的方案,提高Hough圆检测的效率。但是需要提供圆半径的范围。

【齐敏,辛红娟,吴志超,等.面向圆形标志符的两级优化霍夫变换快速检测定位方法:,CN104463920A[P].2015.】在平移Hough变换的基础上,通过两级Hough变换计算圆形标志符的圆心坐标。节约了投票计算的时间开销,但并没有降低空间需求。

【胡德志,孙碧亮,袁超飞.一种基于Hough变化的圆形识别方法及系统:,CN 106780599 A[P].2017.】直接调用OpenCV函数库中的cvHoughCircles函数进行圆形检测。而该函数在实际应用中受限于参数选择等一系列困难。

另外,这些圆检测方法是基于边缘图像的,需要事先运用Sobel或Canny边缘检测技术计算机边缘点的梯度。如果梯度幅度大于设定的阈值,就认为是边缘点,同时记录该点的梯度方向。

技术实现要素:

为了进一步降低Hough变换用于圆检测时的时间消耗和内存需求、提高算法效率,降低Hough变换圆检测的计算和空间复杂度,同时保持检测的精度,本发明提供一种利用Hough变换的圆形目标检测方法,忽略边缘检测,直接在二值图像上识别和定位圆形目标。

本发明的技术方案如下:

一种利用Hough变换的圆形目标检测方法,包括如下步骤:

步骤一,灰度转换与增强;

步骤二,图像二值化;

步骤三,Hough投票;

步骤四,搜索峰值对应的投票距离ρm;

步骤五,计算圆心坐标;

步骤六,计算圆半径。

进一步,所述步骤一,对输入的彩色图像进行变换,转换成灰度图像;并做图像平滑处理,降低图像噪声。

进一步,所述步骤二,运用otsu算法计算阈值,对经过步骤一处理后的灰度图像进行二值化处理,得到二值图像;如果像素点的灰度值大于该阈值,赋予该点灰度值255,否则,赋予该点灰度值0。

进一步,所述步骤三,从图像空间向参数空间进行投票时,在图像空间进行粗采样Δx=Δy>1,选用直线的投票方程:ρ=x·cosθ+y·sinθ;随机选择两个投票角度θ1和θ2;对图像中的每个黑像素点,运用直线投票方程,分别计算对应的投票距离ρ1和ρ2;分别向两个一维的累加数组A1(ρ)和A2(ρ)投票。

进一步,所述步骤四,分别在两个1D累加数组中,搜索最大投票值所对应的投票距离ρ;对于每个投票角θ,所有圆形目标都向累加数组投票后,当投票距离ρ经过圆心坐标时,投票值最大;设此时投票距离为ρm,并且最大投票值等于圆形目标的直径。

进一步,所述步骤五,圆心坐标(x0,y0)对应的投票距离为ρm;基于ρ1m和ρ2m构成了两个方程:ρ1m=x0·cosθ1+y0·sinθ1和ρ2m=x0·cosθ2+y0·sinθ2,解方程组得到圆心坐标(x0,y0)。

进一步,所述步骤六,在每个累加数组中,最大投票值为圆形目标的直径;当投票距离为ρm时,投票值A1(ρ1m)和A2(ρ2m)最大;根据在ρm处的最大投票值A(ρm)的一半,计算圆半径。

本发明的有益效果如下:

本发明提出了一种利用Hough变换的圆形目标检测方法,通过在图像空间中进行粗采样,通过选用1D的累加数组,进一步降低了Hough变换的内存需求和时间消耗;通过求解方程组的解,得到圆形目标的圆心,提高圆心检测的精度。同时,直接在二值图像上进行圆形目标检测,不需要对图像进行边缘提取。

附图说明

图1是本发明的检测圆形目标的流程图。

图2是从图像空间到参数空间的投票分析图。

图3是本发明实例虹膜图像中圆形目标的检测结果。

图4是本发明实例仿真图像中圆形目标的检测结果。

具体实施方式

下面结合附图对本发明的实施例作详细说明。

本发明的目的在于提供一种利用Hough变换的圆形目标检测方法,进一步降低Hough变换圆检测的计算和空间复杂度。其特征在于,按如下步骤实现:

如图1所示为本发明的流程图,算法以一幅数字图像为输入,输出圆形目标的圆心和半径。实施例包括如下步骤:

步骤一,图像的灰度转换与增强。首先对输入的原始彩色图像进行灰度转换,变换成灰度图像。然后,对灰度图像进图像平滑处理,降低图像噪声。

步骤二,图像二值化。运用otsu算法计算阈值,对经过步骤一处理后的灰度图像进行处理,得到二值图像。如果像素点的灰度值大于该阈值,就赋予该点灰度值为255,否则,赋予该点灰度值为0。此处,也可以根据实际应用,人工选取阈值。

步骤三,Hough投票。当从图像空间向参数空间进行投票时,(1)在图像空间进行粗采样Δx=Δy=2。此处,也可以选择更大的采样间隔Δx和Δy,这样图像中只有一小部分像素向参数空间进行投票。(2)选用直线的投票方程:ρ=x·cosθ+y·sinθ。选取大的采样间隔,这样图像中只有一小部分像素向参数空间进行投票。随机选择两个投票角度θ1和θ2。对图像中的每个黑像素点,运用直线投票方程,分别计算对应的投票距离ρ1和ρ2。定义两个1D的累加数组A1(ρ)和A2(ρ)。并分别向两个一维的累加数组A1(ρ)和A2(ρ)投票。

从图像空间向参数空间投票过程如图2所示。对于任一投票角θ,投票距离在一定范围内,并且投票值A(ρ)从0到最大,再减到0。

步骤四,搜索峰值对应的投票距离ρm。当图像中所有圆形目标像素点都向两个累加数组A1(ρ)和A2(ρ)投票后,分别在两个1D累加数组中,搜索最大投票值所对应的投票距离。对于每个投票角θ,所有圆形目标都向累加数组投票后,当投票距离ρ经过圆心坐标时,投票值最大。并且最大投票值等于圆形目标的直径。设最大投票值对应的投票距离为:ρ1m和ρ2m。也就是说,当ρ=ρ1m时,A1(ρ)最大;当ρ=ρ2m时,A2(ρ)最大。

步骤五,计算圆心坐标。因为当投票距离经过圆心(x0,y0)时,投票值最大。也就是圆心坐标(x0,y0)对应的投票距离为ρm。这样,基于第四步得到的ρ1m和ρ2m,构成了两个方程:

ρ1m=x0·cosθ1+y0·sinθ1

ρ2m=x0·cosθ2+y0·sinθ2 (1)

解上述方程组,就得到圆心坐标。

x0=(ρ2m·sinθ1-ρ1m·sinθ2)/sin(θ1-θ2)

y0=(ρ1m·cosθ2-ρ2m·cosθ1)/sin(θ1-θ2) (2)

步骤六,计算圆半径。因为在每个累加数组中,最大投票值为圆形目标的直径。并且当投票距离为ρ1m和ρ2m时,投票值A1(ρ)和A2(ρ)最大。所以,圆半径为:

r=A1(ρ1m)/2或r=A2(ρ2m)/2 (3)

检测的圆心坐标和半径如图3所示。

以下实例采用仿真实例进行检验。

构造一幅仿真图像,包含一个圆心在(184,97),半径为59的一个圆形对象,并额外添加10%的图像椒盐噪声。

运用本发明利用Hough变换检测圆形目标方法对仿真图像进行处理,得到圆形目标的圆心坐标(x0,y0)为(183.65,98.68),半径为r=60。如图4所示。检测的圆形目标圆心和半径与真值非常接近。圆心误差1.7像素,半径误差1.7%。

本实例在进行圆形目标检测时,一方面降低了算法对内存的需求,提高了算法效率。另一方面,直接在二值图像上检测圆形目标,不需要进行图像边缘检测。

以上是本发明的实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。

hough变换检测圆周_一种利用Hough变换的圆形目标检测方法与流程相关推荐

  1. 麦克风声源定位原理_一种利用麦克风阵列进行声源定位的方法与流程

    本发明涉及计算机信号处理领域,具体涉及一种用麦克风阵列时延估计定位声源的方法. 背景技术: 20世纪80年代以来,麦克风阵列信号处理技术得到迅猛的发展,并在雷达.声纳及通信中得到广泛的应用.这种阵列信 ...

  2. matlab计算单模光纤耦合效率的积分,一种利用模式转换提高单模光纤耦合效率的方法与流程...

    本发明属于无线光通信技术领域,具体涉及一种利用模式转换提高单模光纤耦合效率的方法. 背景技术: 无线光(Free Space Optical Communication,FSOC)通信是一种以光为信号 ...

  3. python小波分析法检测火焰_一种基于小波分析的网络流量异常检测方法

    一种基于小波分析的网络流量异常检测方法 杜臻 ; 马立鹏 ; 孙国梓 [期刊名称] <计算机科学> [年 ( 卷 ), 期] 2019(046)008 [摘要] 对大量网络流量数据进行高质 ...

  4. ccot 目标跟踪全称_一种焊缝跟踪系统的实时姿态估计方法与流程

    本发明属于焊接机器人焊缝跟踪领域,特别涉及一种焊缝跟踪系统的实时姿态估计方法. 背景技术: 现在的焊接机器人基本上都是在焊接之前先进行示教,让机器人每次都走一个固定的轨迹,这种方式有一个好处就是重复精 ...

  5. aes子密钥生成c语言_一种基于流密码算法的子密钥生成方法与流程

    本发明涉及一种用于分组加解密算法的子密钥的生成方法. 背景技术: 随着信息技术的发展,信息安全性的问题却愈来愈显得突出,保证信息安全的一个重要技术就是密码学.密码学在信息安全技术中扮演着基础的角色,是 ...

  6. bim 模型web页面展示_一种操纵BIM模型在网页展示的方法与流程

    本发明涉及操纵BIM模型在网页展示的方法. 背景技术: : 现有网页展示BIM模型使用的是同步传输技术,同步传输的比特分组较大,它不是独立地发送每个字符,每个字符都有自己的开始位和停止位,而是把它们组 ...

  7. 机器人测钢卷直径_一种基于关节机器人的冷轧钢卷卷芯焊接方法与流程

    本发明涉及冶金技术领域,特别涉及一种基于关节机器人的冷轧钢卷卷芯焊接方法. 背景技术: 在冷轧罩式退火工序,钢卷采用立式吊具吊运,为防止钢卷卷芯松动导致卷芯钢带损坏和抽芯故障,必须将钢卷卷芯内圈焊接固 ...

  8. 去毛边 叶片图像_一种复杂背景叶片图像的全自动分割方法与流程

    本发明涉及图像处理领域,更具体地,涉及一种复杂背景叶片图像的全自动分割方法. 背景技术: 药用植物,是中药材的主要来源,是中医药治病救人的物质基础.然而,近年来,由于生态环境的恶化,药用植物资源显著萎 ...

  9. 图片被遮住一部分能复原吗_一种恢复图像遮挡边界的分层分割方法与流程

    本发明涉及图像处理技术,尤其是涉及一种恢复图像遮挡边界的分层分割方法. 背景技术: 把一幅图像中的边界遮挡部分给分割出来是图像处理领域中的一个热点问题,对目标识别和场景分析的研究具有重要意义. 遮挡推 ...

  10. matlab 图片倒影_一种精确快速处理液滴铺展图像的方法与流程

    本发明涉及液滴动力学领域,具体是一种精确快速处理液滴铺展图像的方法. 背景技术: 液滴撞击壁面现象出现在很多行业中,例如航空航天,农业,工业中的喷淋和印刷等.研究液滴撞击壁面的铺展过程对研究液滴与壁面 ...

最新文章

  1. BIOS, UEFI, MBR, GPT, GRUB介绍
  2. Gridview实现银行选择列表
  3. 高速无人机独立穿越森林,全程自己规划路线,时速高达40公里
  4. STM32与DS1302的接口电路
  5. 如何使Putty会话颜色更美观
  6. 汇编语言学习系列 for循环实现
  7. Sentinel(八)之熔断降级
  8. Altium AD20常用的操作快捷键,个人总结精炼版,全干货超实用
  9. Spring框架学习[IoC容器高级特性]
  10. 豆丁当当免费下载神器
  11. 尚学堂浪曦视频学习推荐顺序
  12. 多目标跟踪算法SORT
  13. MySQL(管理员常用命令)
  14. 2021-2-2有道翻译在线翻译爬虫
  15. flask中基础模板templates
  16. npm WARN deprecated
  17. 人脸识别概述及基于多显卡服务器实现百万底库人脸比对的简单实现方案
  18. android水平wheelview,android:自定义横向滚动的WheelView
  19. Rust 官方入门程序(a Guessing Game)解读
  20. FANUC机器人的通讯方式(4)TIA博途如何添加机器人组态网络

热门文章

  1. 数据仓库与数据挖掘归纳汇总
  2. 数学系教材推荐(转载)
  3. 张量分解在无线通信和MIMO雷达中的概述
  4. 黑客X档案的《黑客免杀入门》
  5. Telerik Reporting.NET,Internet或桌面程序提供交互式报告
  6. 千里达v1000时速_《美骑评测》第10期 千里达V1000山地车 评测
  7. It技能图谱(13张)
  8. 【RemoteJoy】PSP图像采集方案
  9. 移动通信(Mobile Communication)
  10. 2021年Delphi第26届应用软件开发展示挑战赛的获胜者名单