Tesseract OCR 未正确将文本拆分为不同的结果集

Tesseract OCR not splitting text into different result sets correctly

我需要你的帮助。我正在尝试将下面图像中的电子邮件作为单独的结果及其边界框分别获取。不知何故,Tesseract OCR 无法将它们识别为单独的行,并且 returns 将它们识别为单个结果。

当前输出 - 一格

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

提前感谢您的宝贵时间和帮助。

迭代结果时,您应该将 PageIteratorLevel 设置为
RIL_TEXTLINE 这样它就可以将结果段落分成单独的行。

  var resultIterator = tessBaseAPI.GetIterator();

  var pageIteratorLevel = PageIteratorLevel.RIL_TEXTLINE;