实践一下使用aspose.ocr来识别发票
aspose.ocradmin 发布于:2024-12-10 14:27:41
阅读:loading
OCR识别我一直认为是门好东西,最近几天aspose.ocr组件升级了24.11.1的版本,经过尝试发现这个版本较之于前面的版本对中文的支持不可谓不好,实属非常棒,所以在使用它编写了对车牌号的识别后,又趁热打铁来实践一下aspose.ocr的发票识别,识别的结果仍然是非常好。
本篇文章对于aspose.ocr图片识别发票的示例实践,笃定你对aspose.ocr已经有了一定的了解,或者也看到过本站此系列的其他相关文章,所以直接上示例素材、示例代码、示例结果,详细如下。
(第1张)
(第2张)
(第3张)
(第4张,有打码)
(1)总共找了4张发票素材,大概4种风格的,分别是停车场缴费发票、公交卡充值发票、出租车打车发票、网约车打车发票;
(2)上图中红色文本是扫描出的结果;
public void test() throws Exception {
System.out.println("License.isValid() = " + License.isValid());
//Resources.FetchAll();
final List<String> list = Resources.ListLocal();
System.out.println("list = " + list);
AsposeOCR ocr = new AsposeOCR();
OcrInput input = new OcrInput(InputType.SingleImage);
input.add(URLDecoder.decode(getClass().getResource("/invoice/invoice111.jpg").getPath() , StandardCharsets.UTF_8.name()));
input.add(URLDecoder.decode(getClass().getResource("/invoice/invoice222.jpg").getPath() , StandardCharsets.UTF_8.name()));
input.add(URLDecoder.decode(getClass().getResource("/invoice/invoice333.jpg").getPath() , StandardCharsets.UTF_8.name()));
input.add(URLDecoder.decode(getClass().getResource("/invoice/invoice444.jpg").getPath() , StandardCharsets.UTF_8.name()));
InvoiceRecognitionSettings settings = new InvoiceRecognitionSettings();
settings.setLanguage(Language.Chinese);
List<RecognitionResult> results = ocr.RecognizeInvoice(input, settings);
System.out.println("results.size() = " + results.size());
for (int i = 0; i < results.size(); i++) {
System.out.println("第" + (i + 1) + "张图片,识别结果:" + results.get(i).recognitionText);
}
}
控制台输出的内容较多,本次就不给出结果了,而且有个疑问,原本是4张发票素材图片,识别出的结果results集合对象共计8条数据。
包含3个发票素材的图片《发票素材》附件,如果你也掌握了其它相关ocr识别的实现,不妨试下这些图片的识别结果。
点赞
发表评论
当前回复:作者