当前位置: 首页 > news >正文

OCR文字识别接口如何用Java进行调用

一、什么是OCR文字识别接口?

OCR文字识别接口,是指将图像中文字内容进行识别,例如可以识别照片中的文字信息,方便对文档、书籍、名片等各种载体上的文字进行数字化处理。

二、OCR文字识别接口适用于哪些场景?

例如:

1.金融领域

(1)银行卡识别:在移动支付、网上银行、自助终端等业务中,通过识别银行卡卡号、有效期、持卡人姓名等信息,实现快速绑卡和支付操作,提升用户体验和支付的便捷性。

(2)票据识别:包括增值税发票识别、支票识别、银行票据识别等,能够自动提取票据上的发票号码、金额、开票日期、收款人、付款人等关键信息,用于财务报销、账务处理、税务申报等环节,提高数据录入的准确性和效率,减少人工操作的工作量和错误风险,例如在企业的财务共享中心、费控报销系统中应用广泛。

2.物流领域

快递单识别:自动识别快递单上的收件人姓名、地址、电话、快递单号等信息,实现物流信息的快速录入和跟踪,提高包裹分拣、配送的效率和准确性,降低人工录入的错误率,便于物流企业进行全程的物流管理和监控。

3.教育领域

(1)试卷和作业批改:可以对学生的试卷、作业等纸质文本进行识别,实现客观题的自动批改和成绩统计,节省教师批改作业的时间,提高教学效率。

(2)教材和资料数字化:将教材、参考书籍等纸质资料转化为电子文档,方便学生在电子设备上进行阅读和学习,也有利于教学资源的共享和管理。

三、如何用Java实现OCR文字识别接口调用?

	public static void main(String[] args) {String host = "https://kzwordocr.market.alicloudapi.com";String path = "/api-mall/api/general/ocr";String method = "POST";String appcode = "你自己的AppCode";Map<String, String> headers = new HashMap<String, String>();//最后在header中的格式(中间是英文空格)为Authorization:APPCODE 83359fd73fe94948385f570e3c139105headers.put("Authorization", "APPCODE " + appcode);//根据API的要求,定义相对应的Content-Typeheaders.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");Map<String, String> querys = new HashMap<String, String>();Map<String, String> bodys = new HashMap<String, String>();bodys.put("image", "image");bodys.put("url", "url");try {/*** 重要提示如下:* HttpUtils请从* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java* 下载** 相应的依赖请参照* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml*/HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);System.out.println(response.toString());//获取response的body//System.out.println(EntityUtils.toString(response.getEntity()));} catch (Exception e) {e.printStackTrace();}}

正确返回示例代码如下:

{"msg": "成功","success": true,"code": 200,"data": {"orderNo": "202407102026336827870","info": [{"line_no": 0, //文本行编号,按从左至右、从上至下顺序依次排列"confidence": 0.96655273, //行文本识别置信度 0-1 "line_content": "姓名", //识别出的文本行内容"line_position": {"x": 53,"width": 53,"y": 66,"line_direction": 0,"height": 22}},{"line_no": 1,"confidence": 0.98909503,"line_content": "陈海江","line_position": {"x": 102,"width": 63,"y": 63,"line_direction": 0,"height": 23}}]}
}line_no		文本行编号,按从左至右、从上至下顺序依次排列
line_content	识别出的文本行内容
confidence	行文本识别置信度
line_position	文本行位置信息,表示为坐标和旋转角度(左上角X,左上角Y,宽Width,高Height,旋转角度Line Position)+x左上角顶点横坐标X +y	左上角顶点纵坐标Y
width	        矩形框的宽
height		矩形框的高
line_direction	文本行的旋转角度
words		文本行内单字符的内容数组,数组元素为一个Json结构,包含character和confidence
character	候选字符character
confidence	单字符的识别置信度


http://www.mrgr.cn/news/5673.html

相关文章:

  • Android UI:PopupWindow:API
  • Studying-CodeTop | 3. 无重复字符的最长子串、206. 反转链表、146. LRU 缓存
  • uniapp 地图map画出地市轮廓
  • 2. springboot集成kafka入门使用教程
  • 已解决:java.lang.ClassNotFoundException: com.mongodb.test.test 异常的正确解决方法,亲测有效!!!
  • 进阶岛 - MindSearch(CPU版)部署到github codespace
  • 软件测试-测试分类
  • 独立ip为何高级又安全?
  • Scratch与AI:开启少儿编程的智能之旅
  • 编译原理(极速版)
  • 【简历】25届青岛某一本JAVA简历:中厂不要强调算法,面试官听不懂
  • Nginx(项目管理和LINUX)
  • 新手起步:探索AWS新账户的服务器部署能力与限制
  • CSP-J-链表
  • 创客匠人老蒋在「IP私域发售六脉神剑落地班」现场金句频出
  • C语言与Python的区别
  • OW-VISCap——开放世界视频实例分割方法研究
  • ChatGPT快速完成论文大纲创作【附完整示例】
  • springboot调用sap接口传输数据,RFC协议接口调用,包含linux,windows部署
  • 湖北省各市各地两化融合贯标、3A级认定申报奖补补助、申报条件材料、流程指南