浅析基于人脸识别的嵌入式民用安防系统设计

(整期优先)网络出版时间:2022-12-19
/ 5

浅析基于人脸识别的嵌入式民用安防系统设计

阳化

广联达数字科技(广州)有限公司   广东广州  510000 

摘要:随着科技的进步,人脸识别技术也得到了较为飞速的发展,将其应用于民用安防系统之中能够有效提升系统安全性。本文以嵌入式民用安防系统中的人脸识别技术为研究内容,对其在嵌入式民用安防系统中的设计进行了详细分析,第一步将民用安防系统中的应用的人脸识别技术进行了分析,第二步将人脸识别在民用安防系统中的总体设计进行了研究。

关键词:人脸识别;嵌入式;民用安防系统

引言:人脸识别是一种以人的脸部特征信息进行身份识别的一种生物识别技术。通过摄像机采集人脸图像并在系统中进行检测,这种技术应用于民用安防系统中能够有效提升民用住宅的舒适度,保证民用住宅中用户的安全。作为一种新型技术,人脸识别技术应用于民用安防系统中需要增加对摄像头等硬件设施,同时要配备相应的算法等软件设施,下面我们就这些内容进行详细的分析研究。

  1. 人脸识别算法的发展

人脸识别最初在20世纪60年代已经有研究人员开始研究,真正进入初级的应用阶段是在90年代后期,发展至今其技术成熟度已经达到较高的程度。

人脸识别算法经历了早期算法,人工特征+分类器,深度学习3个阶段。目前深度学习算法是主流,极大的提高了人脸识别的精度,推动这一技术真正走向实用。

早期的算法有基于几何特征的算法,基于模板匹配的算法,子空间算法等多种类型。子空间算法将人脸图像当成一个高维的向量,将向量投影到低维空间中,投影之后得到的低维向量达到对不同的人具有良好的区分度。

第二阶段的人脸识别算法普遍采用了人工特征 + 分类器的思路。分类器有成熟的方案,如神经网络,支持向量机[5],贝叶斯[6]等。这里的关键是人工特征的设计,它要能有效的区分不同的人。

描述图像的很多特征都先后被用于人脸识别问题,包括HOG、SIFT、Gabor、LBP等。它们中的典型代表是LBP(局部二值模式)特征[7],这种特征简单却有效。LBP特征计算起来非常简单,部分解决了光照敏感问题,但还是存在姿态和表情的问题。

CVPR 2013年MSRA的"Blessing of Dimisionality: High Dimensional Feature and Its Efficient Compression for Face Verification" [8]是人工特征人脸识别的巅峰之作,该问就高维度特征如何应用在人脸识别做了深入的阐述和验证,作者主要以LBP(Local Binary Pattern,局部二值特征)为例子,论述了高维特征和验证性能存在着正相关的关系,即人脸维度越高,验证的准确度就越高。

第三个阶段是基于深度学习的方法,自2012年深度学习在ILSVRC-2012大放异彩后,很多研究者都在尝试将其应用在自己的方向,这极大的推动了深度学习的发展。卷积神经网络在图像分类中显示出了巨大的威力,通过学习得到的卷积核明显优于人工设计的特征+分类器的方案。在人脸识别的研究者利用卷积神经网络(CNN)对海量的人脸图片进行学习,然后对输入图像提取出对区分不同人的脸有用的特征向量,替代人工设计的特征。

深度学习方法的主要优势是它们可用非常大型的数据集进行训练,从而学习到表征这些数据的最佳特征。网络上可用的大量自然人脸图像已让研究者可收集到大规模的人脸数据集,这些图像包含了真实世界中的各种变化情况。使用这些数据集训练的基于 CNN 的人脸识别方法已经实现了非常高的准确度,因为它们能够学到人脸图像中稳健的特征,从而能够应对在训练过程中使用的人脸图像所呈现出的真实世界变化情况。此外,深度学习方法在计算机视觉方面的不断普及也在加速人脸识别研究的发展,因为 CNN 也正被用于解决许多其它计算机视觉任务,比如目标检测和识别、分割、光学字符识别、面部表情分析、年龄估计等。目前随着深度学习算法的发展和大量场景化数据的驱动,人脸识别算法也日趋成熟,在各种场景下得到了商业化应用。

  1. 嵌入式民用安防系统的人脸识别设计

2.1 人脸检测与人脸特征提取模型

本文中采用MTCNN(多任务卷积神经网络)[9]进行实现,MTCNN采用级联卷积神经网络(convolutional neural network,CNN)结构,通过多任务学习,能够同时完成人脸检测和人脸对齐两个任务,输出人脸的中心点坐标、尺度及特征点位置。MTCNN采用图像金字塔+3阶段级联CNN(P-Net、R-Net、O-Net)方式进行人脸检测。

图像金字塔将图像尺度进行变换,在不同尺度上进行人脸的检测。级联CNN完成对人脸由粗到细(coarse-to-fine) 的检测,前者的输出是后者的输入,快速将不是人脸的区域剔除,对于可能包含人脸的区域交给后面更复杂的网络,利用更多信息进一步筛选,在保证召回率的情况下可以大大提高筛选效率。下图为MTCNN中级联的3个神经网络(P-Net、R-Net、O-Net),每层级联网络的网络层数逐渐加深,输入图像的感受野逐渐变大,最终输出的特征维数也在增加,意味着利用的信息越来越多。

三层级联网络的解释如下:

P-Net:其实是个全卷积神经网络 (FCN),前向传播得到的特征图在每个位置是个32维的特征向量,用于判断每个位置处约12×12大小的区域内是否包含人脸,如果包含人脸,则回归出人脸的Bounding Box,进一步获得Bounding Box对应到原图中的区 域,通过NMS(Non-maximum suppression) 保留分数最高的Bounding box以及移除重叠区域过大的Bounding Box

R-Net:是单纯的卷积神经网络(CNN),对输入进行细化选择,并且舍去大部分的错误输入,并再次使用边框回归和面部特征点定位器进行人脸区域的边框回归和特征点定位,最后将输出较为可信的人脸区域,供O-Net使用。对比与P-Net使用全卷积输出的1132的特征,R-Net使用在最后一个卷积层之后使用了一个128的全连接层,保留了更多的图像特征,准确度性能也优于P-Net

O-Net :也是纯粹的卷积神经网络(CNN),将R-Net认为可能包含人脸的Bounding Box 双线性插值 到48×48,输入给O-Net,进行人脸检测和特征点提取。

在训练阶段,3个网络都会将关键点位置作为监督信号来引导网络的学习, 但在预测阶段,P-Net和R-Net仅做人脸检测,不输出关键点位置,关键点位置仅在O-Net中输出。各级神经网络输出解释如下:

face classification 采用softmax判断是否为人脸,因此输出为二维;

bounding box regression输出左上角和右下角的偏移量 ,因此输出为四维;

facial landmark localization定位左眼、右眼、鼻子、左嘴角、右嘴角共5个点的位置,因此输出为十维。

FaceNet[10]是谷歌发布于CVPR2015中的论文“FaceNet: A Unified Embedding for Face Recognition and Clustering”中提出的一个对识别、验证、聚类等问题的统一解决框架。FaceNet认为上述问题都可以放到特征空间里统一处理,难点在于如何将人脸更好的映射到特征空间。其本质是通过卷积神经网络学习人脸图像到128维欧几里得空间的映射,该映射将人脸图像映射为128维的特征向量,使用特征向量之间的距离的倒数来表征人脸图像之间的相似度。对于相同个体的不同图片,其特征向量之间的距离较小,对于不同个体的图像,其特征向量之间的距离较大。最后基于特征向量之间的相似度来解决人脸图像的识别、验证和聚类等问题,FaceNet算法的主要流程为:

(1)将图像通过深度卷积神经网络映射到128维的特征空间(欧几里得空间)中,得到对应的128维特征向量;

(2)对特征向量进行L2正则化,筛选出有效特征;

(3)使用正则化后的特征向量,计算Triplets Loss。

Triplets的意思是三元组,区别于神经网络的双参数计算(预测标签和真实标签),Triplet Loss是通过三个参数来计算的。三元组具体指anchor, positive, negative三部分,三者都是经过L2正则化后的特征向量。具体来说,anchor和positive 指的两个匹配的脸部缩略图,其中anchor是模型训练时的基准图片,positive 指的是与anchor相同个体的图片,negative指的是与anchor不同个体的图片。

FaceNet使用深度卷积神经网络来学习映射 并进一步设计了Triplets Loss训练该网络,之所以称之为三元组是因为该损失函数包含了两个匹配脸部缩略图和一个非匹配的脸部缩略图,其目标是通过距离边界来区分样本中的正负类,其中的脸部缩略图指裁剪后的人脸图片,除了缩放和平移之外,没有2D或3D对齐。三元组损失函数尝试将不同个体的人脸图像区分开来,使卷积网络能更好的学习、逼近。

2.2 人脸跟踪算法

民用安防系统获取人脸图像主要依托于视频监控,但若对经过的同一个人的每一帧人脸进行识别,则会造成大量资源浪费,且部分低质量帧易引发识别失误,因此,为确保所设计的民用安防系统应用效果,需精准判人脸图像,对适宜人脸图像进行识别,以此提高民用安防系统整体人脸识别性能。为解决上述问题,则可将人脸追踪算法嵌入至民用安防系统内,追踪算法不会依赖人脸检测过程,例如:民用安防系统对所经过的行人开始检测后,其不会继续识别检测人脸图像的每一帧,而是依靠追踪算法进行检测,以此可提高人脸识别检测精度。该类人脸追踪算法为Tracking by Detection,嵌入该追踪算法后,民用安防系统检测人脸每一帧后生成两个人脸图像,而追踪算法则会根据特征值对比推测两个人脸图像是否属于同一个人。为防止出现人脸追踪识别失误、不吻合的现象,将该算法嵌入民用安防系统后,可于系统投运前进行人脸检测追踪,用于保障人脸追踪算法应用效果。DeepSORT是Tracking-by-Detection的典型算法,是SORT多目标跟踪算法的改进版本,它设计了一种新的关联方式,提高了对长时间遮挡的对象追踪的准确率,减少了Id频繁切换的现象。是一种非常高效、稳定的目标追踪算法,在多种领域得到了稳定的应用。

2.3总体工程方案

本文采用MTCNN作为人脸检测模型,我们用MTCNN检测视频图像中的人脸位置,通过人脸目标跟踪,采用DeepSort实现人脸的实时跟踪和选优,并利用FaceNet将图像特征映射到128维特征空间,随后在特征空间中比较人脸的相似性,进行人脸检测与识别。人脸检测识别系统的主要流程如下:

(1)通过MTCNN人脸检测模型,从照片中提取人脸图像;

(2)通过DeepSort进行人脸跟踪,并获取最优质量的人脸图像;

(3)把人脸图像输入到FaceNet,计算embedding的特征向量;

(4)使用knn算法,比较特征向量间的欧式距离,判断是否为同一人,实现人脸匹配和识别。

  1. 基于人脸识别的嵌入式民用安防系统总体设计

3.1系统结构设计

嵌入式民用安防系统使用人脸识别技术,其目的是为了对外来人员进行监控识别,以此保障民用住宅的安全性。

将人脸识别系统应用于嵌入式民用安防系统中,其核心元件为主控制器,能够对所识别采集到的图像数据进行分析以及对图像数块的调配。摄像头起到了图像采集与捕捉的功能。此外,为了提升对人脸识别的准确性,还应当加设红外感应装置,以此避免资源浪费。同时为了避免摄像头故障造成的人脸识别失效,还应当加设键盘与显示屏,必要时可以通过密码来实现进入住宅的目的。当主控制器采集整合数据后,要将最终信息上传至云端平台,并经由云端平台的数据传送为用户提供信息。最后,门锁应具备电信号接收装置,以便主控制器通过电信号控制门锁[3]

3.2硬件设计

3.2.1主控

本文中选用的民用安防系统中的人脸识别系统的主控制器为瑞芯微或亿智等商用芯片,这类芯片打造的主控器功能强大且体积较小、存储量高。

由于人脸识别应用至民用安防系统中需要对图像数据进行大量处理,因此对主控制器的性能有着较高要求,同时由于其民用性质,因此对其成本控制也有一定的要求。因此选用瑞芯微商用芯片更为适宜,综合考虑我们选择瑞芯微RV1109作为主控芯片。

RV1109作为一款高性能AI视觉处理器,内部集成双核 ARM Cortex-A7 CPU ,每个核心都有一个32KB的I-cache和32KB的D-cache和512KB统一的L2缓存。内置NPU支持INT8/INT16混合运算,计算能力高达1.2TOP。同时,RV1109完全基于硬件的500万像素ISP(图像信号处理器)和后置处理器,实现了许多通常用于IPC和CVR的算法加速器如HDR、锐化、去霾、鱼眼校正、伽马校正、特征点检测等,并可进行实时处理。较之于其他通用芯片,RV1109具备更强算力,基于NPU这一专门针对深度卷积神经网络的处理核心,能够在拥有出色视觉算法处理能力的同时,兼具更低的功耗和更高的性价比。 在IPC及其他智能视觉应用上均具有较大优势,基于RV1109的摄像头解决方案适用于机器视觉、智能分析、工业控制、人脸识别、车载等多种应用场合。

3.2.2 镜头和传感器

在镜头、图像传感器、图像处理器这三个人脸识别摄像头模组核心组件中,镜头主要承担捕捉物体、将拍摄图像聚焦于图像传感器上的任务,其主要参数有视场角、光圈、CRA、畸变、眩光等。人脸识别摄像头模组一般采用对焦速度快、成像质量稳定、测光准确的定焦镜头。

对于负责把光信号转换成数字信号输出的图像传感器,其主要参数包括传感器尺寸、有效像素、像素元尺寸等,推荐具有集成度高、功耗小、速度快、成本低等特点的CMOS传感器。最后是将数字图像信号优化处理后传到人脸识别设备的DSP图像处理器,优质的DSP可以提高原有芯片宽动态范围30%以上。

我们采用一款对角线6.46 毫米(类型1/2.8英寸)的216万像素彩色CMOS图像传感器。属于星光级别,具备多重曝光DOL宽动态功能;每秒60帧,全尺寸扫描720P高清、窗口截取、反向读取。该CMOS可用于监测方面,如安防监控摄像头、360全景行车记录仪、高清录像、无人机、流媒体后视镜芯片、人脸识别、人脸抓拍、运动DV视频监控,交通监测系统或商业综合体等多种监控应用领域。

3.2.3红外感应

由于此系统应用于民用安防系统中,因此在无陌生人来访时,若该人脸识别系统一直处于工作状态会造成不必要的资源浪费,同时长期开设也会造成系统的使用寿命缩短,为了避免此种问题,因此要在此系统中加设红外感应装置。

以HC-SR501为例,这个红外感应模块是以红外感应技术为基础的,感应性能良好,灵敏度高且工作状态较为稳定,同时对电压电流的要求较低,能满足多种环境下的感应需求。

将此红外感应模块安装在人脸识别系统中,当有人员经过时,其会先进行红外感应,判断来访人员后再开启摄像头进行人脸识别,此举有效地减少了过量的人脸识别运算,避免了CPU的过量运转,提升了系统的安全性。

3.2.4继电器

当人脸识别结束后,主控制器会通过电信号对门锁进行控制,在这一点上,要对继电器进行设计。通常情况下,民用住宅的电磁锁流经电压为12~24V,瑞芯微主控制器的输送电压为1~7V,较大的电压差距使得主控制器无法有效控制电磁锁的开启关闭,因此,设计继电器是提升主控制器控制能力的有效途径。

由于主控制器与电磁锁的电压差异值,因此可以选择Risym继电器,该项继电器的驱动电压为0~5V,但是其负载电压能够达到10A/250VAC,可以充分满足主控制器对电磁锁的控制需求[4]

3.2.5矩阵键盘和显示屏

上文中提到,为了避免摄像头出现故障造成人脸识别系统的失效,还要在此系统中加设键盘以及显示屏。相较于其他的识别系统,密码输入系统的安全性较高,在人脸识别系统失效时,启用密码输入能够有效保证民用住宅的安全性。

此外,密码输入对系统的设计要求不高,只需要输入正确的密码便可以控制电磁锁的开启,对整体的民用安防系统不会造成太大的系统负担。若密码输入不正确时,则主控制器会通过云平台将来访信息传送至户主,以便进行身份识别。同时为了提升后续的系统检查效率,每一次密码输入都应被记录下来,以此判断人脸识别系统的障碍规律,以便改进。

由于键盘辅助作用,因此在进行键盘以及显示屏的设计时要注意对性价比的控制,基于此,可以选用4*4矩阵键盘,能够满足密码输入的基础需求,显示屏选用LCD1602型号,显示字符能够满足密码呈现的需求。

3.3软件设计

3.3.1主程序

当硬件设施设计完毕后,要对软件设施进行设计。首先要进行主程序的设计,系统的主程序是为了保证民用安防系统的正常运行,并且控制各个系统结构的运转,避免不必要的运算。

主程序在民用安防系统中的运转由四部分组成。第一,系统经由红外线感应模块判定是否有来访人员,当检测到来访人员后开启摄像头进行图像捕捉。第二,将采集到的数字图像进行识别判定。第三,在判定访客身份后将信息上传至云平台再转传给户主,以此判定是否开启电磁锁。第四,当启用密码输入时,同样将密码输入数据上传至云平台转传至户主。

3.3.2远程控制

进行远程控制时,设计的软件程序为VNC,其含有两个操作系统,分别为Linux以及UNIX,这种程序具有功能性强、实用性强、成本性低的优点。但是,使用VNC程序时要进行第三方虚拟控制台的安装,以便对控制端和服务端进行分别控制。

VNC远程控制平台进行控制时,工作流程如下,首先,在主控制器的系统设置界面将VNC的服务端控制功能开启。其次,当主控制器与互联网连接后,经由路由器获取IP地址。再次,在系统中安装控制端,并与IP地址相连。最后,将其与主控制器相连,利用控制端实现计算机与主控制器的数据传输与数据修改。

3.3.3摄像头驱动

将摄像头与VNC控制端相连,同时检测摄像头安装位置是否合理,图像捕捉是否全面。

3.3.4I2C通信

I2C通信主要应用于密码输入的显示屏系统,由于显示屏系统需要11个GPIO接口驱动,但是瑞芯微主控制器的接口不足,但其可兼容STN/CSTN/TFT/OLED多种接口,为了满足需求,可使用I2C总线来进行显示屏的连接。

I2C总线能够同时进行多个设备的通信,其由两条串行总线组成,分别是数据线与时钟线,这两种串行线均为I/O线。

3.3.5网络连接

网络连接指的是民用安防系统中的云平台通信,由于瑞芯微主控制器内置无线模块,因此只需要有外网便可实现网络通信。

3.4云平台设计

最后要进行的是云平台的设计,云平台是将人脸识别系统最终的结果进行住户传送的一项技术,当前较为知名的物联网云平台有LOT、OneNET等,我们也可以将其直接引用。云平台的基础功能是将数据进行采集、汇总、传输,以此为用户提供设备监测、故障报警、调配控制等功能。由于民用住宅的广泛性,因此在进行云平台的设计时我们可以选用OneNET平台,其为中国移动推出的云平台,覆盖面更广。

在民用安防系统中,OneNET平台能够为系统提供专属ID以及APIkey,并设计数据板块,以此进行主控制器与云平台的连接。

当主控制器将人脸识别的图像处理结束后,将结果上传至云平台,平台会将此图像数据进行保存,以便用户随时查询来访记录。若识别结果为陌生人时,云平台会触发报警机制,以便户主及时对来访者进行判定,保障民用安防系统的安全性。

结论:综上所述,人脸识别系统作为一种新兴技术,其对图像的处理、计算、上传等内容涉及的元件较多,因此进行设计时要充分考虑到各个硬件设施与软件设计的特性。此外,由于民用住宅的使用特性,将人脸识别系统嵌入安防系统中时要注意对成本进行控制,经由文中对以上几点的分析,希望帮助相关技术人员更好的选择与设计民用安防系统。

参考文献:

[1]黄帅凤,汤丽娟,梁龙兵.人脸识别技术在风险控制环境中的应用[J].电子技术,2022,51(08):210-211.

[2]李伯星.基于人脸识别技术的门禁系统应用研究[J].电子技术与软件工程,2022(15):148-151.

[3]张振寰.人脸识别技术在人工智能中的应用[J].无线互联科技,2022,19(14):114-117.

[4]张敏,罗雨.住宅小区人脸识别门禁系统的应用风险及其法律规制[J].江西科技师范大学学报,2022(03):39-48.

[5] Guodong Guo, Stan Z Li, Kap Luk Chan. Face recognition by support vector machines.ieee international conference on automatic face and gesture recognition,2000.

[6] Dong Chen, Xudong Cao, Liwei Wang, Fang Wen, Jian Sun. Bayesian face revisited: a joint formulation. 2012, european conference on computer vision.

[7] Timo Ahonen, Abdenour Hadid, Matti Pietikainen. Face Description with Local Binary Patterns: Application to Face Recognition. 2006, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[8] Dong Chen,Xudong Cao,Fang Wen,Jian Sun.Blessing of Dimensionality: High-Dimensional Feature and Its Efficient Compression for Face Verification.2013,computer vision and pattern recognition.

[9] Zhang, Kaipeng, et al. “Joint face detection and alignment using multitask cascaded convolutional networks.” IEEE signal processing letters 23.10 (2016): 1499-1503.

[10] Schroff, Florian, Dmitry Kalenichenko, and James Philbin. “Facenet: A unified embedding for face recognition and clustering.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.