[英]Scan a image with emgu cv
所以我有一个用sobel方法处理过的图像,现在我需要提取该图像。
我的问题是如何从中线uo和下一行开始扫描图像,并且当边缘的数量小于60时,记录该坐标以裁剪图像。
有问题的图像是条形码,此方法仅适用于提取条。 问题是emgu cv的实现。
更新:
我正在遵循本文中介绍的方法: http : //bit.ly/HUWdcy
有关此问题,请参阅C.图像提取一章
检查cv::threshold
和cv::reduce
函数。
首先,请从您的边缘图像中创建一个二进制地图,条纹上为黑色,背景上为白色。
像这个小例子:
后边缘
1 70 0 0 85 128 99 0
1 70 0 0 85 128 99 0
1 70 0 0 85 128 99 0
1 70 0 0 85 120 99 0
1 74 0 0 85 138 99 0
1 80 0 0 85 128 99 0
1 72 0 0 85 128 99 0
后阈值
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
0 255 0 0 255 255 255 0
第二个函数可用于使用CV_MAX
或CV_SUM
或CV_AVG
在其尺寸之一上“投影”图像,并且条形码将存储在一行中
用SUM
进行reduce
示例:
0 1785 0 0 1785 1785 1785 0
现在,重新应用一个阈值:
0 1 0 0 1 1 1 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.