本人从事人脸识别相关工作(2017年底刚刚离开该行业),这一波人工智能的投资风起来,很多人脸识别公司恨不得马上往自己脸上贴几吨金,有个朋友说了一句很有意思的话:
外行一般觉得很科幻,内行一般觉得很绝望,业界领袖和领袖各种打鸡血。
大部分AI公司都在烧钱阶段,未来变现有很大的不确定性。看看百度自动驾驶的系统和google图像识别系统的开放可以预知未来免费是大趋势,那可是曾经投入数百亿美元。但是资本投进来,必须拉着媒体一起吆喝,不然本都回不了(进入AI行业才知道很多资本方原来什么也不懂乱投)。
人脸识别作为一项模块技术很少有独立应用(独立的业务层设计),大部分只是为已有的业务软件体系上做增强,比如客户人脸校验(在过去密码基础上增加一层),人脸检索(比人工高效,摄像头结果过滤),相似人脸推荐(比如婚介社交,整容设计),不过这个过程中已经死掉大量公司,因为利润太少,非强需求。
目前相关产业公司在已知的主要商业模式中都在实践,但卖货,卖授权,卖服务,后台流量变现这四大商业模式中,都没有看到一个公司有。作为行业中人,所谓的绝望无非如下:
1. 算法再好,也只是调味料,最终出路还是做到最终产品中,通过业务层叠加开发,形成产品和方案,更多时候是一个方案服务商,更像过去传统软件商,规模难有爆发。
2. 使用门槛、成本很低,目前市场上终端算法部署比较低端的产品授权就500元/套(1:1的远程接口调用所使用的前端授权),市场竞争的结果就是低价倾销。
人脸识别目前就是为了各种噱头立项、经费申请瓜分用的,有个公司靠这个拿国家各种科技补贴。真正赚钱都是那些中间商公司,人脸识别一家都没有。至于未来有没有新商业模式出现,暂且无法推断。
题主问题比较宽泛(到底是盈利强,还是算法强,还是应用强?),人脸识别技术的衡量维度太多,但从技术比较,比如图像比对级的1:1,1:N,N:N;衡量的标准和维度都不同。比如算法精确度上,国内国外的人脸识别技术大多数在开源OPENCV等开源库上进行新规则添加(深度学习进行叠层运算),公司之间的识别正确率差异仅仅在小数点上,99.6%-99.7%提升意义不大,如果说在LFW上称王称霸就是世界一流,就要被内行笑话了。
衡量人脸识别的算法能力几个指标:拒识率、误识率、通过率,准确率。
先看看人脸识别的基本流程:
人脸识别最难的部分是有充分适应各大光线环境的人脸预处理算法,需要在各种复杂的光线环境中提取到人脸信息,特别是移动互联网时代,摄像头拍照的地方可以在斑驳的树影下,也可以在昏暗的街灯下,以及深夜出租车内,这对算法的鲁棒性考验极大。同时还要考虑照片和视频欺诈,二次成像的光线污染等问题。
下面说一下目前人脸识别的常见问题(不要再问人脸识别准确度了,这个是外行话)。
1:1人脸识别算法主要用于身份验证
1:1人脸识别技术主要是利用图像处理技术从图像中提取人像特征点,利用生物统计学的原理进行分析建立数学模型,即人脸特征点模型。再从人脸特征点模型与被测者的人的面像进行特征分析(可以假定为无数的几何特征点求解),根据分析的结果来给出一个相似值,通过这个值即可确定是否为同一人。简单的说就是A/B两张照片比对,产生的计算数值是否达到要求。
这个值我们称之为阈值,可以从1到100(100就是极端严苛)很多人脸识别公司说他们的产品很容易通过,那只说了一半,如果阈值调整到5以下,几乎大部分人都可以是相似的,而调整到95以上,同一个人在不同的背景环境拍出的照片都无法匹配。所以当一公司跟你吹牛算法准确度,先问下使用的是用什么阈值,同一人脸比对通过率,非同一人比对通过率。
1:1主要用于快速的人脸识别比对,作为身份确认的一种新方式,比如考生身份确认、公司考勤确认、各种证件照和本人确认,由于这些照片源不一定有权威统一的接口调用,所以一直没有用起来。目前市面上做的比对来源主要有三种方式:
1. 用户自传照片,比如支付宝的人脸比对,用户自传的照片最大的问题是照片质量的合格率太低,拍照的光线、角度等因素会导致采集源的质量下降,不利于后期的大批量人脸特征码管理。
2. 使用身份证读卡器,读取身份证上的照片,遗憾的是这张照片的质量极差,2K的大小,很多照片上的人脸质量实际非常差,不过也是目前用最多的方式。
3. 使用公安部旗下NCIIC的人脸比对接口(注意,不是网纹照片接口,这个接口已经不对外),使用的是直接的人脸比对接口。目前具备有这个库调用权限的,目前所知的只有几家,在人脸识别公司中,好像只看到一家在提供,这里先不提了。BAT应该都还没有接入,如有大家有新发现的可以补充。
实际上,解决比对源的问题的关键是需要有权威的照片数据来进行比对,许多公司刚刚开始的时候采取NCIIC(公安部的一个事业单位)身份证返照接口的照片,进行消网纹处理进行比对,但人脸的很多特征点被损毁成功率大概只有6成(根据六月份发布的网络安全法,目前网纹返照接口市面上除了银行系统可以使用外,其他所用的身份证返照接口都是非法的,一用就被查)。
无证件的情况下,如何确认本人是XX?
曾经有一些问题是关于如何确认本人的笑话,派出所要求一个小伙证明就是本人,证明你妈是你妈。。这种奇葩问题,但是许多陌生场合也有这种尴尬,你如果没有带证件,警察无法看到你的照片,如何确认你就是XX就是之前经常出现的执法矛盾;如果一个人把身份证弄丢了,外面风雪交加,如何给这类人办理酒店入住手续?这些就是身份确认的问题。公安部推身份证网上副本 身份认证可“刷脸”完成就是用来解决这个问题,我们出门不用完全依赖身份证可以确定身份,可以方便很多。
但是1:1人脸算法的巨大隐患是我们随处可见的人脸,实际就是一个公开的钥匙,马云提出刷脸消费吃饭,如果没有手机验证码(本身也是一重手机实名验证),分分钟钟被吃垮。但是既然可以用手机,为什么还用刷脸,不是多此一举吗?
另外还有一些高级会所,希望实现VIP的贵宾警报服务,这个在下面的1:N和N:人脸识别算法系统中可以看到。但是1:1比对的身份应用哪家强了?
比如远程的互联网客户,如何确认身份?
在互联网买机票、车票,医院挂号,政府惠民工程项目,以及各种证券开户、电信开户、互联网金融开户都会用到。过去的身份认证方式是非常不妥的(比如支付宝的持有注册流程,还有一些不知名的社交APP等需要上传身份证照片),这些资料是极其容易被盗取和转卖的,下图是来自百度的图片搜索结果截图,还有最近的一些女大学生的裸条资料泄露知乎专栏,导致犯罪分子有很多利用的漏洞,黑客军团号称资料2000万,分分钟钟薅干一家金融平台没有问题:
许多金融公司喜欢把人脸识别SDK模块嵌入到APP当中,但这个太容易绕过,所以会再加上活体检测(市场上常见的活体检测为随机动作配合),但是即便加了活体检测,也一样可以绕过。比如下面这两种方式:
3D人脸仿真面具
2. 人脸模型实时重建
所谓道高一尺魔高一丈,这个还是增加其他的多维校验才能确认身份,否则真有人要进行远程攻击,也不是很难的事情。那么活体检测哪家强了?
1:N人脸识别算法主要用于人脸检索
跟1:1的A/B两张照片比对最大的区别是A/B A/C A/D……多个1:1计算,这个最大的问题是一旦BCD总和数量越大计算速度越慢,而总和超过20万,就回出现多个相似结果(20万人这个大数会导致有不少人长相相似),需要人工辅助定位。过去我们在电影里面看到什么“天网”识别系统只是一种理想状态,实际应用中都是排列出多个结果,排第一的未必是需要的人。
1:N人脸识别算法主要用于排查犯罪嫌疑人、失踪人口的全库搜寻、一人多证的重复排查,以此相似度列出相应的结果,可以大大提高排查效率。类似的也可以用到走失儿童的项目中去,相比美帝的亚当警报、安珀警戒,国内有没有类似的儿童走失警报及寻找机制? - 安全 - 知乎
这一类系统的部署需要两个条件:
1. BCD基本库(比如1000万人)
2. 强大的算法硬件
1:N同时作业就是N:N了,同时相应多张照片检索需求,检索耗费的时间跟硬件算法关系极大,就这一领域的应用,又哪家公司强了?
N:N人脸识别算法主要用于实时多1:N检索计算:
N:N 该算法实际上是基于1:N的算法,输入多个求解结果。比如视频流的帧处理所用,对服务器的计算环境要求严苛,目前的算法系统所支撑的输出率非常有限。
主要的限制如下:
海量的人脸照片解析需要大量运算(目前很少看到在采集端直接解析的,都是照片剪裁)
海量的人脸照片传输需要大量的带宽(常见的720布控摄像头抓取最小的人脸照片为20K)
海量的人脸照片在后台检索需要耗费大量的运算(国内主流主机为例,最多到24路摄像头)
由此可见,真正实现“天网”人脸检索,一来要解决数亿摄像头的图片处理,二来需要解决联合库的超算检索,这可不是一般公司吃得消。有些小区和高级场所,对VIP客户的识别和接待比较喜欢这种视频校验方式,但是实际部署使用者会受到摄像头位置、角度,以及多人同时入场产生的问题,而且人脸库会非常有限,不然计算时间长,体验极差,一些所谓的迎宾机通常也就几个人的照片(就是纯粹给领导看的),实用价值大大的打折扣,有戴墨镜或者帽子遮蔽都认不出,毕竟关键特征取样有限。这又有谁强了?
拍照和直播APP的人脸图像叠加
国内比较多的娱乐APP通过对人像图层跟踪处理,也是一个不错的技术切入点,但是产品安装包会比较大,现在做的也只是跟踪技术,属于底层识别,如果复杂一些的需要通过云服务实现,但是服务器算法解析速度和带宽比较难以跟上,也不算是一种靠谱的商业模式。
人脸识别的技术发展方向:
结合三维信息:二维和三维信息融合使特征更加鲁棒
多特征融合:单一特征难以应对复杂的光照和姿态变化
大规模人脸比对:面向海量数据的人脸比对与搜索
深度学习:在大数据条件下充分发挥深度神经网络强大的学习能力
在视频级N:N的校验中,如果要提高通过率,很多时候是采取降低准确率的方式,降低算法队列数量;同样在一些比赛中为了降低误识率,大大提高了准确率,所以算法在校验的过程中必须遵循至少一个固定标准,追求的是速度效率还是最高准确率。
人脸识别应用的发展方向
人脸识别这玩意儿就是一个调味料,在千万的业务解决方案中,就是一个小模块,其他的都是业务层的开发问题,使用上,技术也未必要高精尖,如果一定要真正称得上人工智能组成部分的,个人认为未来最大的使用端是机器人视觉交互。
人脸识别算法的应用分类派系:
人脸识别对应解决方案方向:
个人认为未来人脸识别会让大部分的数据更加真实,而可以通过社会工程学模板做很多分析和改良,比如近期一些科学家利用人脸识别来分析一些人的健康、清晰,甚至是犯罪倾向,或许在未来还可以结合大数据,对我们过去传统的面相分析技术做一个全新的提升,到时候算命先生都要失业了。更多机器人交互、无人机产生的摄像目标锁定分析等科幻画面并不是多遥远的事情。
关于算法核心研发情况的争论:
基本上国内每家公司都会说自己的算法牛,实际上有几家有人脸核心算法呢?国内在完全从事算法研究的总工程师人数到目前(2016年)总计不到100人,不过也没有现在问题也不大,中科院计算所山世光教授已经开源了:https://zhuanlan.zhihu.com/p/22451474,没有基础的公司不用太辛苦从零开始在OPENCV基础上做算法升级,相信很快google微软还会有新的算法发布。现在算法基本都是98%以上,这点差距已经不重要,算法核不核心也没有太大问题。大家不用太过于焦虑,产品到应用阶段,单单靠算法可不够,还要考虑实际的使用。
目前做人脸识别的公司很多,集成应用的有数百家,国内的看百度,看融资,看各种报道就差不多了,只是认真沉下心来做事情的公司太少。国内的腾讯和阿里都在做(阿里支付宝用的是自己的团队研发算法,只是特别低调,把名声都留给自己投资的公司,阿里可不止投了一家),国内的公司吹牛逼的、炒概念的太多,就不聊了。
美国Identix公司
美国Bioscrypt公司
德国Cognitec Systems公司
西班牙Herta Security公司
日本NEC公司
日本Softwise公司
以上都是老牌人脸识别公司,美国Identix公司做的是多模认证(指纹、虹膜),而Bioscrypt公司早期起于指纹识别考勤,在政府市场的份额都不小,德国的Cognitec公司主要做政府项目的人脸识别系统,而NEC公司主要做机器人视觉识别系统,西班牙Herta公司是一家学术很浓厚的公司。此外的还有一些以色列公司技术。这些公司几乎做的都是政府的安全项目,但公司普遍规模都很小,盈利和投资也很少见报道。Facebook公司进入这个领域,主要是进行人群的分类和应用的优化(针对性的市场推广),项目都是作为公司原本业务的一种补充。
所以这个问题到了最后,我只能说:
如果非要问人脸识别哪家强,不如问哪家公司吹牛逼强。