12

我正在使用 tesseract-ocr-3.01 扫描许多表格。表格都遵循模板,所以我已经知道文本的区域/矩形在哪里。

使用命令行工具时,有没有办法将这些区域传递给 tesseract?

4

2 回答 2

15

多亏了这个帖子,我找到了答案。

tesseract 似乎支持 uzn 格式(用于 unvl 测试)。

从线程:

使用参数“-psm 4”调用 tesseract 并用图像的相同名称重命名 uzn 文件似乎有效。

示例:如果我们有C:\input.tifand C:\input.uzn,我们这样做:

tesseract -psm 4 C:\input.tif C:\output
于 2012-10-23T13:52:23.147 回答
3

这可能不是最佳答案,但这里有:

我不确定命令行工具是否具有指定文本区域的选项。

您可以做的是在另一个平台上使用 Tesseract 包装器(EmguCV 内置了 Tesseract)。所以你得到扫描的图像,裁剪出文本区域,然后一次一个地把它们交给 Tesseract。这样,您还可以避免 Tesseract 的页面布局分析中的任何不准确之处。

例如。

Image<Gray,Byte> scannedImage = new Image<Gray,Byte>(path_to_scanned_image);
//assuming you know a text region
Image<Gray,Byte> textRegion = new Image(100,20);
scannedImage.ROI = new Rectangle(0,0,100,20);
scannedImage.copyTo(textRegion);
ocr.recognize(textRegion); 
于 2012-10-19T10:14:08.897 回答