ocr - 为什么 Tesseract 会因此图像出现“空页”而失败?
问题描述
我有以下屏幕截图:
在这种情况下,我想从该图像中提取手稿字数3.574
(见下面的红色矩形)。
为此,我运行以下脚本:
magick screenshot.png -crop 33x20+2+83 screenshot-cropped.png
tesseract screenshot-cropped.png screenshot-ocred -l eng
第一行删掉了字数的地方并保存在screenshot-cropped.png
其中,如下所示:
tesseract screenshot-cropped.png screenshot-ocred -l eng
应该识别字符并将它们保存为screenshot-ocred.txt
.
但是,它会产生以下错误:
C:\usr\dp\ref\marcomm\2020_04_22_wordCounter>ocr.bat
C:\usr\dp\ref\marcomm\2020_04_22_wordCounter>magick screenshot.png -crop 33x20+2+83 screenshot-cropped.png
C:\usr\dp\ref\marcomm\2020_04_22_wordCounter>tesseract screenshot-cropped.png screenshot-ocred -l eng
Tesseract Open Source OCR Engine v5.0.0-alpha.20200328 with Leptonica
Empty page!!
Empty page!!
我该如何修复它,即让 Tesseract 识别3.574
并保存它screenshot-ocred.txt
?
注意:所有这些都在 Windows 上运行。这是输出magick --version
:
C:\usr\dp\ref\marcomm\2020_04_22_wordCounter>magick --version
Version: ImageMagick 7.0.10-7 Q16 x64 2020-04-20 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2018 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Visual C++: 180040629
Features: Cipher DPC Modules OpenCL OpenMP(2.0)
Delegates (built-in): bzlib cairo flif freetype gslib heic jng jp2 jpeg lcms lqr lzma openexr pangocairo png ps raw rsvg tiff webp xml zlib
解决方案
添加--psm 7
到 Tesseract 调用解决了问题 ( tesseract screenshot-cropped.png screenshot-ocred -l eng --psm 7
)。
推荐阅读
- url - URL Rewrite 两种不同的场景
- c# - g.Graphics.drawstring() 在 C# 中从右到左对齐
- javascript - 使用 JavaScript ES6 迭代器转换数组
- gcc - 在 Clang/LLVM x86-64 内联汇编中,我怎么说我破坏了 x87/媒体状态?
- algorithm - 使用嵌套哈希表解决这个练习问题是否有效?
- c# - 自定义 C# .Net 标准项目模板以仅限制 c# 文件
- hdl - AHDL dff 重置为其默认值
- angular - 输入类型=“数字”不能以角度形式工作
- r - 附加到文件夹中的文件名
- unity3d - DEP6953:无法启动远程调试器