如何框选出图片中的条形码

木头木木头 2013-06-25 12:29:17
最近在写一个自动框选的功能,要求在一张有一定背景的图片中框选出可能存在的条形码,不要求识别出条形码,但要能快速判断出图片中是否存在条形码。我一直想不到好的解决方案,想到用blob提取,但是一般的一维条形码并不是一个连通域,无法做到整体框选。请教各位大牛能不能给一点思路或者建议,关于图像处理方面的。被这个事情搞得头大了,主要是没有好的思路,希望有人能指点迷津,非常感谢!
...全文
614 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
木头木木头 2013-08-11
  • 打赏
  • 举报
回复
总的来说采用边缘检测+分块统计的方法,总的来说效果还不错了。已经可以检测到条码大致区域,下一步还需要对倾斜角度进行修正。当然还需要一些去噪和排除不可能区域的算法。但缺点是对条码的缩放有点敏感,条码过大或者扫面的DPI设置很高的时候检测不出来
昨夜无风 2013-07-25
  • 打赏
  • 举报
回复
可以先分块,再处理; 比如先把图像按比例分成四块,再在每块里面进行检测,应该更简单些!
rabbitjerry 2013-07-25
  • 打赏
  • 举报
回复
radon变换
nbeleven11 2013-07-24
  • 打赏
  • 举报
回复
同是天涯沦落人呀,正头疼呢,请问现在你打算采用什么方法涅?谢谢!
长尾巴的悟空 2013-07-22
  • 打赏
  • 举报
回复
可参考如何读取条形码,因为扫描的时候,扫描枪扫别的时候没有反应,而扫到条形码的时候,就会自动输入所代表的数字,因此照着这个思路下去,应该是没有问题的。
timidsmile 2013-07-22
  • 打赏
  • 举报
回复
背景这么复杂,条形码看起来就没有很大特征了呢。。。 这么大的图像,扫描一遍也需要不少时间吧。。。 如果分块处理的话,块跟条形码差不多(反正条形码都是竖线下来的,也不需要 step++ ,直接把图像分成N个块处理),如果在这个小块内 检测到 好多好多条 直线, 是不是就可以判断它是了呢?
wwwspider001 2013-06-27
  • 打赏
  • 举报
回复
我想到的也是Hough变换检测直线 期待有更好的思路啊 如果条码基本都是垂直的 也就是倾角不大的情况下 还有一种更简单的思路 直接采用横线扫描的办法 记录连续近距离开关变化的区域 应该也八九不离十
libralibra 2013-06-27
  • 打赏
  • 举报
回复
结合楼主贴的图,我不觉得hough检测直线可行.毕竟页面太乱,另外hough检测的时候需要有阀值,如此多的文字和线段及其他噪点,二值化后会极大的干扰检测效果. 楼主你需要考虑几个问题: 1.条码图像是否有倾斜?有没有差别很大的 2.原图像的分辨率如何? 3.是否有粗筛的办法快速删除噪声区域(肯定不是条码的区域) 1和2需要好好考虑下,决定了你可以采用的办法.3估计可能性不大,因为如果能快速删除无关区域,说明对条码区域的特征有先验知识,而这正是你的需求.
木头木木头 2013-06-26
  • 打赏
  • 举报
回复
引用 1 楼 libralibra 的回复:
贴几个示例图片看看.

,只要定位框选出就行,非常感谢!
木头木木头 2013-06-26
  • 打赏
  • 举报
回复
引用 3 楼 libralibra 的回复:
这个背景太复杂了,不好办.关键是文字太多,跟条码面积相当,又全是单色,要是彩色的还能考虑色彩判别.
不管怎么样还是谢谢你。我打算用Hough变换检测直线,再结合一些其他特性试试看。哎,这种对人这么简单的事对计算机怎么就都这么麻烦呢,哈哈……
libralibra 2013-06-26
  • 打赏
  • 举报
回复
这个背景太复杂了,不好办.关键是文字太多,跟条码面积相当,又全是单色,要是彩色的还能考虑色彩判别.
libralibra 2013-06-25
  • 打赏
  • 举报
回复
贴几个示例图片看看.

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧