求个能命令行导入图像后OCR并排显示的工具

求个能不驻留内存的支持命令行导入图像后自动OCR显示图像和文本的,像 Snipping_OCR 或者 Umi-OCR 那样的 https://github.com/sangyuxiaowu/Snipping_OCR


不知道有没有大神能撸个更高级的,像是使用 Screenpresso.exe capture --action ScreenshotRegion --filepath "G:\output.png" --quit 命令执行后将图像导入到 ABBYY FineReader\FineCmd.exe G:\output.png" /lang ChinesePRC English /out %userprofile%\Desktop\result.txt /quit" 最后并排显示 G:\output.png %userprofile%\Desktop\result.txt 的工具

格式不符合,我给你修了;发帖不要发到小问答里面,发到公开版面,下次注意。

虽然哪怕我给你修了也还是看不懂你在讲啥,烦请分拆问题以便理解。

例如:

  1. 我希望用命令行导入一个XX样子的图像到哪里
  2. 如何让两张图片并排显示
  3. ……

目前我的解决方案是:

  1. ……
    ……

有哪些不完美的地方:
……

好的,谢谢。

这个需求源自摘录网络图片或者软件界面中的文本遇到的几种情况:

1.把浏览器中的一张图片拖拽到桌面,再从桌面拖拽到能够处理命令行导入的图像程序中。
2.有些需要的文字在一幅图的极小部分,截图OCR效率更高。
3.浏览器中限制复制的文本在网址前面加了read://可以复制了。
4.应用程序中的文本,使用软件GetWindowText或者Textify获取到文本,部分不能获取到文本的只能截图OCR,和第二种一样的解决办法

第一种情况,拖拽到目标程序OCR体验过以下几个:
ABBYY FineReader OCR 16:自动识别,质量非常好,对照编辑,识别速度很慢。
Foxit PDF Editor 2024:一步识别、质量很好,无对照编辑、识别速度一般
gImageReader 3.4:一步识别、质量一般,对照编辑、识别速度一般。
PDFelement 10:一步识别、质量很好,无对照编辑、识别速度一般。
PDF-XChange Editor 10:一步识别、质量很好,无对照编辑、识别速度一般。
**Readiris 17:一步识别,质量很差,对照编辑,识别速度很慢。
Text-Grab 4.4:自动识别,质量一般,无对照编辑,识别速度一般。

其他不支持拖拽到程序图标的,需要在识别前打开程序窗口,或者从托盘程序图标菜单中找命令,交互明显慢些,识别速度稍微快点(因为程序在内存中了),这类程序的全局快捷键有时在冲突问题就。

第二种情况,截图后文字识别体验过以下几个:
ABBYY Screenshot Reader 16:后台二步识别,质量非常好,对照编辑,识别速度很慢。
Ashampoo Snap16.0.2:后台三步识别,目前中文识别有问题,对照屏幕编辑,识别速度一般。
Captain2Text 4.6.3:后台热键交互特别,质量一般,无对照编辑、识别速度一般。
eSearch 1.11.0: 后台一步自动识别,质量很好,无对照编辑、识别速度慢。
HyperSnap 9.4:二步识别,目前识别有问题,无对照编辑、识别速度一般。
PDFelement CaptureTool 10:一步识别,质量非常好,对照屏幕编辑,识别速度很慢。
PixPin 1.8.0:后台二步识别,质量很好,无对照编辑、识别速度快。
pot 2.7.9:后台二步识别,质量很好,对照编辑、识别速度快。
QQScreenShotNT Plus 2.1:后台二步识别,质量很好,对照编辑、识别速度快。
Screenpresso 2.1.23.0:三步识别,质量一般,无对照编辑、识别速度一般。
ShareX 16.0.1:后台一步识别,质量一般,无对照编辑、识别速度快。
Snipping_OCR 1.3:后台二步热键识别,质量很好,对照编辑、识别速度很快。
SnippingTool :热键三步识别,质量一般,无对照编辑、识别速度很快。
STranslate 1.0.8.313:后台二步识别,质量很好,对照编辑、识别速度快。
TechSmith Snagit 2024:后台二步识别,不支持中文,编辑窗口、识别速度慢。
Text-Grab 4.4:一步识别,质量一般,无对照编辑、识别速度快。
Umi-OCR 2.1.0:后台二步识别,质量很好,对照编辑、识别速度快。
YoudaoDict:二步识别,质量很好,对照翻译编辑、识别速度快。

以下是可通过截图后自动发送到OCR程序的:

Ashampoo Snap16.0.2:三步发送,截图体验好。
FastStone Capture 10.4:二步发送,滚动截图优秀
MiniCap 1.40.0.1:命令行一键发送,截图体验一般。
PicPick 7.2.8:三步发送,滚动截图优秀。
Screenpresso 2.1.23.0:三步截图发送,截图方式很优秀
Screenshot Captor 4.43.0:命令行一键发送,截图体验一般,功能强大。
Snipaste 2.x:命令行一键发送并用记事本打开文本,无对照编辑,截图体验一般
SPX Instant Screen Capture 7.0:二步发送,截图方式很优秀
WinSnap 6.1.2:三步发送,截图体验一般。

以上各有优缺点特点,我发的求助实际是求推荐两个小工具:

第一个求的是直接拖动到程序图标可快速高质量自动OCR的程序。
第二个求的是串起个性化工作流的辅助工具。
下面第一步是截图体验很好很快,第二步是OCR速度质量都很好,最后一步要同时显示图像文本文件并且文本可编辑。
Screenpresso.exe capture --action ScreenshotRegion --filepath "G:\output.png" --quit

FineReader\FineCmd.exe G:\output.png /lang ChinesePRC English /out %userprofile%\Desktop\result.txt /quit

并排显示G:\output.png%userprofile%\Desktop\result.txt

1 Like

目前Screenpresso一步无后台的截图OCR方案:
写个ps1用Ps1ToExe转成隐形控制台exe。Ps1内容:

.\Screenpresso.exe capture --action ScreenshotRegion --filepath .\Medias\output.png --quit | Wait-Process
支持处理命令行导入的图像OCR程序名称.exe .\Medias\output.png

上面的最后一行可参考的内容:
 Tesseract-OCR引擎 ..\gImageReader\bin\gimagereader-qt5.exe .\Medias\output.png

 PaddleOCR引擎 ..\Snipping_OCR\Snipping_OCR.exe .\Medias\output.png

 ABBYY引擎 ..\ABBYY FineReader\finereaderocr.exe .\Medias\output.png

Snipping_OCR 1.3.5 新增了支持处理命令行导入的图像功能,还有capture参数启动直接一步使用系统截图工具截图OCR。

FastStone Capture 10.5 新增了文字识别和屏幕贴图功能!!!

真的假的?没有看到官网发布新版本啊

这个并排显示图片和识别文字白描就可以,但是它不是命令行的上界面的而且一次就能50张,但是效果不错

HyperSnap 9.5.1 修复了每次程序重启会删除 Tessdata-OCR 文件的问题。但中文OCR质量不忍直视,不如轻便的FastStone Capture 10.5 新增的 Windows 系统自带的OCR识别质量。
但是这两者都还没有国产的 识字精灵质量好,识字精灵速度特别快,不知道用的哪家引擎……要是基于此引擎开发个支持处理命令行导入的图像功能,还有可启动即直接使用系统截图工具截图OCR就比较理想了。

试了下这个精灵不太行哈哈

@cngych FastStone Capture 10.5 自带的OCR是不是调用系统的,所以Windows 7上没有?

@zjmwlp 5月22日发布,现在可下载。

貌似这个只支持中英文识别吧,体积在那,要多语言我会用ABBYY和Tessdata-OCR这两个本地引擎的外加个QQScreenShotNT-Plus。在线就用YodaoDict 和 bzOCR支持中/英/日/韩/法/西/德/意/葡/俄/泰/越等24种语言自动识别,在线比本地的优势是不需要选择语种。

是的

这个引擎我觉得识别率有点低,还不如Umi-OCR。

Umi-OCR是本地的这是前端,以插件模式用以下几种引擎:百度的PaddleOCR / 基于前面精简优化的RapidOCR 这两对中英文混排识别比较有优势。TesseractOCR也可以用的。

TesseractOCR识别的语种多些。TesseractOCR还是很值得期待的,自带的tesseract.exe支持命令行操作,使用方便快速。比如我这样用,写个ps1转成exe:

$slashStyle = $args[1] # Windows or Linux slash
$path = $args[0]

C:\Program Files\Tesseract-OCR\tesseract.exe $path  %userprofile%\Desktop\result -l chi_sim

把图片拖到这个程序图标就可以自动OCR写到桌面的result.txt中了

Win11系统自带的OCR引擎,以后优化好了都会好起来的,但是不支持命令行操作的程序不够Fast

对,我当时用的Tesseract就是本地命令行版本,感觉识别率不够高,库更新缓慢。