调用百度OCR的api,进行简单实现图片上传解析文字

OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程;即,针对印刷体字符,采用光学的方式将纸质文档中的文字转换成为黑白点阵的图像文件,并通过识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑加工的技术。

首先假设读者已经有了百度开发者账号,并且在百度AI开放平台上申请了通用文字识别的api调用资格。
若还没有,请点击下面的链接进行注册使用
百度文字识别

在百度AI开放平台上注册并将图片识别功能加入控制台之后,你将会得到三个值,分别是:

appId
apiKey
secretKey

请记住这三个值,后续将会使用,并且需要注意的是个人用户当天的免费调用次数仅有500次。
读者可以访问以下链接查看实现效果:http://www.vainycos.cn/zym/ocr.html

  • 我们将OCR的图片识别功能分成两部分,第一部分是后台实现,可以参考百度OCR的官方文档,此处我使用了SpringBoot进行简单的架构。
    示例
    红色框部分是我个人的appId,apiKey以及secretKey,目前为了演示项目就不做隐藏,不过后续希望读者将自己申请的对应值填写上去。目前只提供一个出口为/ocr/go的服务,提供给页面调用。

  • 第二部分是页面实现,我们需要将本地图片通过页面解析成base64编码的值并上传至后台进行解码,并进行图片文字解析工作返回给页面解析结果。
    示例
    目前我将/ocr/go的后台服务部署于我的个人服务器上,所以在发送ajax请求的url中我填入了自己的域名信息,后续读者如果启动了自己的服务则可以将url替换成对应的服务调用地址。其中,细心的读者应该注意到了发送数据的data部分,我进行了数值截取,只截取第23位后的数据,这是为什么。因为将图片转换成base64编码的时候data:image/jpeg;base64,这部分头文件是要进行去除的,所以就做了简单的截取处理。
    页面效果如下所示:
    page
    解析结果

至此,从前台到后台发起请求的简单ocr服务就已经完成了。在实现过程中查阅了部分资料发现没有一个完整的实现过程,并且没有具体的编码实现,所以就自己做了个简单的示例实现,talk is cheap,show me the code
点击上方的英文有惊喜,若能提供读者一定的帮助,就很好了。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值