阿里云视觉智能开放平台--文字识别使用教程

简介: 文字识别技术是基于阿里云深度学习技术,为您提供通用的印刷文字识别和文档结构化等能力。文字识别技术可以灵活应用于证件文字识别、发票文字识别、文档识别与整理等行业场景,满足认证、鉴权、票据流转审核等业务需求。

概述

文字识别技术是基于阿里云深度学习技术,为您提供通用的印刷文字识别和文档结构化等能力。文字识别技术可以灵活应用于证件文字识别、发票文字识别、文档识别与整理等行业场景,满足认证、鉴权、票据流转审核等业务需求。

Step By Step

1、服务开通,参考链接:阿里云视觉智能开放平台使用简明教程

2、目前文字识别提供5大类:个人类卡证识别、资产类证件识别、通用文字类识别、车辆交通类识别和车辆交通类识别,共21个API的接口能力

3、Code Sample

增值税发票识别接口为例分别演示使用本地图片及OSS图片的使用;

其它接口的使用方式类似,注意目前:二维码识别RecognizeQrCode API不支持上传本地文件,但是支持公网图片URL,其它API接口支持OSS地址和本地图片上传。


  • 3.1 pom.xml
    <dependencies>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>ocr20191230</artifactId>
            <version>0.0.3</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.52</version>
        </dependency>
    </dependencies>

3.2 Java Code

import com.alibaba.fastjson.JSON;
import com.aliyun.ocr20191230.Client;
import com.aliyun.ocr20191230.models.RecognizeVATInvoiceAdvanceRequest;
import com.aliyun.ocr20191230.models.RecognizeVATInvoiceRequest;
import com.aliyun.ocr20191230.models.RecognizeVATInvoiceResponse;
import com.aliyun.tearpc.models.Config;
import com.aliyun.teautil.models.RuntimeOptions;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;

public class RecognizeVATInvoiceDemo {

    public static void main(String[] args) throws Exception {

        // accessKeyId、accessKeySecret 获取参考:https://yq.aliyun.com/articles/693979
        Config config = new Config();
        config.accessKeyId= "LTAIOZZg********";
        config.accessKeySecret= "v7CjUJCMk7j9aK****************";
        config.regionId="cn-shanghai";
        config.protocol = "https";
        config.endpoint="ocr.cn-shanghai.aliyuncs.com";

        Client client = new Client(config);
        String filePath = "C:\\Users\\Administrator\\Desktop\\2019041500152001020003743286_0.jpg";
        String fileURL = "https://viapi-test.oss-cn-shanghai.aliyuncs.com/test/ant_ai/vat_invoice/2019041500152001020003743286_0.jpg";

        recognizeVATInvoiceAdvance(client, filePath);
        recognizeVATInvoice(client, fileURL);
    }

    /**
     * 增值税发票识别--使用本地图片
     * @param client
     * @param filePath 本地图片的路径
     */
    public static void recognizeVATInvoiceAdvance(Client client, String filePath)
    {
        RecognizeVATInvoiceAdvanceRequest recognizeVATInvoiceAdvanceRequest = new RecognizeVATInvoiceAdvanceRequest();

        InputStream inputStream = null;
        try {
            inputStream = new FileInputStream(new File(filePath));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        // 传递请求参数
        recognizeVATInvoiceAdvanceRequest.fileURLObject = inputStream;
        recognizeVATInvoiceAdvanceRequest.fileType = "jpg";

        try {
            RecognizeVATInvoiceResponse recognizeVATInvoiceResponse = client.recognizeVATInvoiceAdvance(recognizeVATInvoiceAdvanceRequest, new RuntimeOptions());
            System.out.println(JSON.toJSONString(recognizeVATInvoiceResponse));// 输出请求结果
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 增值税发票识别--使用OSS图片
     * @param client
     * @param fileURL OSS 图片URL
     */
    public static void recognizeVATInvoice(Client client, String fileURL)
    {
        RecognizeVATInvoiceRequest recognizeVATInvoiceRequest = new RecognizeVATInvoiceRequest();

        recognizeVATInvoiceRequest.fileType = "jpg";
        recognizeVATInvoiceRequest.fileURL = fileURL;

        try {
            RecognizeVATInvoiceResponse recognizeVATInvoiceResponse = client.recognizeVATInvoice(recognizeVATInvoiceRequest,new RuntimeOptions());
            System.out.println(JSON.toJSONString(recognizeVATInvoiceResponse));// 输出请求结果
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  • 3.3 Result
{"data":{"box":{"checkers":[589.0,1003.0,662.0,1033.0],"clerks":[986.0,1003.0,1060.0,1033.0],"invoiceAmounts":[1364.0,776.0,1438.0,804.0],"invoiceCodes":[1378.0,41.0,1520.0,68.0],"invoiceDates":[1376.0,115.0,1596.0,145.0],"invoiceFakeCodes":[1376.0,153.0,1640.0,181.0],"invoiceNoes":[1377.0,78.0,1478.0,105.0],"payeeAddresses":[355.0,909.0,734.0,939.0],"payeeBankNames":[354.0,947.0,938.0,977.0],"payeeNames":[356.0,833.0,633.0,865.0],"payeeRegisterNoes":[356.0,873.0,571.0,902.0],"payees":[189.0,1003.0,264.0,1033.0],"payerAddresses":[0.0,0.0,0.0,0.0],"payerBankNames":[0.0,0.0,0.0,0.0],"payerNames":[354.0,222.0,700.0,255.0],"payerRegisterNoes":[358.0,262.0,567.0,290.0],"sumAmounts":[532.0,774.0,629.0,805.0],"taxAmounts":[1606.0,721.0,1658.0,748.0],"withoutTaxAmounts":[1265.0,721.0,1339.0,749.0]},"content":{"antiFakeCode":"02702870934284730434","checker":"赵弯弯","clerk":"赵弯弯","invoiceAmount":"200.00","invoiceCode":"031001600311","invoiceDate":"20190415","invoiceNo":"80625433","payee":"赵弯弯","payeeAddress":"上海虹桥机场迎宾二路161号22342185","payeeBankName":"上海浦东发展银行空港支行076389-98910158000000030-22","payeeName":"上海机场(集团)有限公司","payeeRegisterNo":"91310000132284295X","payerAddress":"","payerBankName":"","payerName":"百特医疗用品贸易(上海)有限公司","payerRegisterNo":"91310000607402073L","sumAmount":"200.00","taxAmount":"9.52","withoutTaxAmount":"190.48"}},"requestId":"75E88483-753C-4D5E-9EF5-5E132FF67DED"}
{"data":{"box":{"checkers":[589.0,1003.0,662.0,1033.0],"clerks":[986.0,1003.0,1060.0,1033.0],"invoiceAmounts":[1364.0,776.0,1438.0,804.0],"invoiceCodes":[1378.0,41.0,1520.0,68.0],"invoiceDates":[1376.0,115.0,1596.0,145.0],"invoiceFakeCodes":[1376.0,153.0,1640.0,181.0],"invoiceNoes":[1377.0,78.0,1478.0,105.0],"payeeAddresses":[355.0,909.0,734.0,939.0],"payeeBankNames":[354.0,947.0,938.0,977.0],"payeeNames":[356.0,833.0,633.0,865.0],"payeeRegisterNoes":[356.0,873.0,571.0,902.0],"payees":[189.0,1003.0,264.0,1033.0],"payerAddresses":[0.0,0.0,0.0,0.0],"payerBankNames":[0.0,0.0,0.0,0.0],"payerNames":[354.0,222.0,700.0,255.0],"payerRegisterNoes":[358.0,262.0,567.0,290.0],"sumAmounts":[532.0,774.0,629.0,805.0],"taxAmounts":[1606.0,721.0,1658.0,748.0],"withoutTaxAmounts":[1265.0,721.0,1339.0,749.0]},"content":{"antiFakeCode":"02702870934284730434","checker":"赵弯弯","clerk":"赵弯弯","invoiceAmount":"200.00","invoiceCode":"031001600311","invoiceDate":"20190415","invoiceNo":"80625433","payee":"赵弯弯","payeeAddress":"上海虹桥机场迎宾二路161号22342185","payeeBankName":"上海浦东发展银行空港支行076389-98910158000000030-22","payeeName":"上海机场(集团)有限公司","payeeRegisterNo":"91310000132284295X","payerAddress":"","payerBankName":"","payerName":"百特医疗用品贸易(上海)有限公司","payerRegisterNo":"91310000607402073L","sumAmount":"200.00","taxAmount":"9.52","withoutTaxAmount":"190.48"}},"requestId":"9B97F14B-0970-45C7-BE9E-CD3204BB3E1B"}

参考链接

文字识别介绍
阿里云视觉智能开放平台使用简明教程

相关文章
|
文字识别 算法 API
视觉智能开放平台产品使用合集之uniapp框架如何使用阿里云金融级人脸识别
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
486 0
|
存储 安全 API
"解锁企业级黑科技!用阿里云视觉智能打造钉钉级人脸打卡系统,安全高效,让考勤管理秒变智能范儿!"
【8月更文挑战第14天】随着数字化办公的发展,人脸打卡成为企业考勤的新标准。利用阿里云视觉智能开放平台构建类似钉钉的人脸打卡系统,其关键在于:高精度人脸识别API支持复杂场景下的快速检测与比对;活体检测技术防止非生物特征欺骗,确保安全性;云端存储与计算能力满足大数据处理需求;丰富的SDK与API简化集成过程,实现高效、安全的考勤管理。
439 2
|
缓存 负载均衡 算法
"揭秘!阿里云视觉智能开放平台人脸1vn搜索慢?轻松几招,QPS飙升,让你的应用快如闪电,用户体验秒变VIP级享受!"
【8月更文挑战第14天】在数字浪潮中,人脸识别技术广泛应用于安全监控到个性化服务等领域。阿里云视觉智能开放平台凭借其强大算法和服务模式成为行业翘楚。面对人脸1:Vn搜索响应慢的问题,不仅可通过增加QPS优化,还需从参数调整、缓存机制、并行处理及算法硬件升级等方面综合施策,以实现搜索速度与准确性的双重提升。
1635 2
|
机器学习/深度学习 算法 搜索推荐
"震撼揭秘!阿里云AIGC智能图像识别:黑科技如何颠覆你的视界,让图像识别秒变超能力,生活工作全面革新!"
【8月更文挑战第12天】在数字化浪潮中,图像数据激增,高效准确处理成为关键。阿里云智能图像识别服务(AIGC)应运而生,依托深度学习与计算机视觉技术,实现图像特征精确提取与理解。通过大规模数据训练及优化算法,AIGC在图像分类、目标检测等方面表现出色。其应用场景广泛,从电商的商品识别到内容安全审核,再到智能交通和医疗影像分析,均展现出巨大潜力。示例代码展示了AIGC图像生成的基本流程,彰显其技术实力与未来前景。
496 1
|
算法 小程序 开发工具
视觉智能开放平台操作报错合集之同样的图片路径(上海阿里云),sdk报错code.400,是什么原因
在使用视觉智能开放平台时,可能会遇到各种错误和问题。虽然具体的错误代码和消息会因平台而异,但以下是一些常见错误类型及其可能的原因和解决策略的概述,包括但不限于:1. 认证错误、2. 请求参数错误、3. 资源超限、4. 图像质量问题、5. 服务不可用、6. 模型不支持的场景、7. 网络连接问题,这有助于快速定位和解决问题。
261 0
|
文字识别 算法 API
视觉智能开放平台产品使用合集之通用文字识别的开通流程和注册办理是怎样的
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
127 0
|
编解码 文字识别 API
视觉智能开放平台产品使用合集之文字识别和印刷文字识别有什么区别
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
145 0
|
3月前
|
机器学习/深度学习 文字识别 Linux
Umi-OCR_文字识别工具 免安装使用教程(附下载安装包)!永久免费,开源离线OCR识别软件下载
Umi-OCR是一款开源免费、支持离线运行的高精度OCR文字识别工具,基于深度学习技术,可快速识别中文、英文、日文等多种语言。无需联网,保护隐私,适用于Windows和Linux系统,解压即用,操作简便,是处理图片转文本的理想选择。
1817 7
|
8月前
|
机器学习/深度学习 文字识别 自然语言处理
OCR技术:解锁文字识别的无限可能
OCR(光学字符识别)技术是数字化浪潮中的关键工具,可将纸质文档、手写笔记或复杂背景下的文字图像转化为可编辑文本。本文从图像采集、预处理、字符识别到文本校正,全面解析OCR技术的原理,并探讨其在智能办公、智慧交通、便捷生活等领域的广泛应用。未来,OCR将与自然语言处理、计算机视觉等技术深度融合,推动智能化和综合化发展。通过开放生态系统和政策支持,开发者可探索更多创新场景,如古籍数字化、盲人阅读等,为社会带来更多价值。
1880 57
|
12月前
|
人工智能 文字识别 API
moonshot-v1-vision-preview:月之暗面Kimi推出多模态视觉理解模型,支持图像识别、OCR文字识别、数据提取
moonshot-v1-vision-preview 是月之暗面推出的多模态图片理解模型,具备强大的图像识别、OCR文字识别和数据提取能力,支持API调用,适用于多种应用场景。
1725 6
moonshot-v1-vision-preview:月之暗面Kimi推出多模态视觉理解模型,支持图像识别、OCR文字识别、数据提取

热门文章

最新文章

相关产品

  • 视觉智能开放平台