图像扫描及 OCR 技术开发 SDK - Asprise
今天在项目中应用到了扫描仪,需要通过扫描仪来扫描并传输一张图片以供程序使用。Java 对于扫描仪硬件的控制没有像 C++ 那样灵活,同时这方面的类似应用也相对较少。但作为一种拥有最多第三方库且体系相当成熟的的开发语言,这并不会成为一个难题。
“http://asprise.com” 是一个致力于研究在各种平台实现 OCR 技术及扫描仪传输技术的网站。它成立于1998年,已经有了17年的历史,同样也积累了很多非常优秀的 OCR 及相关技术的开发 SDK 资源。对于在 Java 中使用扫描仪这个功能,我选择了网站提供的 “Asprise Scanning and Image Capture SDK“” 来进行开发。
Asprise 已经将扫描仪的功能接口封装成在了 jar 包中,只需要将 jar 包导入到工程,再添加一行代码,便可以实现从扫描仪扫描一张图片并传输给当前应用程序的功能。示例代码如下所示。
File[] fs = ScanManager.getDefaultManager().quickScanUsingUI(new File("."), null);
这行代码会启动一个系统的扫描仪设置界面,在设置完毕后点击扫描即可将扫描得到的图像以 File 数组的形式返回。而对于 File 数组的后期处理过程就可以自由发挥。比如保存成一张图片,或者使用 OCR 技术提取页面的文字内容等等。
除此之外,封装好的 jar 包几乎可以兼容任何常见类型的扫描仪,同时还可以可以在应用程序中获得对应的扫描仪对象,以进行更加深入的参数设置。不仅如此,它也可以应用于 Java Web 程序中,或者网站的 Applet 应用中。
不过唯一有点遗憾的是,它并不是一款免费的第三方库。但好在价格并不贵,相对于其不错的封装性和易用性,这个价格还是很值得关注的。
评论 | Comments