我正在尝试从命令行使用tesseract在打开的窗口的内容上运行OCR。特别是我愿意阅读键入当前打开的记事本窗口的文本。
我在这里阅读了文档和维基:http://code.google.com/p/tesseract-ocr/w/list
但我在这个项目中没有找到任何帮助我的东西,我还在这里搜索了类似的问题(有很多关于OCR的东西),但似乎没有什么工作/适用于我的情况。
可行吗?
我主要是一个PHP编码器(编码只是为了好玩)而且没有非网络语言的经验。
提前致谢。
答案 0 :(得分:2)
Tesseract旨在将TIFF图像作为输入,对Windows或屏幕设备上下文一无所知。因此,您需要添加代码以找到记事本窗口的窗口句柄,执行屏幕捕获并根据Windows报告的当前窗口大小剪切窗口,并将生成的图像保存到文件中。这个图像很可能是黑白的,这样可以更容易进行OCR,因为我怀疑Tesseract 2.0只适用于黑白图像。下一个问题是Tesseract由于源图像的DPI(分辨率)低而导致结果不佳。
要评估您的方法的适用性,我会通过打开记事本,截屏,在MSPaint中打开屏幕截图,剪切您要OCR的文本,将剪切的图像保存为TIFF或BMP并发送此文件来执行一些手动测试到Tesseract。如果结果不如您所期望或期望的那样,这可以为您节省大量时间和精力。