Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 字符识别算法中消除冗余边界框的有效方法_Python_Algorithm_Opencv_Ocr - Fatal编程技术网

Python 字符识别算法中消除冗余边界框的有效方法

Python 字符识别算法中消除冗余边界框的有效方法,python,algorithm,opencv,ocr,Python,Algorithm,Opencv,Ocr,我正在研究如何同时应用不同的二值化算法来改进OCR系统中的字符分割。 本质上,我应用了许多不同的算法和不同的参数,并使用CCA分别从每个算法中提取候选斑点。其思想是,不同的算法检测图像中的不同字符,它们的组合应该产生更准确的结果。 输出如下图所示: 我现在想做的是在将候选区域发送到识别阶段之前消除冗余的边界框(类似于ML算法中的非最大抑制,除非我没有置信度分数)。有没有一种有效的方法不需要我迭代每一对可能的方框? 速度是一个重要因素,因为我正在使用Python,我希望它能够用于实时分析 本实验

我正在研究如何同时应用不同的二值化算法来改进OCR系统中的字符分割。 本质上,我应用了许多不同的算法和不同的参数,并使用CCA分别从每个算法中提取候选斑点。其思想是,不同的算法检测图像中的不同字符,它们的组合应该产生更准确的结果。 输出如下图所示:

我现在想做的是在将候选区域发送到识别阶段之前消除冗余的边界框(类似于ML算法中的非最大抑制,除非我没有置信度分数)。有没有一种有效的方法不需要我迭代每一对可能的方框? 速度是一个重要因素,因为我正在使用Python,我希望它能够用于实时分析

本实验基于以下文章: 车牌字符分割中二值化方法的最佳组合
作者:Yongwoo Yoon、Kyu-Dae-Ban、Hosub Yoon、Jaeyeon Lee、Jaehong Kim

那么,您实际上是在尝试对给定的边界框坐标进行快速聚类分析吗?类似的,是的。您所有的边界框大小是否相同(或大致相同)?因为如果是这样的话,你可以用每个盒子的中心点来表示,然后用PCA之类的方法来寻找冗余。事实上,你的主要任务是把这个问题简化成一个简单的聚类分析问题,然后你就可以问关于使用的最佳算法。。。这些部分框是否正确?它们是否应该被视为同一字形周围完整框的副本?因为如果你想把它们看成是与正确的重叠不同的话,那么我所提到的方法应该仍然有效,因为足够低的聚类阈值。@ NiayeshIsky:谢谢。事实上,如果等价阈值在整个图像中都不同,那么这种方法就不合适了(我本以为在这个应用程序中不会发生这种情况,但谁知道呢——OP在很多细节上都不清楚)。恐怕没有时间纠正一个适当充实的答案……那么,您实际上是在尝试对给定的边界框坐标进行快速聚类分析吗?类似的,是的。您所有的边界框大小是否相同(或大致相同)?因为如果是这样的话,你可以用每个盒子的中心点来表示,然后用PCA之类的方法来寻找冗余。事实上,你的主要任务是把这个问题简化成一个简单的聚类分析问题,然后你就可以问关于使用的最佳算法。。。这些部分框是否正确?它们是否应该被视为同一字形周围完整框的副本?因为如果你想把它们看成是与正确的重叠不同的话,那么我所提到的方法应该仍然有效,因为足够低的聚类阈值。@ NiayeshIsky:谢谢。事实上,如果等价阈值在整个图像中都不同,那么这种方法就不合适了(我本以为在这个应用程序中不会发生这种情况,但谁知道呢——OP在很多细节上都不清楚)。恐怕没有时间纠正一个适当充实的答案。。。
# Where each color represents the result of a different binarization algo and 
# all bboxes are stored in the same array in format (topleft, bottomright) 
boxes = [box1,box2,...,box_n]