如何通过webcome从灰度屏幕阈值图像

时间:2015-08-23 16:37:43

标签: opencv computer-vision

我的挡风玻璃上有这样的图像

enter image description here enter image description here

我已经尝试过识别thoose线,但是丢失了因为所有滤镜都无法识别线条。 有什么想法,我用它来获得黑色和白色,至少有一些需要的线条?

典型的检测结果如下: enter image description here

我需要检测数字边缘,几乎任何设置都无法识别接缝。

1 个答案:

答案 0 :(得分:0)

这并没有为您提供有关如何使用opencv解决图像处理问题的完整指南,但它包含一些可能有助于您实现目标的提示和观察。我选择的武器是ImageMagick,它安装在大多数Linux发行版上,可用于OS X和Windows。

首先,我注意到您在顶部有日期和时间,并且右下角没有正确裁剪 - 这些无关的像素会影响对比度延伸,所以我将它们裁剪掉。

其次,我将您的图像分为3个通道--R,G和B,然后查看它们。 R和B通道非常嘈杂,所以我可能会使用绿色通道。或者,如果你进入HSL模式并丢弃色调和饱和度,亮度通道是非常合理的。

convert display.jpg -separate channel.jpg

<强>红色

enter image description here

<强>绿色

enter image description here

<强>蓝

enter image description here

现在制作直方图以查看色调分布:

convert display.jpg -crop 500x300+0+80 -colorspace hsl -separate -delete 0,1 -format %c histogram:png:ahistogram.png

enter image description here

现在我可以看到你的所有数据都在直方图的黑暗左侧,所以我做了一个对比度拉伸和一个中值滤波器来消除噪音

convert display.jpg -crop 500x300+0+80 -colorspace hsl -separate -delete 0,1 -median 9x9 -normalize -level 0%,40% z.jpg

enter image description here

获得黑白的最终门槛......

convert display.jpg -crop 500x300+0+80 -colorspace hsl -separate -delete 0,1 -median 9x9 -normalize -level 0%,40% -threshold 60% z.jpg

enter image description here

当然,您可以使用数字和级别进行讨论,但可能会有一些想法可以在OpenCVImageMagick中进行开发。