图像识别平台建设之路(自建+三方产品)
前言
之前做过东南亚的相关业务,业务流程中需要进行身份证或人脸识别;在国内相关的基础设施比较完善,但是在东南亚相对设施不健全;针对真人识别,有幸成为公司图像识别系统建设的负责人;接下来为大家分享我们在图像识别系统中的一些建设,以及调研些三方产品的比对;
图像识别平台建设
自有图像识别的建设
设计
概要设计
现有线上系统
自有系统陪跑
陪跑数据与线上数据比对
详细设计
数据比对
问题&解参考资料
核心问题点
- 3D人脸无法校正为正面
- 人脸生成的128维向量不能判断生成规则
- 部分人脸图片不能被识别(原因未知)
- 人脸平面向量受限于图片大小(无法根据比例进行计算)
解决过程中参考资料
- 人脸对比网上已有的资料大部分为通过haar对人脸解析后使用欧氏距离计算和余弦值计算,也有使用lbp计算但计算结果不佳(参考 https://blog.csdn.net/lk3030/article/details/84034963)
- 特征脸计算(参考 https://blog.csdn.net/qq_30815237/article/details/88964267)
- Cnn计算(参考 https://blog.csdn.net/u013093426/article/details/81270955)
- 标定特殊区域对比差值(参考 https://blog.csdn.net/intflojx/article/details/81278330)
- knn计算(参考 https://blog.csdn.net/hajk2017/article/details/82862788)
- pca计算(参考 https://blog.csdn.net/daaizjh/article/details/81065054)
- 人脸校正(参考 https://blog.csdn.net/AaronYKing/article/details/90266006)
目标
第一阶段实现目标及操作步骤
- 实现目标:
A.对现有业务无任何影响
B.保证自有系统精准度以及效率
- 将生产请求过一遍自有图像识别系统记录结果,并分析准确度
A.配合运维在测试环境部署以下系统:
(1)自有图像识别系统-图像模型计算模块(Python)
(2)自有图像识别系统-对比模块(Java)
(3)前置agent系统(java)
(4)比对及自有系统结果差异定时任务(java)
B.将线上数据跑进自有图像识别系统并得出结果表
C.跑对比定时任务分析自有图像结果和Advance差异
D.分析差异
第二阶段实现目标
- 进一步验证自有系统识别准确度:
A.业务系统在发某第三方请求同时向自有系统发送MQ通知;
B.自有系统接收MQ记录结果;
C.跑对比定时任务分析自有图像结果和某第三方差异;
- 进行压力测试
- 日志监控,服务器监控
- 接入大数据(MongoDB)
- 精度满足业务需要,实现可替换某第三方
三方相关产品调研及深度使用
国外证件识别
- 在自有图像识别建设过程中我们也是两眼一抹黑,不知如何下手,于是调研很多三方产品,并进行深度体验;
- 在自有系统研制过程中在核心的图像处理(如3D人脸校正,模糊图片识别)这方面一直没有招到专业的人员去做,所以我们在调研基础上也深度使用一些第三方;以下为大家分享一下我们在调研及使用过程中一些第三方产品针对图像识别的情况,供大家参考
- 我们主要做的是东南亚业务,现在可以识别东南亚身份证的第三方产品并不多;其中在我们使用过程中上海合合信息科技股份有限公司旗下智能文字识别云服务平台TextIn非常不错,以下为识别效果
产品 | 识别效果 | 效率 | 效果总结 |
---|---|---|---|
TextIn |
证件号码 1234123*****41234 姓名 DEIEE SSSSSSS 出生地/出生时间SUMEDANG.04-11-1983 性别 LAKI LAKI 血型 A 地址 DUSUN PABUARAN街道 001/001 村 SUKAWENING 地区 GANEAS 宗教信仰 ISLAM 婚姻状况 Kawin 工作说明 KARYAWAN HONORER 国籍 WNI 身份证有效期限 SEUMUR HIDUP 省 JAWA BARAT 城市 KABUPATEN SUMEDANG 发证日期 12-10-2017 |
1~2s | 效率高且准确 |
鹅厂 | 无 | 无 | 无 |
熊厂 | 无 | 无 | 无 |
- TextIn识别效率高,试用了几款识别功能基本都达到了100%的识别精度,同时还支持API文档,进行简单注册后可在线免费调试:API地址传送门
- TextIn更多功能欢迎大家访问其官网TextIn
国内相关业务识别
textin国外证件识别率高且其它三方产品没有提供,那国内相关图像、文字识别如何呢?好奇心带领下,挑选了几个常用的产品功能进行了对比,效果非常明显,textin均完胜其他三方产品,效果如下:
身份证
疫情反复,我们几乎每隔几天就去做一次核酸检测,近期我们最熟悉的使用场景就是核酸检测时扫描身份证识别出身份证上的各项信息了。亲测TextIn和熊厂都可以识别身份证正反面信息,且对比之下TextIn的准确率更胜一筹,可以100%的识别出姓名、性别、出生日期、住址、身份证号等个人信息,身份证识别中,身份证号应该是最重要的信息了,熊厂却漏识别了身份证号信息。
产品 | 识别效果 | 效率 | 效果总结 |
---|---|---|---|
TextIn |
是否为黑白复印件 False 住址 上海市静安区万荣路1268号 公民身份证号44030519****6062561 出生 1995年6月6日 姓名 刘小合 性别 女 民族 汉 |
1~2s |
- 效率高 - 准确率100% |
鹅厂 |
好刘小合 任女民族汉 出生1995年6月6日 住址上海市静安区万荣路1268号 公民身份号码44030519****6062561 |
3s | - 准确率低 |
熊厂 |
姓名 刘小合 性别 女 民族 汉 出生 19950606 住址 上海市静安区万荣路1268号 公民身份号码 |
1~2s |
- 效率高 - 准确率90%、身份证号没有正确识别 |
通用文字识别
通用文字识别是最常用的功能,但是仍然面临着多角度、多语种的问题, 我尝试使用一张不规则的照片进行文字识别,并且把图片旋转180°,对比了TextIn、鹅厂、熊厂的几款产品,排列规则的图片识别时TextIn和熊厂都可以正常识别,鹅厂效率相对较低,偶尔会出现乱码情况;使用排列不规则的图片识别时TextIn依旧可以100%的识别出其中的文字,鹅厂乱码率高且效率差,无法正确识别其中的文字,熊厂无乱码情况,但识别效率也是低至0%。下列是此次测试图片:
产品 | 识别结果 | 效率 | 效果总结 |
---|---|---|---|
TextIn | ПриветT、Ahoj、Kaixo、Bunǎ、Përshëndetje、Haloo、Прывітанне、Salam等【篇幅限制不全部列出】 | 1~2s |
- 52个单词100%正确识别 - 无重复 |
鹅厂 | 8Mre品d、1mIq81oaedts、oaedts、1oaudu、ouo1d、4、"OAeJpz、-oojeH、"oAepz、eepueused、"ox[e>、"ooeH、reo、oopuusd、wuees、ro1goaedue、reqeqow、glbig26 | 5~10s |
- 效率差 - 0%正确率 - 识别单词个数不足 - 识别出的都是乱码,没有一个正确识别出的单词 |
熊厂 | weles、Sy!OAS、引、⊥ead、IIeH、celleH、ejoH、ollOH、seqe7、Leandu、OIV、elo、eJeL、eung、'oojeH、iolleH、Leandu、引、oaeduc、unoluog、OIIOH、unoluoa、coquold、oAeupz、eung、oojeH、oAeupz、wejes、oxey、Leandu | 1~2s |
- 0%正确率 - 识别单词个数30个 - 30个单词均识别错误 - 有重复 |
印章检侧
印章识别广泛的应用在合同比对、出入库审核和发票报销的场景,之前只能靠人工进行对比,人工成本较高,有了OCR自动识别后可以为企业有效的节约人力成本。不过OCR印章识别技术相对通用的文字识别仍面临着一些难题,如印章形状多样、容易受印章本身的背景干扰,影响识别精确率、印章字体多样等。我挑选了一张同时存在多款印章的图片,其中有的同时包含文字和数字,TextIn可以100%的识别各个印章中的文字和数字;熊厂文字识别准确,在数字识别上出现漏识别现象。下列是此次测试图片:
产品 | 识别效果 | 效率 | 效果总结 |
---|---|---|---|
TextIn |
stamp1 电子印章透明背景 stamp2 电子印章透明背景 合同专用章 |
1~2s |
- 准确识别7个印章,识别率100% - 能识别出印章且同时识别出印章中的文字 |
鹅厂 |
a 发票韦用章 某某税务局 合同专用章 u 财务专用章 |
3~5s |
- 无印章识别功能 - 印章中文字不能100%识别,存在乱码情况 - 识别数量不足 |
熊厂 |
- 1 宽度: 155高度: 153上边距: 3左边距: 184上环主要文字: 电子印章透明背景 - 5 宽度: 184高度: 125上边距: 189左边距: 72上环主要文字: 一电子印章透明背景其他位置文字1: 发票专用章其他位置文字2: 331234567898 |
3s |
- 识别率90% - 印章中存在数字的情况下有漏识别情况 |
增值税发票识别
增值税发票包含的信息较多,在国内同样面临着种类繁多的难点,而且发票中不是单纯的汉字,若在报销过程中财务手动录入发票信息,一方面降低了效率,而且错误率高,财务需要多次确认才能最终录入企业系统。查看了三款服务商,鹅厂没有提供该功能,TextIn和熊厂效果接近,100%的精准度和2s左右的识别效率,结果以TextIn为例,它可以支持多种票据类型的字段结构化【如价税合计、发票代码、发票号码、合计税额、合计金额、检验码、开票日期等】。
字段名 | 信息内容 |
---|---|
发票专用章存在性判断 | True |
盖章存在性判断 | True |
子类型 | 非通用电子发票 |
密码区 | 03<>392957+714<9**20</520>06>4<->9*<8<>865433648-128<52984543<22-5314/+><8/*++458-90->+010-/190700/6+3++ |
校验码 | 0100710100***32020100 |
火车票识别
火车票也是我们报销时经常使用的一款票据,鹅厂和熊厂均未提供相关的功能,TextIn可以精确的识别检票口、出发地、车次号、乘车时间、乘客信息等信息,识别在2s内,精确率可以达到100%,识别效果如下:
字段名 | 信息内容 |
---|---|
火车票红色编码 | G000001 |
检票口 | A27 |
出发地 | 郑州东站 |
车次号 | G0000 |
目的地 | 北京站 |
乘车时间 | 2019-01-01 00:00 |
座位号 | 01车01F号 |
价格 | 190.0 |
座位类别 | 二等座 |
乘客身份证 | 1234567890****0000 |
乘客名称 | 王小合 |
火车票ID | 30000300***110A000001 |
发票代码 | 30000**0500110 |
发票号码 | A0**001 |
自建还是第三方建议
建议自建情况
- 图像识别是公司的核心竞争力产品
- 公司有充足的人力物力需要掌握这项关键的技能
建议使用第三方产品
- 图像识别不是公司的核心竞争力产品
- 公司未有专门的人力物力来做
总结
- 在主导建设自有图像识别平台过程中,自己对图像识别有了更加全面深入的了解,并不断发现问题解决问题,不断成长;
- 术业有专攻,大部分情况下第三方成熟的平台比自研靠谱,自研需要投入大量的人力物力来保障识别的准确,稳定,高效;而TextIn在该领域深耕16年,有丰富的经验可以赋能我们业务;
- TextIn平台提供了在线的体验中心【无需注册账号、快速上手】;熊厂部分产品可免费体验,其余部分需要用户购买才可试用,对新手不友好。
- TextIn产品种类繁多、功能丰富;试用了几款识别功能基本都达到了100%的识别精度;熊厂产品精度达到90%以上,但是存在漏识别的情况;鹅厂产品乱码率高。且合合信息科技股份有限公司旗下智能文字识别云服务平台TextIn对开发者友好,每一个功能都有针对多个语言的API文档、示例代码和线上调试功能;鹅厂功能简单,没有提供线上调试功能和示例代码,对新手开发者不友好;
图像识别平台建设之路(自建+三方产品)相关推荐
- 魅族大数据可视化平台建设之路
本文是根据魅族科技大数据平台架构师赵天烁3月31日在msup携手魅族主办的第十二期魅族技术开放日<魅族大数据可视化平台建设之路>演讲中的分享内容整理而成. 内容简介:本文主要从现状& ...
- 滴滴工程效能平台建设之路
这是 2020 年滴滴 EP 研发效能的分享,出自滴滴技术公众号,现在看依然高价值.周凡,我在滴滴 EP 的老板,前谷歌工程资深工程师,前滴滴研发工具负责人.多开开天眼多看看别人做的,站在巨人的肩膀上 ...
- 东方金科基于开源的开发平台建设之路
李家智 ,就职于东方金科,现任架构师一职.作为行业享有盛名的大咖,李家智行事低调,对工作热情饱满,多次受邀作为嘉宾出席各类大会,并发表了精彩演讲.2018年10月17日,李家智 受邀参加了由IT168 ...
- 网易大数据基础平台建设之路
来源 | DataFun Talk 作者 | 蒋鸿翔 声明:本文摘自网易蒋鸿翔老师在DataFun社区上的技术分享<网易数据基础平台建设>,从数据库内核到大数据平台底层技术开发,分享了网易 ...
- 联营结算平台建设之路
联营结算平台概述 线下店的经营方式,一般分为自营.联营.和租赁模式.所谓联营模式,就是商家借用线下店门店内部场地进行经营,由线下店门店统一管理的经营模式. 本文档旨在给出一种联营模式下商家结算的业务通 ...
- 从汽车之家效能平台建设看汽车行业研发数字化之路
在促消费优惠政策.新能源汽车产品日臻成熟等多方利好下,国内汽车行业正处于持续增长:截至2022年9月底,全国机动车保有量达4.12亿辆,其中汽车3.15亿辆,连续三个月新增量超200万辆,每月汽车产销 ...
- 车路协同云控平台建设实践
前言 随着汽车工业水平飞速发展,以及 IoT.5G.V2X 等信息通信技术的发展演进,通过汽车的智能化.网联化升级为大众带来更智能.更便捷的驾乘体验,成为汽车行业的发展趋势,自动驾驶.智能网联汽车成为 ...
- 行业观察 | 从公共数据平台建设运营出发,探索政府数字化改革之路
栏目语 随着数字化浪潮不断向前涌进,企业正面临前所未有的历史机遇与挑战.面向"数据定义未来"的新时代,如何数字化转型成为各行各业的关注焦点. 数澜科技开设「数智观察」栏目,聚集企业 ...
- 从“石器时代”到“超越时代”,阿里 OTT 大屏前端建设之路
作者 | 阿里文娱前端技术专家-默吉 责编 | 郑丽媛 头图 | CSDN 下载自视觉中国 转眼间2020年已过半,我投身到OTT端开发已经5年有余,回首OTT端(酷喵APP)前端建设历程,感慨良多. ...
最新文章
- 2021年大数据Flink(十三):流批一体API Sink
- HarmonyOS 实现跑马灯效果
- 栈与队列7——单调栈结构(初阶问题)
- Spring Cloud Edgware新特性之一:解决Eureka中Jersey 1.x版本过旧的问题-不使用Jersey
- mysql 常见存储过程,MYSQL存储过程
- OVS vswitchd启动(三十七)
- Hibernate 统计记录总数方法汇总
- 只因这个模型,它 1 年增长 44%,收入达 2.15 亿美元
- C++的查看指针指向空间的所在的区域(是堆还是栈或者静态)和大小
- 属性总结(二):color
- java 标准输入流 关闭 打开_java输出流关流疑问,以下这个程序的in和out是否要关闭?...
- 7007.svg用法
- 【杂谈】excel列表创建后,怎么删除蓝色边框线?
- 模拟登录幸运抽奖(java)
- 显著性水平 P值 概念解释
- f(f(x))=-x, 纯数学理解
- 使用 dfuse 无缝过渡到 EOSIO 1.8
- android room 主线程,Android Jetpack之Room篇
- 【数模/预测】灰色预测
- CF19E Fairy (奇偶环,树上差分)