开发中遇到的问题&解决方案(三)

简介: 我在P2P平台和消费金融平台都待过,所以对借贷这块的系统比较熟悉,其中重复做得最多的功能就是身份证OCR识别和活体识别也叫人脸四张图(眨眼,张嘴,向左,向右),那么今天来说说关于身份证OCR识别的那些坑和解决方案。


前言

*我在P2P平台和消费金融平台都待过,所以对借贷这块的系统比较熟悉,其中重复做得最多的功能就是身份证OCR识别和活体识别也叫人脸四张图(眨眼,张嘴,向左,向右),那么今天来说说关于身份证OCR识别的那些坑和解决方案。


1.使用的身份证OCR识别的厂商是旷视face++
2.身份证识别有哪些坑

1)图片要求是PNG或JPG,但是初期没有注意的时候没有限制文件类型,所以有传其他类型的身份证照片上来然后没有任何反应运营喊说程序有bug的事情出现,另外image_url参数最好是image_base64直接上传图片的,示例代码如下:

faceMap.put("image_base64", backPic.split(",")[1]);
String backResult = new String(FaceIdentity.post(URL, faceMap), "UTF-8");
JSONObject backObject = JSONObject.fromObject(backResult);
复制代码

不然容易得到如下类似的报错:

请求失败返回示例
{
   "time_used": 3,
      "error_message": "MISSING_ARGUMENTS: image_url, image_file, image_base64",
      "request_id": "1470378968,c6f50ec6-49bd-4838-9923-11db04c40f8d"
}
复制代码

2)关于身份证残缺的情况,不是所有去借贷的人的身份证都是完整的,就像钞票一样会少个角或者磨损严重有一些字无法被识别的,或者说会出现伪造身份证骗贷的情况,那么在请求返回的数据结构中就得借助legality 去判断身份证照片的一些特殊情况,

1.ID Photo (正式身份证照片),这种应该是最多的情况
2.Temporary ID Photo  (临时身份证照片),这种的话不是很多了,办了临时的再去补办正式的就很容易了
3.Photocopy (正式身份证的复印件),这点可以展开一下说说,复印件这玩意其实得注意保密,不然会被他人盗用
4.Screen (手机或电脑屏幕翻拍的照片),同样的,也是一样防诈骗的一种鉴别指数
5.Edited (用工具合成或者编辑过的身份证图片),这种的话就很明显了

下面的思维导图会更加清晰一些 微信截图_20220531134653.png

3.15位的身份证带来的问题

15位身份证即老身份证,因为之前15位的身份证进行过一次升级,迟迟没有升级的身份证就有可能在识别身份证号码时出问题。

最后,也是需要提醒的一点,请求这种第三方的接口,参数要尽可能的灵活,因为版本会随时升级,可以会新增参数也可能会减少参数,返回提示方面的话最后后端总结处理后返回前端,这样做的好处是,即使后端face++的版本升级,前端也不用发版。

目录
相关文章
|
安全 Oracle 关系型数据库
WebLogic Server 账号密码密文解密小方法
WebLogic Server 账号密码密文解密小方法,具体操作看下文
1250 3
|
安全 Linux 数据安全/隐私保护
Linux 文件权限基础:文件和目录权限管理指南
Linux 文件权限基础:文件和目录权限管理指南
1416 0
|
6月前
|
人工智能 自然语言处理 运维
构建AI智能体:一百、AI模型选择与部署考量:从业务需求到实际落地的思考决策
本文系统介绍了AI模型生态分类与选型方法论。主要内容包括:1)AI模型分类体系,分为通用大语言模型、文本嵌入模型和专业领域模型三大类;2)业务需求分析方法,从功能、性能、用户体验等维度进行需求拆解;3)模型选型决策框架,基于参数量、序列长度等指标建立四阶段评估流程;4)典型场景的模型选择建议,如智能客服推荐中等规模对话模型,内容创作选择大模型等。文章强调模型选择需平衡业务需求、技术指标和资源约束,并提供了代码示例说明不同模型的使用方法。最终指出没有最优模型,只有最适合特定场景的模型选择方案。
877 17
|
7月前
|
机器学习/深度学习 人工智能 边缘计算
AI视觉在市政道路无人机巡检中的技术
通过深度学习目标检测与实例分割技术,实现裂缝、井盖缺失等缺陷自动识别;采用本地化边缘计算架构,保障数据安全与离线运行。
463 0
|
11月前
|
机器学习/深度学习 存储 分布式计算
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证(211)
本文探讨了Java大数据与机器学习模型在金融风险压力测试中的创新应用。通过多源数据采集、模型构建与优化,结合随机森林、LSTM等算法,实现信用风险动态评估、市场极端场景模拟与操作风险预警。案例分析展示了花旗银行与蚂蚁集团的智能风控实践,验证了技术在提升风险识别效率与降低金融风险损失方面的显著成效。
|
JSON 人工智能 Serverless
一键生成毛茸萌宠形象,基于函数计算极速部署ComfyUI生图系统
通过阿里云函数计算FC 和文件存储NAS,用户体验 ComfyUI 和预置工作流文件,用户可以快速生成毛茸茸萌宠等高质量图像。
一键生成毛茸萌宠形象,基于函数计算极速部署ComfyUI生图系统
|
存储 小程序 前端开发
微信小程序健康管理系统的开发与实现(一)
微信小程序健康管理系统的开发与实现
982 0
|
Java Shell 文件存储
mac安装多版本jdk
mac安装多版本jdk
1070 0
mac安装多版本jdk
|
前端开发 UED
css cursor的作用
css cursor的作用
578 0
|
敏捷开发 安全 测试技术
阿里云云效产品使用合集之如何删除用例库
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。