在OpenCV的复杂背景中使用Tesseract检测文本
我想用OpenCV中的Tesseract检测复杂背景中的文本,比如这个背景。我应该怎样做这项工作 请参阅的答案。答案引用了一篇描述如何以独立于背景的方式识别文本的文章 T.Kasar、J.Kumar和A.G.Ramakrishnan在论文中描述的算法以及Jason Funk实现的算法包括多个阶段。在第一阶段,使用Canny对每个通道(R、G、B)执行边缘检测。然后使用按位_或将这些边组合成灰度图像 接下来,我们找到轮廓线。关键点是字母的轮廓及其边界框遵循一定的规则(例如,轮廓是闭合的,纵横比是合理的,边界框不是太大(页面大小)或太小(像素大小),可能的内部边缘数是已知的——大多数字母为0,1表示“o”,2表示“8”和“B”)。因此,您可以筛选边界框,并保留那些遵循规则的边界框。但是,每条边生成两个轮廓,一个在外,一个在内。我还是不确定我的逻辑是否正确 在任何情况下,您保留的框都围绕着字母及其内部空间。前景强度只是通过跟踪与源图像中长方体相关联的轮廓轮廓而获得的平均强度。背景强度是对源图像中边界框四个角周围的像素进行采样时得到的中值强度。若前景强度小于背景强度,则前景颜色为黑色;否则,前景色为白色。请记住,这是为每个边界框完成的 因此,对于每个边界框,我们根据源图像中每个像素的强度与该边界框的前景强度的比较来为结果着色。基于该比较,像素被确定为前景或背景的一部分在OpenCV的复杂背景中使用Tesseract检测文本,opencv,ocr,tesseract,Opencv,Ocr,Tesseract,我想用OpenCV中的Tesseract检测复杂背景中的文本,比如这个背景。我应该怎样做这项工作 请参阅的答案。答案引用了一篇描述如何以独立于背景的方式识别文本的文章 T.Kasar、J.Kumar和A.G.Ramakrishnan在论文中描述的算法以及Jason Funk实现的算法包括多个阶段。在第一阶段,使用Canny对每个通道(R、G、B)执行边缘检测。然后使用按位_或将这些边组合成灰度图像 接下来,我们找到轮廓线。关键点是字母的轮廓及其边界框遵循一定的规则(例如,轮廓是闭合的,纵横比是合
我认为方法是合理的,但细节有点棘手 根据一位评论员的建议,我对原文进行了扩展。