进入AI领域做产品 —— 我的自学之路(CV-人脸识别)
图像和视觉处理 —— 计算机视觉概述
计算机视觉,即让计算机去模拟人类的视觉系统,来获取并理解图像中的信息。
现在世界上每天产生的数据70%都是以图像或视频的形式呈现,同时世界上的摄像头数量已经过亿,每天存储的视频时长超过了8亿小时。但是,被有效利用的图像、视频数据仍不到20%。
随着深度学习的发展,虽然数据被利用的程度越来越高,以往处理图像的手段得到了升级,但是计算也开始变得更加复杂,这也决定了“当下的发展”始终被限定在语义鸿沟之中。
因为生物获取视觉信息的推理过程更为简单、高级,计算机视觉的推理进化仍需要走很长的一段路。
回到正题,这一节先对计算机视觉的几个主要任务进行认知。
检测与定位
确定是否有目标存在、目标在什么位置以及其包含的关键点坐标,如人脸关键点检测、人体关键点检测:
- 人脸关键点检测,通过人脸轮廓、器官节点的组合和追踪来识别人的面部特点,是人脸识别的基础;
- 人体关键点检测,通过人体关键节点的组合和追踪来识别人的运动和行为,对于描述人体姿态,预测人体行为至关重要,是诸多计算机视觉任务的基础,例如动作分类,异常行为检测,以及自动驾驶等,也为游戏、视频等提供新的交互方式。
分类
对生物、物体、文字符号进行类别判定后映射到一个标签,如图像分类、视频分类:
- 图像分类,通过对不同类别图像,以图像的语义信息进行区分,是计算机视觉中重要的基础问题,也是物体检测、图像分割、物体跟踪、行为分析、人脸识别等其他高层视觉任务的基础;
- 视频分类,是视频理解任务的基础,与图像分类不同的是,分类的对象不再是静止的图像,而是一个由多帧图像构成的、包含语音数据、包含运动信息等的视频对象。因此,理解视频需要获得更多的上下文信息,不仅要理解每帧图像是什么、包含什么,还需要结合不同帧,知道上下文的关联信息。
分割
分割任务主要分为实例分割和语义分割,实例分割是物体检测加上语义分割的综合体;
语义分割,是将图像像素,根据其表达的含义的不同进行分组/分割:
- 语义是指对图像内容的理解,描绘出什么物体在哪里做了什么事情等;
- 分割是指对图片中的每个像素点进行标注,划分其类别;
- 近年来,语义分割被用在无人驾驶技术中分割街景来避让行人和车辆、医疗影像分析中辅助诊断等。
计算机视觉 —— 人脸识别
人脸识别是当下计算机视觉中应用最热门的一门技术,其执行了检测定位、识别这几个关键任务来达到对人脸的高效辨认,解决了几个关键的问题 :
如信任——手机相信了你是主人后让你解锁、关卡相信了你是具有许可的人后让你过关、银行系统相信了你是诚信用户后…
定位——摄像机看到你之后告诉监控系统你在哪…
所以接下来,我将尽量对所有涉及到的概念进行比较详细的描述,通过在了解人脸识别技术点的过程中更好的去理解计算机视觉概念之间的联系。
概念
人脸识别技术即计算机通过对采集到的包含人脸的数据进行处理之后,达到分类的目的。
瓶颈
首先,人脸识别的“发展趋势”亦是朝着“智能化”——推理、“人性化”——理解,的方向发展的,而现在的“瓶颈”也正是因为人脸识别对于人脸的推理能力不足导致的——特征依赖程度高。
回顾之前“瓶颈”的概念瓶颈”是促成“当下的发展”的因素,而“当下的发展”即是要去突破造成瓶颈的“限制条件”;
数据质量限制:
-
图像质量:
- 大多数情况下,实际采像质量远低于训练图像质量,即使算法模型可以达到很高的精确度,但由于采像图片质量不好的原因,实际效果会大打折扣甚至不可用,造成采集质量的问题如下:
- 光照影响:过曝、过暗;
- 模糊:运动对焦;
- 分辨率:大场景小样本。
-
现在如何克服:
- 提升硬件:
- 提升摄像头精度;
- 对摄像头进行补光/滤光。
- 改变环境:
- 将摄像头固定在角度合适的位置;
- 要求目标配合。
- 利用算法:
- 对图像进行预处理。
- 大多数情况下,实际采像质量远低于训练图像质量,即使算法模型可以达到很高的精确度,但由于采像图片质量不好的原因,实际效果会大打折扣甚至不可用,造成采集质量的问题如下:
-
图像维度:
- 人类的视觉系统获取的是3D的信息,而现在的人脸识别技术是基于2D图像的识别——2D图像包含的特征是有限的、是没有深度的,存在很大的被攻击的风险。所以,人脸识别常被质疑安全性不够高,很多人脸识别的产品都能被轻易**;
- 为了突破这个限制,即如何获取更精准、全面的信息来保证安全,3D成像技术正随之发展,这一项技术被应用在活体检测上来提升人脸识别的性能;
-
活体检测:
- 非活体:
- 同一人照片;
- 同一人视频/人脸模型重建;
- 现在如何克服:
1). 依照系统随机指令做出动作;
2). 3D人脸识别。
- 伪活体:
- 相似人;
- 3D人脸仿真面具;
- 人脸模型实时重建。
- 现在如何克服:
1). 人脸识别技术和其他生物识别技术相结合,例如人脸识别+指纹识别、人脸识别+虹膜识别等等;
2). 3D人脸识别:由于其点阵投影器、泛光照明灯的特性,可以对其人脸肤色与其它材质有较好的区分性。
-
数据噪声/体量:
- 训练算法时,算法性能将受制于被标记数据的质量和数量,若无大量、优质的细分应用场景数据,该特定应用场景的算法迭代很难实现突破:
-
现在如何去克服:
- 细分场景数据量:找到细分场景并不断积累;
- 噪音:
- 打标方式的选择:
- 图像中圈出对应目标:F1值最高;
- 从图像中选出包含目标的图像;
- Y/S法判断是否为目标:F1值最低。
算法限制:
本质是因为当前算法难以突破语义鸿沟,而以下两点问题当下尤为明显:
-
对监督学习的依赖:
- 需要精准的打标方式,比如圈出对应图片中对应目标的脸才能为学习提供一个良好的养料;
- 目前这是所有机器学习问题难以跨越的难关,虽然“没有免费的午餐”,但是在计算机视觉方面能够做到无监督学习才能迈向真正的“智能”。
-
对特征完整性的依赖:
-
识别原理:
- 人脸图像的特征映射得到特征空间;
- 人脸识别在比对的时候,即比对两个人脸的特征空间,距离过远则判定为不相似。
-
原因:
- 人脸是具备多变性的,如表情、姿态等导致人脸特征点距离真实位置偏移过大,算法初始化时的特征点不够鲁棒。
- 姿态变化;
- 表情变化;
- 年龄跨度:
1). 随着人的生长、面部的五官比例、皮肤都会发生变化,这些变化使得人脸识别特别困难。 - 遮挡。
-
现在如何克服:
- 工程角度:研发质量模型,对检测到的人脸质量进行评价,质量较差则不识别;
- 应用角度:要求配合;
- 算法角度:
- 概述:
1). 基于特征点初始化问题,利用深度学习方法粗略计算特征点,再结合几何重投影法来计算精准位置。 - 思路:
1). 使用深度卷积网络粗略估计特征点位置,结合3D人脸姿态估计与重投影确定特征点初始位置,然后使用经典的回归树集成方法提精位置;
2). 通过深度学习+几何重投影方法初始化,结合传统特征点定位的回归模型ERT,在各个数据集上几乎都达到了最好的性能。 - 实现:
1). CNN模型计算每个特征点概率图,取最大相应的位置为特征点位置;
2). 计算3D人脸模型,通过POSIT计算人脸3D姿态,并将3D特征点使用计算得到的姿态矩阵重投影到人脸图像中,作为下一步的特征点提精的初始位置;
3). ERT非刚体形状估计,改进传统回归树模型由粗到细迭代计算特征点位置,直至算法收敛。ERT的特征提取使用快速的FREAK像素比较二值特征。
-
识别原理:
当下的发展
数据采集:
-
成像水平:
- 低分辨率的摄像头将逐渐被取代为高清摄像头,为人脸识别的准确性提供更好的基础;
- 2D摄像头将逐渐被取代为3D摄像头,为人脸识别的安全性提供更好的基础。
数据传输:
-
数据存储方式改变:
- 数据存储方式转变,存储趋向云端化;
- 今后的数据无需再从DVR之类的录像存储设备转出再处理,获取的图像直接存储云端并进行实时计算。
处理方式:
-
现在视觉落地的方式的改变:
- 边缘计算;
- 云端计算。
- 云边结合:
- 随着5G的发展,边缘和后端可以很好互补或是结合,使产品具有边缘的灵活又有云端的强大算力;
- CV的应用场景将更加丰富、灵活,且运算更加高效。
- 移动场景下,边缘计算为后端计算提供了更高的效率基础,并且因为网络的进步,实时性不再成为瓶颈,例如一些有移动需求的关键场景、要求更高的非关键场景;
- 举例 —— 巡逻机器人/车:
- 城市场景,5G网络环境覆盖;
- 在移动情况下执行大规模的M:N比对、报警,即具有机动性的能力同时具备对大量目标的分析计算能力;
- 对平安城市的建设具有很大意义,减少了人员的执勤,并极大提高了效率。
算法的迭代:
- 朝着更少的特征去发展,算法自动计算出缺失特征来达到识别的目的;
- 朝着更少的监督去发展,算法自动学习无打标数据的能力越来越强;
- 朝着更开放的环境去发展,AI要求外界的配合程度越来越少。
技术边界
基于现在难以突破的“限制条件”,形成了技术边界,即能做什么、不能做什么。
能做什么:
- 能基于大部分完整的人脸图像,做出辨认、分类;
- 能基于识别的人脸,对目标进行跟踪。
不能做什么:
- 不能在无光、弱光环境做出准确识别;
- 不能在非正常体态(头部侧位)、正常表情、大部分遮挡的情况下做出准确识别;
- 不能对非活体做出准确识别。
前沿研究
成像技术 —— 深度摄像头(3D传感器):
-
概述:
- 能够测量视野内空间每个点的深度数据,把握三维结构,使得检测、识别、跟踪等任务变得更加可靠,当前的技术分为结构光、双目视觉、飞行时间法。
- 能够测量视野内空间每个点的深度数据,把握三维结构,使得检测、识别、跟踪等任务变得更加可靠,当前的技术分为结构光、双目视觉、飞行时间法。
-
结构光:
-
概述:
- 通过投射器发射特定图形的散斑或者点阵的激光红外图案;
- 摄像头捕捉被检测物体反射回来的图案,计算上面散斑或者点的大小;
- 然后通过三角测量原理与原始的尺寸作对比,从而测算出被测物体到摄像头之间的距离。
-
编码结构:
-
直接编码:
- 根据图像灰度或者颜色信息编码,需要很宽的光谱范围;
- 优点:对所有点都进行了编码,理论上可以达到较高的分辨率;
- 缺点:受环境噪音影响较大,测量精度较差。
-
时分复用编码:
- 的该技术方案需要投影N个连续序列的不同编码光,接收端根据接收到N个连续的序列图像来每个识别每个编码点;
- 优点:
- 测量精度很高(最高可达微米级);
- 可得到较高分辨率深度图(因为有大量的3D投影点);
- 受物体本身颜色影响很小(采用二进制编码)。
- 缺点:
- 比较适合静态场景,不适用于动态场景;
- 计算量较大(因为识别一个编码点需要计算连续N次投影)。
-
空分复用编码:
- 根据周围邻域内的一个窗口内所有的点的分布来识别编码;
- 优点:适用于运动物体;
- 缺点:不连续的物体表面可能产生错误的窗口解码(因为遮挡)。
-
-
整体优点:
- 精度高:
- 技术成熟,相比较双目摄像深度图像可以做到相对较高的分辨率;
- 结构光投影图案一般经过精心设计,所以在一定范围内可以达到较高的测量精度;
- 结构光法不依赖于物体本身的颜色和纹理,采用了主动投影已知图案的方法来实现快速鲁棒的匹配特征点,能够达到较高的精度,也大大扩展了适用范围。
- 室内适应度高:
- 由于结构光主动投射编码光源,因而非常适合在光照不足(甚至无光,尤其是夜间)、缺乏纹理的场景使用。
-
整体缺点:
- 室外太阳光包含红外,会造成干扰:
- 室外环境基本不能使用。这是因为在室外容易受到强自然光(超过2000Lux)影响,导致投射的编码光被淹没。
- 红外受距离影响衰减:
- 物体距离相机越远,物体上的投影图案越大,精度也越差,相对应的测量精度也越差;
- 所以,基于结构光的深度相机测量精度随着距离的增大而大幅降低;
- 因而,往往在近距离场景中应用较多。
- 延迟:
- 由于结构光捕获三维信息时有一个短暂的多帧相位信息融合,对于持续移动和快速移动的人脸识别精度会大大降低。
- 受反光影响:
- 容易受到光滑平面反光的影响。
-
发展趋势:
- 3D人脸识别的发展。将来人脸识别将应用3D结构光技术,3D技术可有效解决2D的人脸防伪问题,更可以很好的验证人脸的唯一性;
- 3D人脸信息采集的发展。3D结构光的3D人脸应用中,最大缺陷是缺乏3D人脸的底库,需要一个一个的采集后才能够形成3D人脸库,但是随着3D的发展信息采集也终将会发展起来。
-
应用场景:
- 手机摄像头;
- 人脸门禁系统。
-
概述:
-
双目视觉:
-
原理:
- 用两个摄像头模拟人眼来获得信息,整体由两个单目相机组成(两个相机之间的距离叫“基线”是已知的),通过这个基线来估计每个像素的空间位置来测量物体与我们之间的距离,克服单目相机无法知道距离的缺点;
- 双目相机测量到的深度范围和基线有关,基线距离越大,能够测量到的就越远;
- 双目摄像机具备一定的深度探测功能,有一定的深度,但属于被动方式。
-
优点:
- 硬件成本最低;
- 分辨率高;
- 精度较高:近距离内能够达到高精度0.01mm-1mm。
- 抗光照能力强;
- 可用于室内也可用于室外。
-
缺点:
- 性能较低:
- 实时性差,且实时性是当前主要问题;
- 运算量大、分辨率和精度要求越高则计算越复杂。
- 开发难度高:
- 体现在配置与标定较为复杂。
-
应用场景:
- 人脸门禁的活体检测;
- 防伪。
-
原理:
-
飞行时间法:
-
原理:
- 发射激光根据反射时间差计算距离,即测量发射红外信号与相位延迟计算每个Sensor像素到目标物体的距离。
-
优点:
- 抗干扰强:
- 精准度和稳定性较好;
- 适用于室外环境。
- 开发难度低;
- 实时性强;
- 发展空间大:
- TOF虽然目前精度在厘米级,比Leap Motion等毫米级要低,但目前的设备已经比Leap Motion等更小也更便宜;
- 未来可以做到更小,能够植入移动端。
-
缺点:
- 性能不高:
- 功耗高;
- 体积大;
- 发热量大。
- 成本在三种方案之中最昂贵;
- 精度低:
- 厘米级精度。
- 空间分辨率低运动模糊。
-
应用场景:
- 物体测距。
-
原理:
活体检测技术:
- 3D人脸识别之外,比如将语音识别与基于视频的唇语识别相结合,确保远程核身的安全性。
人脸物理性质的推理:
- 基于图像或视频的三维人脸重建;
- 光照与反射率估计;
- 光照归一化处理;
- 人脸姿态的估计与矫正以及基于颜色变化分析的心跳频率估计。
人脸语义上的推理:
- 基于视频中时空一致性的人脸检测与人物跟踪;
- 基于视频的三维人脸特征点定位与跟踪于在唇语识别上的应用;
- 跨年龄与三维的人脸识别;
- 基于图像视频等可视媒体信号的人脸验证和与基于语音信号的声纹识别相结合。
人脸识别优缺点
优点:
- 非接触性(不用肢体接触);
- 非强制性(路过即可,甚至无察觉);
- 可并发性(可同时进行多个人脸的分拣、判断及识别)。
缺点:
- 同技术边界;
- 不能在无光、弱光环境做出准确识别;
- 不能在非正常体态(头部侧位)、正常表情、大部分遮挡的情况下做出准确识别;
- 不能对非活体、伪活体做出准确识别。
产业链
概述:
基于“产品认知”章节的观点,了解自身所处在循环中的位置很有必要。
所以要从产业链中找到自己产品对应的环节,观察前后环节对自身的影响并横向对比在同一环节中的竞争对手状况,来更好的去对自身循环进行控制。
为了保证自身循环的良好运转,了解的内容有:
- 上下游议价能力、实力、效率、威胁;
- 同游实力、效率、威胁。
上游:
- 高清摄像头;
- 芯片;
- 传感器;
- 服务器;
- 数据计算以及传输。
中游:
- 图像识别软件厂商。
下游:
- 解决方案提供商;
- 用户;
- 维修保养等服务。
重点落地行业
计算机视觉目前主要落地于安防、金融、零售,这三个行业在后面的章节进行分析。
实现
系统架构:
-
边缘计算:
-
概念:
- 人脸识别和比对均在前端完成,后台只负责任务调度和告警后处理。
-
优点:
- 轻量化部署;
- 对传输的要求低,甚至可以做到微波传输;
- 强大的前端也可以变得更加便携,集成在移动巡逻车上,单兵设备上,甚至民用级无人机上,应用场景被极大的拓展。
-
缺点:
- 前端受体积和功率限制;
- FPGA的算力和扩展性毕竟无法与专业GPU计算卡相比,而把专业的GPU计算卡放在前端,数量和功率都将受到极大的限制。
-
应用场景:
- 边缘计算的人脸识别方案更适合于少目标、少接入、小场景、要求机动性的业务场景中应用。
-
概念:
-
云端计算:
-
概念:
- 人脸识别抓拍(不带属性检测)可在前端或后端进行,对人脸图片的分析和结构化均交由云端强大的GPU集群来完成。
-
优点:
- 可实现大规模甚至超大规模(百亿级数据)的布控和实时分析,接入视频路数的限制只在于GPU集群的扩展能力,而一般GPU集群都具备强大的横向扩展能力;
- 这一方式对前端摄像机的要求极低(甚至可以采用老旧的模拟摄像机);
- 在平安城市或智慧社区的改造项目中,采用这种方式可以更好地利旧已有前端,并且继续使用已有视频管理系统,对现网的改动小,易于部署。
-
缺点:
- 对传输网络要求较高,如果采用普通视频流摄像机接入,视频网络的压力非常大;
- 后端处理的方式受限于GPU集群的硬件环境,不具备机动性。
-
应用场景:
- 后端集群的人脸识别方案适合于海量目标、海量接入、海量数据、多场景、不要求机动性的业务场景中应用。
-
概念:
图像采集:
-
目的:
- 目的是使被测物的重要特征显现,同时抑制不需要的特征。
-
采集方式:
-
源头采集:
- 对接相机;
- 对接DVR/NVR等录像存储设备。
-
间接采集:
- 开源数据集;
- 第三方企业单位提供;
- 产品/项目积累;
- 用户上传。
- 无论何种获取方式,图像归根结底是通过各类相机产生的,相机选型、架设、调试以及平台对接是前期图像获取的关键。
-
源头采集:
-
相机选择:
- 相机的脑功能决定了图片质量的上限,选择相机需要考虑产品使用场景,并结合相机的功能、性能指标进行综合考虑;
-
监控一体机:
- 专门用于户外的相机,防雨、防雷、防雾、逆光调节、补光、夜视。
-
人脸抓拍机:
- 对人脸抓拍率、识别率要求高则要选用专业的人脸抓拍机;
- 内嵌AI人脸算法,自动捕获进入检测区域的人脸并进行追踪抓拍;
- 优点:
- 可直接输出人脸图片流,不需要再服务器进行检测,降低了服务器的计算压力;
- 具有出色的人脸曝光效果,增强了在逆光下的抓拍效果。
- 缺点:
- 价格高。
- 常用功能指标:
- 智能分析功能:
1). 绊线;
2). 双绊线;
3). 周界;
4). 物品遗留;
5). 徘徊分析。 - 智能报警功能:
1). 遮挡报警;
2). IP冲突;
3). MAC冲突;
4). 存储器满;
5). 存储器异常。 - 支持网络协议;
- 图像处理:
1). 图像增强;
2). 背光补偿;
3). 透雾;
4). 走廊模式;
5). 图像风格可选。 - 彩转黑;
- 强光抑制、背光补偿;
- 本地SD存储;
- 断网续传。
- 常用性能指标:
- 像素:
1). 200万以上为宜。 - 图像分辨率:
2). 主码流最高分辨率需要不低于1080P。 - 宽动态:
1). 室外场景需大于120DB。 - 最低照度:
1). 彩色<0.001 lux;
2). 黑白<0.0001 lux;
3). 越低性能越好。 - 防护等级:
1). 户外IP65以上;
2). 防雷;
3). 防浪涌。 - 功耗:
1). 一般在10W以内。 - 工作温度:
1). 室外30°C——60°C。
-
镜头选择:
-
注意:
- 焦距决定了相机的成像距离,需要根据项目对人脸识别距离要求来选择合适的焦距。
-
变焦:
- 镜头焦距可以手动调节,识别距离更广,也具有更高的适用性。
- 固定焦距。
-
注意:
-
相机架设:
-
俯仰角:
- 要求水平面位于通道中轴线上,并垂直面上有一定的俯视角以照顾不同高矮;
- 避免一前一后通过抓拍区域时后方人脸被遮挡,俯视角α保持在10°±3°。
-
架设高度:
- 基于俯仰角进行计算,设俯仰角α=10°
- 摄像机视角中轴线延伸到人脸下颌位置,保证人脸处于画面中心区域,取成年人下颌以下的平均高度为1.5m(头部长0.2m),可得:
-
架设环境:
- 出入口中间空旷、无遮挡;
- 聚焦清晰、光照均匀,特别注意避免逆光、侧光、必要时进行补光;
- 人脸的俯仰角在15°,左右角在30°以内。
-
画面调整:
- 目的是获得合适的观察宽度;
- 相机像素大小决定了设备可观察画面宽度的范围,过大导致人脸模糊;
- 人脸宽度像素宜大于120,瞳距像素宜大于40。
-
俯仰角:
-
相机对接:
- 大部分人脸识别的场景,是建立在对实时视频流/图片流分析的基础之上;
- 如果想检测一个摄像机实时画面中的人脸,平台就需要先获取相机的实时视频流;
-
网络协议定义:
- 前端相机与平台之间是通过网络连接的,如果想实现对接,就需要平台满足相应的网络协议;
- 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合;
- 简而言之,视频信号传输的规则。
-
网络协议的结构:
-
应用层:
- TELNET;
- FTP;
- E-MAIL。
-
传输层:
- TCP;
- UDP。
-
网络层:
- IP;
- ICMP;
- IGMP。
-
网络接口层:
- 设备驱动程序及接口卡。
-
通过协议接入相机:
- 平台对接相机的目的是获取相机的实时视频流或图片流;
- 一般相机:
- RTSP。
- 人脸抓拍机:
- FTP。
- 国内政府公安类项目,安全级别比较高,会用到ONVIF/28181协议。
-
应用层:
-
采集注意事项:
- 处理以下问题,大多使用硬件和算法来解决,但是核心关注点是时间以及成本的平衡。
-
图像大小:
- 指的是图片文件占用存储空间的大小;
- 图像大小反映在实际应用场景就是人脸离摄像头的距离;
- 人脸图像过小会影响识别效果,人脸图像过大会影响识别速度;
- 非专业人脸识别摄像头常见规定的最小识别人脸像素为6060或100100以上,在规定的图像大小内,算法更容易提升准确率和召回率。
-
图像分辨率:
- 图像中存储的信息量,每英寸图像的像素点;
- 图像大小综合图像分辨率,直接影响摄像头识别距离;
- 越低的图像分辨率越难识别;
- 现4K摄像头看清人脸的最远距离是10米,7K摄像头是20米。
-
光照环境:
- 过曝或过暗的光照环境都会影响人脸识别效果。
- 解决方法:
- 系统提示用户进行环境调整;
- 硬件功能对光线补充,补光、防曝;
- 算法优化图像光线;
- 如果需要算法进行处理,就要考虑计算时间,在当下的场景多长的时间能满足需求,同时如果当下技术的返回速度又是多少。
-
模糊程度:
- 模糊分类:
- 运动模糊:物体运动导致。
- 对焦模糊:摄像头距离导致,图像中低频存在高频缺失。
- 低分辨率差值模糊:小图放大导致,图像中低频存在高频缺失。
- 混合模糊:多种模糊类型共同存在。
- 现状:
- 实际场景主要着力解决运动模糊,人脸相对于摄像头的移动经常会产生运动模糊。
- 解决方案:
- 部分摄像头有抗模糊的功能,而在成本有限的情况下,考虑通过算法模型优化此问题。
-
遮挡程度:
- 五官无遮挡、脸部边缘清晰的图像为最佳;
- 而在实际场景中,很多人脸都会被帽子、眼镜、口罩等遮挡物遮挡,这部分数据需要根据算法要求决定是否留用训练。
-
采集角度:
- 人脸相对于摄像头角度为正脸最佳;
- 但实际场景中往往很难抓拍正脸。因此算法模型需训练包含左右侧人脸、上下侧人脸的数据。工业施工上摄像头安置的角度,需满足人脸与摄像头构成的角度在算法识别范围内的要求。
-
人脸库:
-
概念:
- 脸库就是人脸数据的储存管理中心:
- 人脸对比库——能够为人脸识别提供比对模板;
- 人脸抓拍库——为抓拍人脸数据提供管理空间;
- 人脸数据集——为人脸算法提供了测试/训练样本。
- 人脸识别项目是建立在人脸库的基础之上,所以人脸识别的首要任务便是是建立人脸库。
-
人脸对比库:
- 概念:
- 人脸1:N识别,将人脸抓拍照片的人脸特征与人脸库中所有人脸特征进行逐一比对。
- 分类:
- 黑名单库:
1). 黑名单指需要重点管控、关注的人员;
2). 一般由在逃犯、惯犯、水客、异常行为或是想要重点关注的人员构成;
3). 黑名单中会产生报警提示,常用于公安追逃。 - 白名单库:
1). 白名单一般指可信人员,常用于商业领域中的通行管理,白名单中的人员容许进入通过。 - 灰名单库:
1). 介于白名单和黑名单之间,是一类具有异常行为的可疑人员,还需要通过更多数据分析他们是否是黄牛、小偷、罪犯同伙等。 - 红名单库:
1). 红名属于白名单的拓展应用,用于白名单中需要重点关注展现的人群;
2). 如VIP客户、领导人等,可在识别后进一步分析该人群的行为特点和活动范围。
- 组成:
- 人脸管理库:
1).添加;
2).删除;
3).修改;
4).查询;
5).分组。 - 人脸数据:
1). 人脸照片;
2). 姓名;
3). 证件号;
4). 身份类型;
5). 住址;
6). 联系方式。
7). 人脸特征向量。 - 人脸库属性描述:
1).人脸库类型;
2).人脸库规模;
3).人脸库用途。
-
建立:
- 梳理入库流程:
1). 人脸数据包含人脸特征向量、人脸信息;
2). 这两个信息存储在数据库的不同表中,注意在删除人脸库照片时一定要删除它对应的特征向量。 - 制定入库规则:
1). 人脸数据的质量关系到人脸比对的效果,尽可能将人脸清晰、正脸、本人近期的人脸照片入库;
2). 在人脸入库时,产品经理需要制定入库规则来过滤质量不佳、格式不规范的人脸数据。 - 规则:
1).图片的颜色:可支持彩色及灰度的图片,最低要求256灰度图片。
2).图片的格式:各类主流图片格式,例如bmp/jpg/png等,图片命名格式统一,如常用的命名“姓名_证件号”。
3).图片像素:双眼中心之间的距离大于30像素。
4).图片尺寸:尺寸大于70*80以上。
5).人脸角度:人脸左右偏转30°以内,上下偏转20°以内。
6).图片大小:几十KB到一百KB之间为宜,但也不能太大,超过500KB,会影响入库速度。 - 设计人脸库功能、界面:
1).人脸库应包含人脸信息的增、删、改、查等基本功能;
2).必要的人脸字段需要根据用户需求来定。 - 采集人脸数据:
1).公安类项目:人脸数据提供方是公安,公安内部有大量的人脸数据,可通过对接公安信息资源库来获取人脸数据。
2).刷脸通行或新零售类项目;
3).一般是用户配合式采集人脸信息:需要设计人脸信息采集入口,用户可在微信公众号、手机app或PC端进行注册时上传人脸信息。
4).大型商业类或平安城市项目:需要设计非配合式采集人脸信息,一般会通过在主要出入口、通道、走廊等地部署的人脸抓拍机,抓拍路人人脸,自动建立该人档案库。
-
人脸抓拍库:
- 概念:
- 人脸抓拍库是管理人脸抓拍数据的地方;
- 在视频流或图片流中凡是能被算法检测到的人脸,都会经过图像处理形成一张张人脸的抓拍照片及对应的场景照,再将抓拍照片进行数据结构化并与其场景照一同保留至人脸抓拍库中。
- 分类:
- 结构化:人脸结构化数据指将原始采集数据按照规则处理,形成具有统一格式,并用数据库二维逻辑表来表现的数据。
- 非结构化。
-
人脸数据集:
- 概念:
- 人脸数据集就是用于检测人脸算法效果和训练算法的数据库。
- 分类:
- 人脸识别;
- 人脸检测;
- 人脸表情;
- 人脸年龄/性别。
-
概念:
-
视觉处理:
-
目的:
- 把一张图对应到一个文字或标签。
-
图像预处理:
- 目的:
- 图像预处理的目的是消除图像中无关的信息,使它具有的特征能够在图像中明显地表现出来;
- 即尽可能去除或者减少光照、成像系统、外部环境等对图像的干扰。
- 手段:
- 灰度化:
1).将彩色图像转化为灰色图像的过程。 - 直方图均衡化:
1).直方图均衡化主要目的是为了提高对比度和灰度色调的变化,使图像更加清晰;
2).直方图描述了一副图像的灰度级内容。 - 中值滤波:
1).图像滤波的主要目的是,在保持图像特征的情况下进行噪声消除;
2).具体可以分为线性滤波和非线性滤波;
3).非线性滤波相比线性滤波来说,更能保护图像细节。
-
人脸检测:
- 人脸位置检测:
- 目的:
1).目的是在图像中准确标定出人脸的位置和大小;
2).对于跟踪而言,还需要确定帧间不同人脸间的对应关系。
- 人脸关键点检测:
- 目的:
1).自动估计人脸图片上脸部特征点(眼睛、嘴巴轮廓特征点等)的坐标。 - 基本思路:
1).将人脸局部器官的纹理特征和器官特征点之间的位置约束进行结合来进行处理。
- 手段:
- CNN;
- viola-jones框架;
- DPM。
- 检测指标:
- 查准率:
1). TP/(TP+FP)。查准率越高,代表检测模型效果越好;
2). 即预测对的人脸数量,占被预测为人脸的数量的多少。 - 查全率:
1). TP/(TP+FN)。查全率越高,代表检测模型效果越好;
2). 即预测对的人脸数量,占实际人脸总量的多少。 - 误检率:
1). FP/(TN+FP)。误检率越低,代表检测模型效果越好;
2). 即预测错的人脸数量,占实际非人脸总量的多少。 - 漏检率:
1). FN/(TP+FN)。漏检率越低,代表检测模型效果越好;
2). 即没有被预测的真人脸数量,占实际人脸总量的多少。 - 速度:
1). 从采集图像完成到人脸检测完成的时间。时间约短,检测模型效果越好。
-
人脸对齐:
- 目的:
- 根据人脸特征点的位置,对人脸进行几何校正并割取人脸区域(归一化到固定大小)之后,得到最具有鉴别(区分)能力的特征的过程。
- 手段:
- 归一化:通过一系列变换,将待处理的原始图像转换成相应的唯一标准形式(该标准形式图像对平移、旋转、缩放等仿射变换具有不变特性),使得图像可以抵抗几何变化的攻击。
-
特征提取:
- 目的:
- 从定位、关键点检测好的人脸中,找到我们所关心的区域并忽略我们不关心的区域。
- 注意:
- 对框架的选择决定了产品质量的好坏;
- AI产品经理不仅需要理解每种核心框架的基本逻辑,而且要了解框架之间的区别,对于前沿技术的发展要保持敏感度。
- 手段:
- Deep face:
1). Deep face与其他方法最大的不同在于,Deep Face在训练神经网络前,使用了基于3D模型人脸对齐的方法;
2). 使用深度神经网络学习特征;
3). 该模型在LFW数据集上取得了0.9735准确率。 - Deep ID:
1). Deep ID有三代:Deep ID、Deep ID2、Deep ID2+;
2). 其中DeepID2+对遮挡有很好的鲁棒性。 - FaceNet:
1). 直接将人脸图像映射到欧几里得空间,空间的距离代表了人脸图像的相似性;
2). 该方法基于深度卷积神经网络。FaceNet得到人脸最终表示后不用像Deep ID那样需要再训练模型进行分类,直接计算距离,效率很高。
-
人脸匹配与识别:
- 目的:
- 将提取的人脸特征数据与数据库中储存的特征模板进行搜索匹配,设定一个最佳的相似度阈值,当相似度超过该阈值,则输出匹配后的结果。
- 分类:
- 人脸1:1:
1). 人脸1:1一般用于人证核验,可以简单理解为证明你就是你;
2). 人脸1:1又称为静态人脸比对,同时具有配合式的特点,完成比对需要用户携带身份证并主动配合采集人脸。 - 人脸1:n:
1). 人脸1:n是将一张人脸照片与人脸库中的多张人脸进行一一比对,人脸库有多少人脸就需要比对多少次,找出“我是谁”;
2). 人脸1:n又称动态人脸比对,因为比对照片是从动态视频中获取的,同时具有非配合特点,整个比对过程是无感知的,不需要人为配合;
3). 注意:通常会受到光照变化、人脸姿态的影响,比如侧脸、低头、逆光现象会大大提升人脸漏报率。“n”的大小(人脸库照片的数量)会影响人脸识别的准确率和比对速度,所以比对人脸库规模会设置的相对较小。 - 人脸1:N:
1).人脸1:N又称静态大库检索,即以人脸图片、人脸相似度作为检索条件,在人脸库中搜索与其相似(相似度大于设定阈值)的图片;
2).人脸1:N的人脸库规模相较于人脸1:n会大很多,最高可支持亿级人脸检索,所以这里的N为大写。 - 人脸M:N:
1).人脸M:N实际就是两个人脸库进行比对,相当于M个1:N;
2).人脸M:N常用于惯犯排查、身份查重。
-
目的:
应用场景
-
人脸检测:
-
人脸关键点:
- 人脸美颜;
- 人脸换妆;
- 3D、卡通人脸。
-
人脸属性:
- 年龄判断;
- 性别判断;
- 表情判断;
- 颜值计算。
-
人脸关键点:
-
1:1:
-
云计算:
- 商业库:
- 企业员工管理;
- app远程身份确认;
- 用户密码自助取回;
- 用户安全管理。
- 身份证库:
- 证券自助远程开户;
- 在线医疗挂号;
- 在线教育考试报名;
- 政府相关app注册。
-
离线计算:
- 公共安全身份证比对(无采集):
- 火车、飞机安检;
- 流动人口管理;
- 银行信贷审核;
- 酒店住宿人员审核。
- 线下人脸比对(有采集):
- 门禁系统;
- 智能机器人视觉。
-
混合计算:
- 线上登记;
- 线下比对。
-
云计算:
-
1:n/N、M:N:
-
监控实时运算:
- 人脸轨迹分析;
- 同行人报警;
- 落脚点分析;
- 人脸碰撞;
- 出行规律分析;
- 超时报警;
- 区域管控。
-
人像搜索:
- 智能相册;
- VIP用户确认;
- 签到。
-
监控实时运算: