uniapp 请求自建ocr服务识别身份证
{"person":"韦小宝","sex":"男","nation":"汉","birthday":"1654年12月20日","adress":"北京市东城区景山前街4号紫禁城敬事房","idcard":"11204416541220243X"}
解析ocr识别结果
onGetImgClick: function() {uni.chooseImage({success: (chooseImageRes) => {const tempFilePaths = chooseImageRes.tempFilePaths;console.log('向服务器发送ocr识别图片')const uploadTask = uni.uploadFile({url: 'http://192.168.2.31:8000/api/ocr', //接口地址filePath: tempFilePaths[0],name: 'file',formData: {'user': 'test'},success: (uploadFileRes) => {console.log('收到服务器返回识别数据')// console.log(uploadFileRes.data);var strjson = JSON.parse(uploadFileRes.data).data;// console.log(strjson);var restmp = strjson.split('\n')// console.log(reslist.length);var reslist = []var idjson = {}//排除相似度低的数据restmp.forEach(function(value, index, arr) {var tmp = value.split('\t')if (parseFloat(tmp[1]).toFixed(1) > 0.5) {reslist.push(value)}})console.log("解析开始");//解析for (var i = 0; i < reslist.length; i++) {var tmp = reslist[i].split('\t')var str = tmp[0];// 姓名if (i === 0) {if (str.indexOf("姓名") >= 0 && str.length >2) { //姓名标签 同一行idjson.person = str.replace("姓名", "")} else { //姓名标签 不同行idjson.person = str}}//性别if ((str.indexOf("男") >= 0 && str.length === 1) || (str.indexOf("女") >= 0 && str.length === 1)) { //性别标签 不同行(单个存在)idjson.sex = str} else if (str.indexOf("性别") >= 0 && str.length >2) { //性别标签 同一行idjson.sex = str.replace("性别", "")}//民族 看前后数据判断if (str.indexOf("民族") >= 0 && str.length > 2) { //民族标签 同一行idjson.nation = str.replace("民族", "")} else if (str.indexOf("民族") >= 0 && str.length ===2) { //民族标签 不同行//看前后数据var tmp1 = reslist[i - 1].split('\t')var tmp2 = reslist[i + 1].split('\t')if (tmp1[0].indexOf("性别") >= 0 || tmp1[0].indexOf("男") >= 0 || tmp1[0].indexOf("女") >= 0) {idjson.nation = tmp2[0] //取后边数据} else {idjson.nation = tmp1[0] //取前边数据}}//出生年月if (str.indexOf("出生") >= 0 && str.length ===2) { //出生标签 不同行var tmp1 = reslist[i - 1].split('\t')var tmp2 = reslist[i - 2].split('\t')idjson.birthday = tmp1[0] + tmp2[0]} else if (str.indexOf("出生") >= 0 && str.length >2) { //出生标签 同一行idjson.birthday = str.replace("出生", "")}//住址if (str.indexOf("住址") >= 0 && str.length ===2) { //住址标签 不同行var tmp1 = reslist[i - 1].split('\t')var tmp2 = reslist[i + 1].split('\t')idjson.adress = tmp1[0] + tmp2[0]} else if (str.indexOf("住址") >= 0 && str.length >2) { //住址标签 同一行var tmp2 = reslist[i + 1].split('\t')idjson.adress = str.replace("住址", "") + tmp2[0]}//身份证号 正则匹配if (str.indexOf("公民身份") >= 0 && str.length <10) { //身份号码标签 不同行var tmp1 = reslist[i - 1].split('\t')idjson.idcard = tmp1[0]} else if (str.indexOf("公民身份") >= 0 && str.length >10) { //身份号码标签 同一行//正则匹配 身份证号var strid = getIDcard(str)idjson.idcard = strid}}console.log("解析结束");console.log(idjson);//----------------}});uploadTask.onProgressUpdate((res) => {// console.log('上传进度' + res.progress);// console.log('已经上传的数据长度' + res.totalBytesSent);// console.log('预期需要上传的数据总长度' + res.totalBytesExpectedToSend);// 测试条件,取消上传任务。// if (res.progress > 50) {// uploadTask.abort();// }});}});function getIDcard(string) {var reg = /[0-9,X,x]/;var num = 0;var IDarr = "";var arr = string.split("");for (var i = 0; i < arr.length; i++) {var item = arr[i];if (reg.test(item)) {num++;IDarr += "" + item;if (num == 18) {// console.log(IDarr.toString())}} else {num = 0;IDarr = "";}}return IDarr;}
uniapp 请求自建ocr服务识别身份证相关推荐
- 身份证正反面识别,身份证扫描识别,二代身份证 OCR 识别,OCR 极速识别身份证所有信息正反面均可。离线无需联网,极速秒扫。
IdCardOCR 项目地址:XieZhiFa/IdCardOCR 简介:身份证正反面识别,身份证扫描识别,二代身份证 OCR 识别,OCR 极速识别身份证所有信息正反面均可.离线无需联网,极速秒扫. ...
- 调用百度OCR接口识别身份证 微信小程序
申请百度AI账号获取百度OCR接口API Key和Secret Key 申请地址: http://ai.baidu.com/?track=cp:aipinzhuan|pf:pc|pp:AIpingta ...
- 百度OCR文字识别-身份证识别
简介 答应了园区大牛张善友 要写AI 的系列博客,所以开始了AI 系列之旅. 一.介绍 身份证识别 API 接口文档地址:http://ai.baidu.com/docs#/OCR-API/top 接 ...
- 调用百度智能云OCR接口识别身份证和户口本
一.百度智能云获取token类编写 package com.wy.gcserver.ocr.service;import org.slf4j.Logger; import org.slf4j.Logg ...
- Android Ocr文字识别 身份证识别 实时扫描
遇到一个需求需要扫描身份证,识别身份证号并进行查询,在网上百度需要用到文字识别技术,ocr tess-two,看到网上有关于中英文实时扫描和手机号实时扫描的功能,于是在这两者的基础上进行了改进,感谢顾 ...
- 调用腾讯云OCR接口识别身份证和户口本
一.添加项目pom文件依赖 <dependency><groupId>com.alibaba</groupId><artifactId>fastjson ...
- PaddleHub一键OCR中文识别 身份证识别
环境安装:PaddleHub一键OCR中文识别:https://aistudio.baidu.com/aistudio/projectdetail/512888 开源代码:https://github ...
- 身份证正反面识别,身份证扫描识别,二代身份证OCR识别,OCR极速识别身份证所有信息正反面均可。离线无需联网,极速秒扫。
项目说明 极速识别二代身份证.驾驶证.护照 (无需联网,离线秒扫,极速识别)身份证所有信息, 包含姓名.性别.出生年月.详细地址,正反面.不需要联网即可离线识别身份证所有信息包括新疆少数民族身份证,识 ...
- uniapp 调用阿里云OCR行驶证识别
1.阿里云-文字设别-行驶证设别 印刷文字识别-行驶证识别/OCR文字识别(限时特惠,折扣享不停)[最新版]-云市场-阿里云 2. 购买完后 获取AppKey AppCode数据 3.前端页面 4.完 ...
最新文章
- 4年4篇顶刊顶会论文!清华开源肖像线条画生成代码,惟妙惟肖模仿人类作画...
- linux 下ab压力测试
- mysql left join on_mysql,left join on
- Android的ClassLoader知多少
- Spring中BeanPostProcessor
- JavaEE的13种核心技术
- 360网络修复工具_Win10网络图标不见了解决方法
- SharePoint三个主要数据库
- 基于 Kubernetes 实践弹性的 CI/CD 系统
- mysql 主从同步,双主同步,如果服务器意外挂机,不同步怎么办
- 中心对称数 java_【LeetCode(Java) - 246】中心对称数
- Mac翻译系列软件推荐二:人人译视界 for Mac
- CH模拟赛 皇后游戏
- 计算机打字测速,5款打字测速软件分享,打字练习、测速两不误
- 域名过户操作流程及常见问题
- P5030 长脖子鹿放置
- 如何用光盘映像文件重装服务器系统,光盘映像文件如何装系统_通过光盘映像文件装系统的方法...
- suptitle()--matplotlib
- SGU126 Boxes
- 苹果全球销量超越小米重回第二,荣耀回归国内手机市场第一梯队
热门文章
- 教师管理平台-----servlet+html修改个人资料及更改头像
- java计算机毕业设计健康饮食信息管理系统源码+mysql数据库+系统+lw文档+部署
- 一个留学生被戴了绿帽子之后,写给前女朋友的一封信
- 手机查看CAD图纸的时候怎么切换视图
- javascript写字技巧_How JavaScript Work 学习笔记(一)
- 线程的概念和多线程模型
- Kubernetes在智联招聘内网的应用场景
- 【CAD.Net】第五课:如何提取CAD CADMText的文本内容(去除格式内容)
- Mysql数据库的初始密码及如何修改密码
- 直播代码开发者别忘了,直播代码中有这些盈利手段