hough transform java,opencv:在矩形检测中使用轮廓和Hough变换

我试图使用不同的方法检测灰度图像中的白色矩形:轮廓检测和霍夫变换 . 不幸的是,我正在处理的图像有一些限制,即

图像中有许多功能,矩形不是唯一的功能

矩形可以合并到其他要素(例如,其中一个矩形边可以与长直线重叠)

矩形可能包含一些其他功能(例如矩形内的字母,数字或某些徽标)

有些特征看起来像矩形(例如,字符'D'看起来像一个矩形,右上角和右下角有一个小弧形;另一个例子是梯形而不是平行四边形)

矩形可以顺时针和逆时针旋转0到15度

有可能在不同的光照条件下(例如1个像素间隙)将线分成几行,因此过滤线的最小线长必须很小(例如在Hough变换中)

当最小行长度设置为较小值时,更常见的是在不同方向上查看同一行的重复行(即需要组合多行)

对于contonours方法,一些图像的轮廓被打破 . 此外,图像可以包含诸如矩形之类的特征(例如字符“D”) . 我不确定这是不是一个好方法 .

我看过许多文章/论坛建议使用Hough变换检测矩形,如下面的帖子 . 不幸的是,我必须设置最小行长度的小值,并看到重复的行 . 我不知道如何处理上面提到的几点(例如,组合所有重复的行并为每个边选择一行,如何区分大多数部分的特征是线但是像'D'那样的小弧,以及如何隔离正方形,其中一条边与一条长直线合并,等等 .

欢迎任何建议!

EDIT: Add some pictures

08422d73-df17-48e9-bd43-6e89c778979b.png

Character D

1d2b37c7-7179-4adb-84e5-b5dcc50d9a90.png

Rectangle with logo and the edges are merged with long straight line

e71e5009-e902-4cc7-b408-02bc3ad4ad48.png

Trapezoid (with shadow on the top forming trapezoid in the bottom)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值