我需要你的帮助。我正在尝试将图像中的电子邮件作为单独的结果以及它们各自的边界框。 Tesseract OCR不知何故不能将它们识别为单独的行,而是将它们作为单个结果返回。
电流输出-1块
Top: 182, Bottom: 512, Left: 533, Right: 852 -
BCF6CC517E7642BBB21AAF2068E54C28 - Test
D4852831D8CA439EB9D98B54629D1840 - Test
8DFFDO6FA3B44989B224DABDD9292B3E - Test
10E1D83F0D834000AF7BDSDEA48442E8 - Test
6FOA122825AA42159FDEESEBFFAC279B - Test
E719274DA1CE46ADASBDB659812ED684 - Test
ES18EE9D7D7B4AA3ABAT81523F748B24 - Test
?0304b4b-ba1d-4897-8ebe-20bcc3930201 - Test
2ebad2h1-c385-4d84-96c7-bc9082141e1c - Test
所需的输出-每个GUID多个块
Top: 182, Bottom: 210, Left: 533, Right: 852 -
BCF6CC517E7642BBB21AAF2068E54C28 - Test
Top: 210, Bottom: 230, Left: 533, Right: 852 -
D4852831D8CA439EB9D98B54629D1840 - Test
Top: 230, Bottom: 250, Left: 533, Right: 852 -
8DFFDO6FA3B44989B224DABDD9292B3E - Test
...
我尝试了大多数OcrEngineMode和PageSegmentationMode。 没有正确解决。 我还将图像从96 DPI缩放到300 DPI。没有帮助。 另外,我浏览了文档,找不到解决方案。
我正在使用Tesseract 4
提前感谢您的时间和帮助。
答案 0 :(得分:1)
遍历结果时,应将PageIteratorLevel设置为
RIL_TEXTLINE ,以便可以将结果段落拆分为单独的行。
var resultIterator = tessBaseAPI.GetIterator();
var pageIteratorLevel = PageIteratorLevel.RIL_TEXTLINE;