首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

走在路上能被识别人脸,该为高科技而喜还是为隐私而忧?鹏越·安全

引子

4 月春光明媚,下班去公交车站的路上,笔者的同事掏出了口罩,把脸捂得严严实实。

——过敏了?

——不是。

说话间,他指了指面前的红灯,还有一位正在闯红灯的大妈。随后跟我说,最近上海越来越多不守规则闯红灯的行人都收到了上海交警的短信提醒,提示号主某年某日在某条街道不按人行横道信号灯标识通行,行为违法且被交通技术监控等设备记录,要求号主尽快接受处理。

同事感叹说,现在技术日新月异,走在大路上都无时无刻处于摄像头之下。为了保护好自己的隐私,路上还是戴口罩的好。可是我却只能遗憾地告诉他,警方都表过态,即使是在黑夜里,即使戴上了口罩,高清摄像头加上人脸识别等技术,还是能在茫茫人海中锁定你。

广泛应用的的人脸识别

从2015年到2017年,人脸识别技术经历了从快速落地到多领域应用的井喷式发展。如你所知,现在iPhone X 可以刷脸解锁,坐车、支付能刷脸,走在路上也离不开刷脸。时至今日,“刷脸”已经融入到人们生活的方方面面,在金融、交通、教育、安防、社保等领域发挥着重要作用。

比起虹膜识别、指纹识别、声音识别等生物识别技术,人脸识别以其独特的特征获取了广泛的市场认可。早期面部识别软件的技术不够成熟,容易受到光线、方向或遮挡物等的影响,导致对比结果不标准。但经过不断的发展与改进,如今的技术已经相当高端,3D 传感器捕捉人脸信息、多摄像头多方位捕捉、皮肤纹理分析乃至热成像相机获取数据等方法都运用到了人脸识别中。

人脸识别的技术实现

人脸识别中的关键环节有三点。首先是人脸检测(Face Detection),即在动态的场景与复杂的背景中,判断是否存在面像,并分离出这种面像。人脸检测是人脸识别中的一项关键技术,其方法一般包括基于结构特征的方法,即通过肤色、轮廓、纹理、结构或者直方图特征等进行人脸检测;或基于统计的方法,即通过对于“人脸”和“非人脸”的图像大量搜集构成的人脸正、负样本库,采用统计方法强化训练识别系统,从而实现对人脸和非人脸的检测与分类。常见算法如下:

AdaBoost和Cascade算法

二进小波变换

基于直方图粗分割和奇异值特征的算法

人脸检测之后的步骤就是人脸配准(Face Alignment),一旦系统检测到人脸,就会确定头部的位置、大小和姿势,根据预先设定好的数值,通过深度学习框架,来定位人脸上的五官关键点。

具体而言,每张脸都有众多可区分的特征,像地球表面的地标一样构成脸部特征的不同高峰和低谷。 这些地标定义为节点。 每个人脸都有大约80个节点,而一些人脸识别软件测量的特征主要为:

眼距

鼻子的宽度

眼窝深度

颧骨的形状

下颌线长度

……

测量完这些节点之后,系统以精确到亚毫米(甚至微波)级别的精度来测量面部曲线,创建模板,模板(数据)可以转变为唯一数值代码,最终存储为面部印记,为数据库中的人脸创建特征。

第二个关键环节是特征匹配(matching)。

如果抓取到的图像是3D图像,并且数据库中包含3D图像,就可以直接实现匹配,且不会对图像进行任何更改。不过,很多数据库中的内容还是 2D 的图像,这就需要将抓拍的 3D 图像进行一定的处理。目前常用的技术是,拍摄3D图像时,会重点识别不同的点(例如,重点测量眼睛外侧、眼睛内侧和鼻尖等)。获取测量数据之后,可以使用一些算法把 3D 图像转换为二维图像,再与数据库中的2D图像进行比较和匹配。

第三个环节就是验证和鉴定(Face Verification and Identification)。

如果是验证( Verification),图像仅与数据库中的一个图像匹配(1:1),来确认身份。而如果是为了鉴定,则图像会与数据库中的所有图像进行比较,得到匹配评分(1:N)。两种情况下,一般都会设置一个匹配度阈值。在验证中,如果图像与数据库中对应图像的匹配度高于阈值,则为同一人,否则不是。在鉴定中,如果图像与数据库中某个图像的相似度高于阈值,则返回该图像在数据库中对应的身份。

有时候,图像不清晰或者其他原因会导致验证或鉴定失败。此时,使用皮肤生物测量技术分析比对皮肤纹理,则有助于提升验证准确性。皮肤纹理分析的工作方式与面部识别相同,也是利用算法将获取皮肤特征印记并转换为数字代码,形成特征模板。据称,皮肤纹理分析可以识别同卵双胞胎之间的差异。通过将面部识别与表面纹理分析相结合,准确识别率可以增加20%到25%。

人脸识别技术的现实应用

人脸识别在现实生活中已经有很多应用,以iPhone X的Face ID技术为例:用户可以通过手机相机中映射的人脸来解锁手机,其识别软件采用3-D建模设计,可防止被照片或面具欺骗,捕捉并比较超过30,000个变量,最终进行验证。不过,iPhone 刚热销那段时间,关于 Face ID 的可靠性与安全性质疑也甚嚣尘上。钓鱼攻击、恶意图像攻击、运行时篡改,甚至图像盗窃等猜测都曾出现在探讨话题中。

回到文章开头,人脸识别在交通、安防领域的应用也早已成熟。早在 2001 年,美国弗罗里达州的 Tampa 警察局就部署过带有人脸识别功能的警用相机。时至今日,美国、澳大利亚、新西兰、英国等国家的交通系统都部署了较为成熟的人脸识别技术。在中国,火车站、港口、机场以及多个城市的路口也都部署了带有人脸识别技术的摄像头,用于追踪罪犯,检测违法违规行为,并取得了一定成效。

随之而来的隐私保护担忧

2018 年 3 月份,深圳行人过马路闯红灯曝光台引起了广泛关注和探讨。刚刚上线时,在其曝光台官网上曝光的信息包括具体地点、时间、违法行人的姓名、身份证号以及路口摄像头抓拍的违法瞬间的照片。这些信息都没有经过打码等任何技术处理,直接展示在页面上。由于网站为公开访问,所以这样很容易造成公民隐私泄露,而在有舆论反馈这个问题后,页面已经有所调整,将姓名、身份账号隐藏部分信息,且将抓拍到的行人面部打码。但这依然引起了大众的担忧。

有律师表示,交警曝光行人闯红灯行为在法律上尚未有明确规定,不能算作是有法可依,最多只能从情理上起到震慑作用。这其实对被曝光者的权益造成了一定影响。

而从另一个层面来说,路上抓拍到违法者照片然后能迅速识别出其身份,匹配到姓名、身份证号信息,甚至发送短信,这背后庞大的数据库信息“功不可没”。

根据警方介绍,“电子警察”或人脸识别摄像头会预设正常交通流量,如果有逆行、闯红灯等行为触发,就会从监控视频中截取违法者的几张图片作为证据,并获取一张清晰正脸图与数据库进行匹配。随后,民警会对相似度在 90% 以上的信息进行人工核实,再确定当事人身份。一般情况下,如果行人或驾驶者待头盔、墨镜或口罩等干扰,只要不是全脸都遮挡,还是可以通过抓拍的图片与数据库对比,进而确认身份。而且,交通部门还有庞大的车牌识别系统,体态 与步态识别技术也日渐成熟。

早在 2016 年,美国联邦调查局(FBI)就开发了一个庞大的人脸识别系统,获得高达 41.1 亿照片的访问权限。而且 FBI 还基于照片库建立了一个名为“下代识别”( Next Generation Identification)的数据库。当时 FBI 通过与几个洲“交换合作”才拿到这么多照片资源,分别来自国务院签证和护照数据库、国防部生物识别数据库以及多个驾驶执照数据库。而按照律法,FBI 原本无权访问任何一个州的数据。如果需要建立这种系统,是需要向公众发布公告的。此外,目前的人脸识别系统也尚未配备内部监督机制,不能防止任何滥用。当时,美国公民也对FBI此举侵犯到自己隐私权利而担忧不满,却也无可奈何。

在中国,类似问题也无法忽视。公民的身份证信息、实名购买车票机票、出入境登记、支付渠道的人脸和身份验证等,都能成为交通部门匹配、识别的数据库。在到处都要实名的今天,我们的身份无处可藏。只能期待手握庞大身份数据库的各大机构和组织,能“妥善”地保护好这些信息,既不要被“不法分子”盗取,也不要在所谓的“合法范围”内滥用。希望人们走在路上不必再提心吊胆,而是能在路口那些有着各种功能的电子公示牌前开心地互动。

人脸检测算法对比分析

人脸识别包括以下5个步骤:人脸检测、图像预处理、特征提取、匹配、结果输出。

人脸检测是人脸识别中的第一个环节,是一项关键技术。人脸检测是指假设在输入图像中存在一个或者多个人脸区域的情况下,确定图像中全部人脸的位置、大小和姿势的过程。从教学理论上来讲,人脸检测本质上是对一副图像的特征提取,如果提取了M个体征,则此模式可以用一个M维特征向量描述:x=(x1,x2,x3......xm),表现为M维欧式空间中的一个点。按照统计学的观点,好的特征提取方法必须满足以下条件:特征之间相互独立,减小类内距离的同时增大类间距离,特征向量的维数m尽量小。参考文章:《几种人脸检测算法的对比研究》赵东方、杨明、邓世涛

人脸检测算法一般包括两大类:基于统计的方法、基于结构特征的方法;

方法1 基于直方图粗分割和奇异值特征的人脸检测算法((基于统计的方法))

适应:复杂背景下的人脸检测

方法:在灰度基本均匀的平面上,双眼、鼻、口成一定结构分布特征。先根据平滑的直方图对图像进行粗分割,再根据一定的灰度空间对人眼进行定位,进而确定出人脸区域。

第一步:用高斯函数对直方图进行平滑处理

第二步:眼睛的定位

第三步:基于奇异值特征的人脸验证

效果:检测率较高,但耗时较长,平均每个图像需10~15秒,而且待检测的图像中人脸姿势、表情等比较固定,当脸部光照变化较大或脸部有阴影(特别是眼部区域)时,图像很难被检测到。

方法2 基于二进小波变换的人脸检测(基于统计的方法)

二进小波变换得到的低频分量和高频分量不是下采样型的,他们具有平移不变性。而二进小波变换有两个过程组成:学习过程和检测过程。

缺点:在统计学习的过程中,对原始图像的要求比较高,当图像的背景相对复杂时,比如从侧面拍摄人脸时,水平方向的和垂直方向的高低频分量很难获取,这将直接影响到自由参数的准确性,从而很大程度上影响人脸检测的检准率。

方法3基于AdaBoost算法的人脸检测

2010年viola和Jones引入积分图的概念,提出了基于Haar-like特征、级联结构的AdaBoost算法,成功应用于模式识别领域,实现了实时人脸检测,使人脸检测技术取得了突破性进展。为适应背景的复杂性,研究者提出了将肤色等人脸特征和AdaBoost算法相结合的人脸检测新算法。算法首先结合人脸特征,利用人脸特征确定人脸的大致方向,然后用级联结构的AdaBoost算法进行验证。下图为该算法的人脸检测流程图

第一步:肤色区域检测

肤色的差别主要是亮度的差别而非我们表面认知的色彩差别,因此检测肤色区域时极容易受光照的影响,采用YCbCr色彩空间,可以使肤色有较好的聚类性。

第二步:人脸候选区域分割

在YCbCr色彩空间中,眼睛与皮肤的Cb和Cr分量有很大的差异,眼睛的灰度值相对较低,Y分量集中分布在(0,120)内,而且眼睛的Cb分量普遍比Cr分量的值高,由此将眼睛的色彩和亮度映射结合起来就能检测出眼睛区域的大小和位置。多数情况下嘴巴的方向和人脸的方向一致,具有很强的稳定性,嘴巴检测的情况类似眼睛的检测,此时Cb比Cr分量的值高很多,也就是说,嘴巴相对眼睛更容易检测到。最后根据人体学特征,根据人脸各部件的大体位置很容易确定人脸候选区域。

第三步:人脸候选区域分类

这一步利用AdaBoost算法,通过对人脸候选区域进行积分图计算,快速计算Harr-like特征,利用AdaBoost算法将Harr-like特征生成的弱分类器叠加成为强分类器,再将多个强分类器级联成人脸检测分类器。

方法4 基于面部双眼结构特征的人脸检测

首先在原始灰度图像上计算各像素点的梯度方向对称性,然后以梯度方向对称性高的点为特征点,并进一步组合成特征块,通过一种简单的抑制方法,滤去大部分孤立的非人脸部件的特征点,再运用一定的规则对各个特征块进行组合得到候选人脸区域最后对候选人脸进行人脸部件的验证,剔除假脸,得到真正的人脸区域。

第一步:梯度方向对称分布特征点的提取

第二步:双眼特征块的提取

第三步:人眼的验证

参考来源:

https://electronics.howstuffworks.com/gadgets/high-tech-gadgets/facial-recognition1.htm

https://en.wikipedia.org/wiki/Facial_recognition_system

http://www.freebuf.com/news/107036.html

http://news.163.com/17/0921/10/CURODLL600018AOR.html

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180426B16LYM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券