Hough Transform 与矩形检测。

http://blog.sina.com.cn/s/blog_5f2c831b0101413p.html


  HoughTransform可用于检测图像中的直线。最近试图用此方法来实现某类图像中的边框检测。想用opencv中的方法。由于这个变换可以检测各种线段,导致检测出来的结果上全是线,当然参数是可调整的,而且此方法是在canny算子检测图像边缘基础上使用的。opencv中的cvCanny是不能自适应的,对不同的图像要设置不同的大小阈值,而阈值严重影响着结果,边缘检测的结果也同时直接影响着直线检测。

  故思路:先将cvCanny换成自适应算法。可以检测出足够精细的边缘信息。以下为代码。如果想不修改opencv库,那可以把这个做为函数单位加到工程里,我是这样做的,没问题。

  canny 自适应:  http://my.oschina.net/liujinofhome/blog/37041 

  在此基础上找出直线,找最长的直线,由于我只想要垂直和水平线,有点小纠结,直接用cvHoughLines2中的standard方法的话,可以控制所取直线的角度,但是效果不是特别好,因为这个函数也有让人头大的阈值。但如果只是想找最长直线以下的这个很有用的。只画出最长的,就不用看着满屏的线线纠结了。

  利用Hough 变换找最长线段: http://www.cnblogs.com/wqj1212/archive/2009/03/01/1330073.html

  曾经试着把图像分割为上下左右四部分,在每部分中检测最长的直线。只试了一张,还行。

  突然灵光一闪,我在找直线检测的相关东西时看到了一个检测各种形状的综合代码。本来看着也没感觉,一看到矩形,想到,我本来不就是要矩形吗,为什么不直接找矩形,还费力的一条边一条边的找干吗?此大牛的代码,感谢万分。

  检测直线、矩形、三角形、圆:http://www.4ucode.com/Study/Topic/1215847 

  鉴于工作内容不方便公布检测图像的结果,如果检测出来的形状过多,如矩形,可以选择只保留角度最接近正矩形的一个形状,另外形状的区域大小也可以帮助达到需要的检测结果。


  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值