Emgu OpenCV:根据文本形式应用不同的阈值[sharp / bold]

时间:2014-03-29 13:12:15

标签: c# c++ opencv ocr emgucv

我想预处理扫描的图像以对其进行一些OCR。我的问题是当我应用一个给定的阈值来消除噪音时,粗体文字会变得清晰,但文本的其余部分会消失。

CvInvoke.cvThreshold(img, img, 80, 255, THRESH.CV_THRESH_BINARY);

enter image description here

CvInvoke.cvThreshold(img, img, 120, 255, THRESH.CV_THRESH_BINARY);

enter image description here

我问是否有办法根据文字形式应用不同的阈值?

1 个答案:

答案 0 :(得分:1)

正如有人建议的那样。我认为你宁愿均衡你的形象,只是为了提取边框。

我会首先反转颜色,然后使用EqualizeHist,它可以让你的文字更暗,并使背景变亮。

之后,您想要提取边缘。我会在两个阈值之间保持2:1或3:1的比例时应用Canny,然后相应地增加/减少它们,直到我看起来很好。