• 小程序OCR身份证识别


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

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

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

    1. 将上传的照片传到服务器端后,使用小程序OCR插件进行身份证识别,代码如下:
    1. // 引入小程序OCR插件
    2. import OCR from 'wechat-ocr'
    3. // 实例化OCR对象
    4. var ocr = new OCR({
    5. appid: '小程序OCR插件APPID',
    6. apikey: '小程序OCR插件API Key'
    7. })
    8. wx.request({
    9. url: '上传接口地址',
    10. method: 'POST',
    11. header: {
    12. 'content-type': 'application/x-www-form-urlencoded'
    13. },
    14. data: {
    15. // 传入身份证照片的URL
    16. url: '上传的文件URL'
    17. },
    18. success: function(res) {
    19. // 调用OCR插件识别身份证信息
    20. ocr.idcard({
    21. type: 'photo',
    22. photo: res.data
    23. }).then((result) => {
    24. // 解析OCR插件识别结果,获取身份证信息
    25. })
    26. }
    27. })

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

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

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

     


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

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

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

    1. 解析OCR识别结果,获取身份证上的信息,例如姓名、性别、出生年月、地址和身份证号码等。代码如下:
    1. var data = res.data
    2. if (data.code == 0) {
    3. var result = data.data
    4. if (result.item_list && result.item_list.length > 0) {
    5. var itemList = result.item_list
    6. for (var i = 0; i < itemList.length; i++) {
    7. var item = itemList[i]
    8. if (item.item == "品名") {
    9. // 获取姓名
    10. } else if (item.item == "性别") {
    11. // 获取性别
    12. } else if (item.item == "民族") {
    13. // 获取民族
    14. } else if (item.item == "出生") {
    15. // 获取出生年月
    16. } else if (item.item == "住址") {
    17. // 获取住址
    18. } else if (item.item == "公民身份号码") {
    19. // 获取身份证号码
    20. }
    21. }
    22. }
    23. }

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

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

  • 相关阅读:
    一文搞懂shell脚本
    java基本类型等API 基本语法
    Android Studio run main()方法报错
    【北亚企安数据恢复】Ceph存储介绍&Ceph数据恢复流程
    C语言每日一题(10) 回形矩阵
    vscode配置linux私钥远程免密登录
    代码随想录第14天 | ● 300.最长递增子序列 ● 674. 最长连续递增序列 ● 718. 最长重复子数组
    交换机设置Syslog服务端地址
    ElevenLabs用AI为Sora文生视频模型配音 ,景联文科技提供高质量真人音频数据集助力生成逼真音效
    【图像分割】基于萤火虫算法实现图像聚类分割附matlab代码
  • 原文地址:https://blog.csdn.net/m0_74265396/article/details/133912911