是否有任何OCR引擎设计用于识别屏幕捕获图像中的文本而不是扫描文本?我有一个项目,我需要在应用程序中检索和识别文本,到目前为止我尝试过的OCR引擎都没有与截图相关.
理想情况下,引擎应该能够很好地处理颜色和背景噪音,尽管如果没有这样的话,我可以做一些补贴.
它需要与.NET兼容;用.NET编写或具有.NET可调用API.
解决方法
我发现
Tesseract OCR对于一个开源项目非常可靠.我发现它甚至可以读取和解码简单的验证码,比如Megaupload.我认为通过一些调整,这可以很好地工作.
唯一的痛苦是它只接受未压缩的TIFF图像,这可能很烦人.
编辑:Philip Daubmeier已经找到了.NET集成,但下面是将Bitmap转换为未压缩TIFF的代码.
private void ConvertBitmapToTIF(Bitmap convert) { ImageCodecInfo codecInfo = GetEncoderInfo("image/tiff"); System.Drawing.Imaging.Encoder encodeCom = System.Drawing.Imaging.Encoder.Compression; System.Drawing.Imaging.Encoder encodeBPP = System.Drawing.Imaging.Encoder.ColorDepth; EncoderParameters parms = new EncoderParameters(2); EncoderParameter param0 = new EncoderParameter(encodeCom,(long)EncoderValue.CompressionNone); EncoderParameter param1 = new EncoderParameter(encodeBPP,8L); parms.Param[0] = param0; parms.Param[1] = param1; convert.Save("output.tif",codecInfo,parms); }
这将保存到文件,但Bitmap.Save方法也可以写入流.