如何从easyocr获得干净的输出

Posted

技术标签:

【中文标题】如何从easyocr获得干净的输出【英文标题】:How to get clean output from easyocr 【发布时间】:2021-12-04 22:41:36 【问题描述】:

这是来自 opencv+easyocr 车牌识别脚本 opencv 将图像裁剪为车牌,并为 easyocr 提供干净的输出。但是这些数字是什么意思

result = reader.readtext(opencv(mypath))

结果:[([[0, 0], [163, 0], [163, 31], [0, 31]], 'SPHJ > 3764', 0.5565279612963627)]

我知道我可以通过这个获得干净的输出,但问题是它因图片而异。 有没有办法只拿到车牌

result = result[0][-2]

结果:SPHJ > 3764

【问题讨论】:

【参考方案1】:

作为stated in the docs:

输出将是一个列表格式,每个项目代表一个边界 框,分别检测到的文本和置信度。

是文本所在框的坐标。最后一项是置信度。

[[0, 0], [163, 0], [163, 31], [0, 31]] -> 4 的坐标 角落 'SPHJ > 3764' -> 正文 0.5565279612963627 -> 置信度

只需使用result[0][1] 即可获取文本。注意,结果可能检测到多个文本框,因此您需要按索引访问或遍历它。

for item in result:
    print(item[1])

【讨论】:

所以我需要像这样运行一个循环来 result[0][1]->result[1][1] 但是我怎么知道“如果”输出有 2 或更多地点 我编辑了答案以包含循环示例。 谢谢,这很有帮助

以上是关于如何从easyocr获得干净的输出的主要内容,如果未能解决你的问题,请参考以下文章

EasyOCR简单实用

EasyOCR简单实用

从数据库中导出 XML 文件并在实际列之前获得没有任何属性的干净格式

如何用corstarsl()函数实现干净的相关表输出?

PHP - 从请求中生成干净的 TXT 输出

msvc2010 - 如何建立一个干净的输出目录?