图像二值化效果对比_emgucv/大津法/迭代法

       图像二值化应该可以提高Tessnet对图像的识别率,因此我尝试先对一些模糊化的图像进行二值化,期望二值化后的图片黑白分明,前景完整清晰,以协助Tessnet更好的辨识图片中的内容。本文对比了大津法,迭代法,emgucv的cvSmooth,cvThreshold,cvCanny等方法二值化的效果,先看验证图。

       由上图可知,经典的大津法与迭代法,或者滤波+Canny边缘检测(当然,这很有可能是我参数设置的不合适)都无法将对比度低的图片执行完美的二值化。下面提供我的验证代码,请各路高手评判。

1.Emgu的cvSmooth/cvThreshold/cvCanny等函数验证源代码

如上图中所述,cvThreshold有7种二值化方法,但需要设置2个参数,我没有仔细去研究这些参数该如何设置,但我用了同样的参数去验证了每一种方法,其中OTSU是表现最好的一种。

总的来说,Emgu中的二值化与图像滤波函数很全面,但是需要设置参数这一点大大降低了其亲和力,因此这些函数我只是浅尝辄止。

2.大津法与迭代法源代码

   这两种方案的原来码来源于http://www.firstsolver.com/wordpress/?p=1014(原链接已失效),非常感谢原作者清晰整洁的代码,让我初步了解了图像处理的基本原理,我这里就不再搬运了,有兴趣的同学可以前往原博客瞻仰。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Fork me on GitHub