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

小程序OCR身份证识别

使用两种OCR识别:小程序和腾讯云

1.基于微信小程序OCR插件实现身份证拍照、上传并OCR识别的示例:

  1. 首先,在小程序中添加身份证拍照的功能,可以使用wx.chooseImage()选择照片并使用wx.uploadFile()上传,代码如下:
wx.chooseImage({count: 1, // 一次只能选择一张照片sizeType: ['compressed'], // 图片压缩sourceType: ['camera', 'album'], // 可以选择拍照或从相册中选择success: function(res) {// 将选择的图片上传到服务器wx.uploadFile({url: '上传接口地址',filePath: res.tempFilePaths[0],name: 'file',success: function(res) {// 调用OCR接口识别身份证信息}}
})

  1. 将上传的照片传到服务器端后,使用小程序OCR插件进行身份证识别,代码如下:
// 引入小程序OCR插件
import OCR from 'wechat-ocr'// 实例化OCR对象
var ocr = new OCR({appid: '小程序OCR插件APPID',apikey: '小程序OCR插件API Key'
})wx.request({url: '上传接口地址',method: 'POST',header: {'content-type': 'application/x-www-form-urlencoded'},data: {// 传入身份证照片的URLurl: '上传的文件URL'},success: function(res) {// 调用OCR插件识别身份证信息ocr.idcard({type: 'photo',photo: res.data}).then((result) => {// 解析OCR插件识别结果,获取身份证信息})}
})

  1. 解析OCR插件识别结果,获取身份证上的信息,例如姓名、性别、出生年月、地址和身份证号码等。代码如下:
var result = result.data
if (result.status == 'OK') {var data = result.result// 获取姓名var name = data.name// 获取性别var gender = data.sex// 获取出生年月var birth = data.birth// 获取地址var address = data.address// 获取身份证号码var number = data.number
}

  1. 最后,在小程序中展示OCR识别的结果。

此示例中使用小程序OCR插件进行识别,具体的使用方式和接口参数可以参考小程序OCR官方文档。需要注意的是,小程序OCR插件需要在微信公众平台上进行申请和配置,详情请参考微信官方文档。

 


2.基于腾讯云OCR接口实现身份证拍照、上传并OCR识别的示例:

  1. 首先,在小程序中添加上传身份证照片的功能,可以使用wx.chooseImage()选择照片并使用wx.uploadFile()上传,代码如下:
wx.chooseImage({count: 1, // 一次只能选择一张照片sizeType: ['compressed'], // 图片压缩sourceType: ['camera', 'album'], // 可以选择拍照或从相册中选择success: function(res) {// 将选择的图片上传到服务器wx.uploadFile({url: '上传接口地址',filePath: res.tempFilePaths[0],name: 'file',success: function(res) {// 调用OCR接口识别身份证信息}}
})

  1. 将上传的照片传到服务器端后,调用腾讯云OCR接口进行身份证识别,代码如下:
wx.request({url: 'OCR接口地址',method: 'POST',header: {'content-type': 'application/x-www-form-urlencoded'},data: {app_id: '腾讯云OCR应用ID',secret_id: '腾讯云API密钥ID',secret_key: '腾讯云API密钥',bucket: '',card_type: '0',url: '上传的文件URL',time_stamp: parseInt(new Date().getTime() / 1000),nonce_str: '随机字符串'},success: function(res) {// 解析OCR识别结果,获取身份证信息}
})

  1. 解析OCR识别结果,获取身份证上的信息,例如姓名、性别、出生年月、地址和身份证号码等。代码如下:
var data = res.data
if (data.code == 0) {var result = data.dataif (result.item_list && result.item_list.length > 0) {var itemList = result.item_listfor (var i = 0; i < itemList.length; i++) {var item = itemList[i]if (item.item == "品名") {// 获取姓名} else if (item.item == "性别") {// 获取性别} else if (item.item == "民族") {// 获取民族} else if (item.item == "出生") {// 获取出生年月} else if (item.item == "住址") {// 获取住址} else if (item.item == "公民身份号码") {// 获取身份证号码}}}
}

  1. 最后,在小程序中展示OCR识别的结果。

此示例中使用腾讯云OCR接口进行识别,具体的接口参数和使用方式可以参考腾讯云OCR官方文档

相关文章:

小程序OCR身份证识别

使用两种OCR识别&#xff1a;小程序和腾讯云 1.基于微信小程序OCR插件实现身份证拍照、上传并OCR识别的示例&#xff1a; 首先&#xff0c;在小程序中添加身份证拍照的功能&#xff0c;可以使用wx.chooseImage()选择照片并使用wx.uploadFile()上传&#xff0c;代码如下&#…...

【算法学习】归并算法Merge Sort总结

归并排序思路简单&#xff0c;速度仅次于快速排序&#xff0c;为稳定排序算法&#xff0c;一般用于对总体无序&#xff0c;但是各子项相对有序的数列。 1. 基本思想 归并排序使用分治思想&#xff0c;分治模式下每一层递归有三个步骤&#xff1a; 分解&#xff08;divide)&a…...

Swager如何使用

Swager是一个API文档自动生成工具&#xff0c;可以用于生成API接口文档&#xff0c;供开发者和用户查看和使用。它可以通过描述API接口的规范&#xff0c;自动生成API文档&#xff0c;使得API接口的发布和使用变得更加简单和规范。 下面是使用Swagger的步骤&#xff1a; 首先…...

DHorse v1.4.2 发布,基于 k8s 的发布平台

版本说明 优化特性 在集群列表增加集群版本&#xff1b;修改Jvm的GC指标名&#xff1b; 解决问题 解决shell脚本换行符的问题&#xff1b;解决部署历史列表页&#xff0c;环境名展示错误的问题&#xff1b;解决指标收集功能的异常&#xff1b; 升级指南 升级指南 DHorse…...

Java使用JJWT令牌

最近在B站大学学习Java开发&#xff0c;刚好学到登入验证&#xff0c;在使用JJWT令牌时踩了一些坑&#xff0c;在这里把代码和依赖给出&#xff0c;希望后来者得以借鉴。 依赖 <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api&l…...

“第四十四天”

这道题也不是难&#xff0c;但可能会忽略一种情况&#xff0c;当最大小出现在首位的时候&#xff0c;那个时候如果进行交换的话&#xff0c;大小值可能出现覆盖的情况&#xff0c;最终导致丢失最大值或者最小值&#xff0c;比如最大值 10 在第一位&#xff0c;最小值 0 随意&am…...

Unity Mono和.Net平台浮点算法的区别

static void TestFloat(){{//float speed2.0f/20;float speed 0.1f;float distance 2.0f;long needTime (long)(distance / speed);Log.Debug($"needTime{needTime}"); #if UNITY_EDITORif (needTime ! 19) #elseif (needTime ! 20)//.Net服务器和安卓手机 #endif…...

【SA8295P 源码分析 (二)】64 - QNX 与 Android GVM 显示 Dump 图片方法汇总

【SA8295P 源码分析】64 - QNX 与 Android GVM 显示 Dump 图片方法汇总 一、QNX侧1.1 surfacedump 功能1.2 screenshot 功能二、Android GVM 侧2.1 screencap -p 导出 PNG 图片2.2 screencap 不加 -p 参数,导出 RGB32 图片2.3 dumpsys SurfaceFlinger --display-id 方法系列文…...

shell命令以及运行原理和lLinux权限

shell命令以及运行原理 什么是shell shell是操作系统的外壳程序统称&#xff0c;我们是通过shell去和操作系统沟通的。 从技术角度&#xff0c;shell最简单的定义就是命令行解释器&#xff0c;主要包含两个功能&#xff1a; 将使用者的命令翻译给核心处理 将核心的处理结果…...

斯坦福JSKarel编程机器人使用介绍

斯坦福JSKarel编程机器人使用介绍 为了避免被编程语言固有的复杂性所困扰&#xff0c;有一个被称为卡雷尔&#xff08;Karel&#xff09;机器人的微型世界&#xff08;microworld&#xff09;的简化环境&#xff0c;可以让编程初学者从中学习理解编程的基本概念&#xff0c;而…...

SpringBoot中pom.xml不引入依赖, 怎么使用parent父项目的依赖

在Spring Boot项目中&#xff0c;如果你想使用父项目的依赖&#xff0c;而不想在pom.xml中显式引入依赖&#xff0c;你可以使用Maven的继承机制。 首先&#xff0c;确保你的Spring Boot项目是一个子项目&#xff0c;即它继承自一个父项目。要实现这一点&#xff0c;在pom.xml文…...

基于vue3+ts5+vue-router4+pinia2的PC端项目搭建教程

导语&#xff1a;在日常开发中&#xff0c;有时候会在项目中引入 ts 来解决一些 js 的问题&#xff0c;下面就简单介绍一下如何使用 vue3tsrouterpinia 来搭建一个项目。 目录 简介创建安装配置实战 简介 vue3 目前是常用的 vue 版本&#xff0c;提供了组合式 API 以及一些新…...

6个无版权、免费、高清图片素材库

找免费无版权图片素材&#xff0c;就上这6个网站&#xff0c;超高质量&#xff0c;可商用&#xff0c;赶紧收藏&#xff01; 1、菜鸟图库 https://www.sucai999.com/pic.html?vNTYwNDUx 网站主要为新手设计师提供免费素材&#xff0c;这些素材的质量都很高&#xff0c;类别也…...

什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的 IE?

什么是响应式设计: 响应式设计&#xff08;Responsive Design&#xff09;是一种Web设计和开发方法&#xff0c;旨在使网站在不同设备和屏幕尺寸上都能提供一致的用户体验。响应式设计的目标是适应多种终端&#xff0c;包括桌面计算机、笔记本电脑、平板电脑和移动设备&#x…...

LeetCode 2906. 构造乘积矩阵【前后缀分解,数组】中等

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…...

vue3+koa+axios实现前后端通信

vue3koaaxios实现前后端通信 写了一个小demo来实现前后端通信,涉及跨域问题&#xff0c;非常简单可以给大家平时开发的时候参考 服务端&#xff1a; 目录结构如下&#xff1a; router index.js // router的入口文件 // 引入路由 const Router require("koa-router&quo…...

Required MultipartFile parameter ‘file‘ is not present

出现这个原因我们首先想到的是加一个RequestParam("file")&#xff0c;但是还有可能的原因是因为我们的名字有错误 <span class"input-group-addon must">模板上传 </span> <input id"uploadFileUpdate" name"importFileU…...

vue3后台管理系统之layout组件的搭建

1.1静态布局 <template><div class"layout_container"><!-- 左侧导航 --><div class"layout_slider"></div><!-- 顶部导航 --><div class"layout_tabbar"></div><!-- 内容展示区 --><…...

Minio 文件上传(后端处理同文件判断,同一文件秒传)

记录minio 文件上传 MinIO提供多个语言版本SDK的支持&#xff0c;下边找到java版本的文档&#xff1a; 地址&#xff1a;https://docs.min.io/docs/java-client-quickstart-guide.html maven依赖如下&#xff1a; XML <dependency><groupId>io.minio</groupId…...

模拟IIC通讯协议(stm32)(硬件iic后面在补)

一、IIC基础知识总结。 1、IIC通讯需要两条线就可以&#xff0c;SCL、SDA。 2、IIC的数据传输的速率&#xff0c;不同的ic是不同的&#xff0c;根据电平维持的延时函数的时间来确定IIC数据传输的速率. 3、IIC的延时函数可以使用延时函数&#xff0c;延时函数一般使用系统滴答时…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中&#xff0c;电磁频谱已成为继陆、海、空、天之后的 “第五维战场”&#xff0c;雷达作为电磁频谱领域的关键装备&#xff0c;其干扰与抗干扰能力的较量&#xff0c;直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器&#xff0c;凭借数字射…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...