2024-07-04 08:45:57 发布
网友
我有一个图像,我正在使用googlevisionapi执行OCR,我得到一个包含每个单词的多边形顶点的结果。绘制多边形后,图像如下所示。。 我现在要合并水平对齐的框。例如:(销售商品),(S000828749 MB短裤12.00),…,(小计146.00)
我尝试过的东西: 我从垂直边的中点画了一条线,然后把它延伸到图像的边缘,计算出这条线接触了多少个多边形,并用与直线相同的颜色对多边形进行了颜色编码。我得到了这样的图像。 不知道如何继续并在单行线上获取组。。在
通过以下方法解决了这个问题。 1每个方框都有一个标签列表,这些标签被初始化为[]。 2按x坐标对方框进行排序。 三。将tad初始化为0。标签只是单独的标识符,我们的目标是用相同的标签在同一行上分配方框。 三。迭代每个方框。 4如果标记列表为空,则递增标记值并将其附加到该框的标记列表。 5迭代外部框的所有框,并将相同的标记分配给外部框的轴线所接触的每个框。 6如果标记列表不为空,则取标记列表中出现的最大标记。 这是N^2算法,其中N是盒子的数量。在
通过以下方法解决了这个问题。
1每个方框都有一个标签列表,这些标签被初始化为[]。
2按x坐标对方框进行排序。
三。将tad初始化为0。标签只是单独的标识符,我们的目标是用相同的标签在同一行上分配方框。
三。迭代每个方框。
4如果标记列表为空,则递增标记值并将其附加到该框的标记列表。
5迭代外部框的所有框,并将相同的标记分配给外部框的轴线所接触的每个框。
6如果标记列表不为空,则取标记列表中出现的最大标记。
这是N^2算法,其中N是盒子的数量。在
相关问题 更多 >
编程相关推荐