使用OCR识别上标字符

4
我开始了一个简单的项目,它必须获取一个包含上标文本的图像,然后通过OCR(目前我正在使用tesseract)识别上标字符和普通字符。
例如,我们有一个化学方程式,如Cl²,但当我使用tesseract进行识别时,它会给我Cl2(全部在一行上)。
那么,这个问题的解决方案是什么?是否有其他OCR API能够阅读上标?
1个回答

4

这是一个非常好的问题,涉及到任何OCR系统更高级的功能。

首先,要确保您没有忽略OCR系统中可能存在的功能,请查看结果测试不是以纯文本格式,而是以某种支持富文本的查看器。例如Windows上的记事本等TXT查看器通常不支持上标/下标字符,因此即使OCR给出了正确的字符,您的查看器也可能将其转换为显示它。如果您以编程方式访问文本结果,则这个问题较小,因为您应该在直接访问时获得适当的下标字符值。只需注意,查看器必须支持它,您才能真正看到它。如果您消除了这种可能的后处理转换,并确保OCR未返回下标,则它可能不支持它。

就像在这个文本框中一样,在您的原始问题中,您试图给我们提供一个上标字符示例,但是即使您可以从其他地方复制/粘贴它,这个文本框也不接受它。

许多OCR将下标视为任何其他普通字符(如果它们能够看到它)。您使用的OCR需要具备实际生成上标/下标的技术能力,许多OCR系统都有这种能力,但不出所料,它们往往是商业OCR系统。

在回复这封信之前,我制作了一个小的测试用例。我生成了一张带有一些上下标示例的图片进行测试(当然EMC2是我想到的第一个例子 :) 。
您可以在这里找到我的测试图片: www.ocr-it.com/documents/superscript_subscript_test_page.tif

然后通过 OCR-IT OCR Cloud 2.0 API处理这张图片,使用所有默认设置,但导出为富文本格式,如MS Word .DOC。

您可以在这里找到我的测试结果: www.ocr-it.com/documents/superscript_subscript_test_page_result.doc

另外需要注意:如果您有兴趣提取上标/下标字符,请特别关注图像质量,比正常文本更加重要。这些字符很小,您需要足够的细节和分辨率才能实现良好的OCR质量。即使以300 dpi的分辨率扫描图像,由于像素过少,有时也会出现处理小字符的问题。如果您考虑使用移动设备和数字相机,则更加重要。
声明:我的专业是为不同规模公司实施内部OCR解决方案。我的公司是 WiseTREND。如果有任何需要协助的地方,请直接联系我。

我发现你提到的链接现在无法使用,没有内容。如果你能给我提供一个联系的空间,我想和你谈谈这个问题。 - Arpit Goyal
Arpit,是的,链接随着时间的推移已经失效了。我会尽力在有时间的时候进行恢复。如果您可以直接联系我,可能会更容易些,我的邮箱是ilyae@wisetrend.com,电话号码是510 754 9866。我会尽力帮助您解决具体问题。 - Ilya Evdokimov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接