APP下载

智能监控摄像头的研究

2020-08-15王博文宗碧雷铠伊伍明亮郭鑫伟

现代信息科技 2020年7期
关键词:人脸识别监控

王博文 宗碧 雷铠伊 伍明亮 郭鑫伟

摘  要:文章对于一种基于Linux系统和树莓派开发的智能监控摄像头进行了研究。面对人员情况复杂,布置环境多种多样的应用条件,这种摄像头具有无线化、小型化、智能化的特点,减少了对布置环境的要求以及对相关人员的需求;结合视觉信息处理、云台舵机控制,可以自动进行人脸识别、人脸验证、识别颜色等;并且在识别特征的基础上持续跟拍目标,适合紧急布置,识别特定目标并跟拍的任务。

关键词:监控;人脸识别;特征检测

中图分类号:TP277       文献标识码:A 文章编号:2096-4706(2020)07-0089-04

Research on Intelligent Monitoring Camera

——Based on Dlib,OpenCV and Pan Tilt Camera with Double Steering Engines

WANG Bowen,ZONG Bi,LEI Kaiyi,WU Mingliang,GUO Xinwei

(China University of Mining and Technology,Xuzhou  221116,China)

Abstract:This paper studies an intelligent surveillance camera based on Linux system and Raspberry Pi. In the face of the complex personnel situation and various application conditions of the layout environment,this kind of camera has the characteristics of wireless,miniaturization and intelligence,which reduces the requirements of the layout environment and related personnel requirements;combined with the visual information processing and the control of the pan tilt steering gear,it can automatically carry out face recognition,face verification,recognition color,etc.;and on the basis of recognition features,it can continue to following target,suitable for emergency arrangement,identification of specific target and following task.

Keywords:monitoring;face recognition;feature detection

0  引  言

隨着我国城市化进程的不断加快,城市人口不断增加,安防工作的重要性不断提高。面对着更复杂的治安情况,传统摄像头已经不能满足使用需要。在大数据和人工智能技术的发展下,“智慧城市”需要全新的“感知层”——智能摄像头,来实现对整个城市运转情况的数据化。新型的摄像头需要具备回传有效数据、分布式计算、存储、自主追踪特征物体等能力。文章描述了一种新型智能摄像头的设计方案。

此方案中采用Linux系统。Linux系统有以下优点:(1)工作稳定。Linux的内核相当稳定,可以常年工作而不宕机;(2)病毒免疫。Linux系统自带安全监测、防火墙等安全设

置,从固定的软件源安装和下载程序,并且可以很容易地进行补丁升级,所以二进制病毒难以在系统中传播;(3)跨平台能力强。Linux一方面采用了可移植的Unix标准应用程序接口,可以支持许多系统平台;另一方面其网络功能相当完善,可以方便地收发数据。在图像处理方面,主要采用机器视觉库OpenCV以及深度学习Dlib库进行处理。OpenCV是一个功能强大的机器视觉库,底层代码使用C++编写,运算速度快,处理性能好。Dlib库是集机器学习、计算机视觉、图像处理为一体的函式库,提供Python的API,便于开发。在控制方面,采用了较为常用的PI算法。

1  国内外研究情况

国际上,相关研究讨论开展得较早。在2000年左右,计算机视觉方面的权威期刊IJCV和IEEE T-PAMI就开始关注利用计算机视觉进行视频监控的技术,并且相继出版了相关专刊。而在实际应用方面,英国雷丁大学计算机系的VIEWS项目组研究出一种可用于监控系统的新技术,该技术依靠监视反常行为来识别嫌疑人,例如扒手、抢劫犯等等,这种技术的应用有助于消除公共场所的安全隐患。美国国防部于1997年成立了VSAM项目,该系统可以实现对战争以及民用区域的军事安全监控。英国Reading大学和法国INRIA科研院合作开发出名为“AVITRAC”的智能视频监控系统,该系统应用于人流量极大的机场,通过分析机场行人的异常行为,可以提前预警,有助于提升机场的安防能力。除此之外,国外的VisioWave、ObjectVideo和Vident等公司不断推出市场化的智能监控产品,挤占新兴市场智能监控的份额。

在国内,对于智能监控的研究讨论也有了很大进展。2002年5月在北京召开了第一届全国智能视觉监控学术会议,该会议可以说是国内重视智能监控的开端;中科院自动化研究所成立了智能视觉监控研究组,致力于研究视觉监控技术并推向实用[1];截至2018年9月,中国已在20多个省市实现了“天网系统”和公安系统的对接,该监控系统基于人脸识别和大数据,可以在3 s内完成嫌疑人的身份确认,进一步保障了城市治安。除此之外,百度、华为集团等企业也推出了智能监控系统,促进了智能监控技术的商品化。

2  系统总述

2.1  硬件平台

该系统采用Raspberry Pi 3B+作為图像处理与控制云台的核心。Raspberry Pi 3B+是一款微型计算机,计算能力较强,并且配有I/O口,可以实现对小功率器件的直接控制。在摄像头方面,本系统采用大景深摄像头,通过USB2.0接口直接接入树莓派,具有传输稳定、抗干扰能力强的优点。与摄像头相配合的云台为两自由度双舵机云台,采用PWM波占空比对应转轴角度的设计,例如输入占空比为12.5的PWM波,可以使舵机转轴转至180°方向。云台可实现在水平方向旋转180°、竖直方向旋转90°,该结构使用D-H方法,在控制方法部分会进行详细分析。以上由Raspberry Pi 3B+、云台、摄像头构成的系统通过无线局域网相连,可以与监控台通信,显示实时画面。

2.2  软件平台

Raspberry Pi支持Linux系统,在该项目中采用官方优化版Raspbian系统。Raspbian是由Mike Thompson与Peter Green基于Debian系统重建而成的[2],正是他们完成了巨大的工作量,才有了这款性能强大、用户友好度高的微型计算机。在此方案中,利用Raspbian系统部署Python-OpenCV-Dlib环境,为图像处理的过程带来了优化与便利,并利用深度学习的工具,实现了对目标的检测。在控制程序中,主要采用Rpi.Gpio库编程,该库函数提供了Python接口,可以通过程序直接控制树莓派的I/O口输出PWM波,通过改变PWM波的占空比来控制舵机的角度,从而实现对目标物体的追踪;然而摄像头反馈的坐标差并不能直接用于调整占空比的大小,该问题的解决将在控制算法部分详述。另外,为了与监控台实现回传画面的功能,本系统使用了MJPG-Streamer流视频项目的局域网视频流服务。

2.3  系统实现

通过图像处理算法,我们可以获取目标的特征信息,例如脸部特征以及身体的颜色特征,建立一个独立文件来标定目标;在接收到被标定目标的坐标后,云台控制算法使摄像头持续自动跟踪目标,将信息回传监控台并发出警告。通过软件平台与硬件平台的配合,从而实现整个系统,智能监控系统整体结构图如图1所示。

3  图像处理方法

3.1  图像预处理

在Raspbian系统中,利用Python+OpenCV可以轻松地对摄像头捕捉到的图片进行预处理以及读取、存储。图片的预处理由降噪、图片的形态学变换、色彩空间的转化等部分组成[3],预处理后的图片可以让后续的检测与识别进行得更好。降噪的一般方法有线性的均值滤波、高斯滤波以及非线性的中值滤波、双边滤波[4]。在该系统中,采用高斯滤波进行降噪。高斯滤波使用离散化窗口滑窗卷积的方式对图片进行平滑化处理,在平滑去噪的同时又尽可能地保留了图像的总体灰度分布特征,能够更好地配合人脸检测中基于Dlib机器视觉库的HOG算法的实现。图片的形态学变换主要利用了腐蚀操作。腐蚀操作利用了OpenCV中的erode函数,该函数可以将一像素点替换为对应邻域上最小的像素值,可以让图片的轮廓更鲜明。另外,由于摄像头返回了RGB格式的图像,这种格式并不能良好地展示图片的全部特征,因此利用OpenCV的cvtColor函数可以将RGB图像转化为HSV格式,通过色调、饱和度、明度更好地展现图片的特点。另外,该方法也可用于得到灰度化图片。另外,由于树莓派的计算能力限制,如果处理数据过大,其实时性就会不可避免地受到影响。在该系统中,为了减小计算量,采用了resize函数中的双线性内插值方式缩小图片,可以保证图像尽量不失真,并且大大减小了计算量。

3.2  色彩识别

色彩检测的算法利用了inRange函数,通过限定三个通道的阈值,只通过想要的颜色,就可以得到去除掉背景的图像。得到目标色彩的图像后再利用threshold函数获取轮廓检测的最佳阈值,从而使用findContours函数找到该物体的轮廓,在fingContours中采用cv2.CHAIN_APPROX_SIMPLE模式,即可迅速地获取目标物体的矩特征点。再进行简单处理即可标识出物体。该方法在实际运用中识别性能好,对树莓派计算量要求不高。但其缺点也显而易见:没有足够的智能可以识别具体的行人,因此可以在紧急情况下与行人检测配合使用,从而更精确地识别行人。

3.3  人脸检测、编码与识别

人脸检测、编码和识别算法是基于优化后的Dlib库实现的。Dlib是一个领先的开源深度学习库。该深度学习库具备了快速、精确的特点。在算法选择上,由于CNN的运算需求过大,树莓派的计算能力无法满足,因此采用较为成熟且准确度较高的HOG算法来进行检测。HOG算法的步骤为:(1)归一色彩空间。由于求取方向梯度不需要彩色图片,因此使用灰度图片即可,并且为了尽量放大图片特点,在色彩空间归一化之后应进行一次校正。图片预处理的方法已在图像预处理部分说明,此处不再赘述;(2)梯度运算。对于归一化后的图片进行梯度计算,即找出图片的变暗的程度与方向,就得到了梯度及其梯度方向;(3)对杂乱的梯度值进行标准化,也就是将一个区域以中心为原点划分为多个区域,将每个小区域中的梯度向量标准化,这样就将每个小区域中的梯度向量化为了9个特征向量(bin);(4)此时利用滑窗(block)再将上述小区域中的特征向量进行标准化,就得到了原始图片的HOG特征图。那么将此特征图与大量人脸数据提取出的HOG特征图进行对比,即可找出人脸。在图像预处理部分,我们提到了图像的缩小,所以在这里找到的人脸数据相比于原图像中的人脸也正好相差了缩小的比例,因此我们再将所找的人脸坐标乘以相应的比例,就可以在原图像中标出人脸。

将得到的人脸图与由DCNN(Deep Convolutional Neural Networks)即深度卷積神经网络训练好的模型进行对比,可以在图中找出128个特征点,根据这128个特征点,在向量机(SVM)的帮助下,即可找出与之最接近的人脸,从而实现人脸识别的功能。该思路也可用于识别行人。

4  控制方法

首先,我们对云台结构进行简要说明。该云台装配了两个舵机,形成了两个转动自由度,分别为水平转动180°以及竖直向上转动90°。在对其结构的研究过程中采用D-H坐标系(Denavit-Hartenberg)标准版进行建模。该建模方法可以方便地计算出每个关节的角度参数变化对于末端执行器(摄像头)的影响。图2为MATLAB建模结果。

控制算法采用稳定性好、动态响应迅速、可消除静差的PI算法即比例积分算法实现,控制系统结构框图如图3所示。

通过视觉处理部分反馈,即目标物体与摄像头Z轴(D- H坐标系中)的坐标差,就得到了偏差量e(k),但控制系统中云台的控制信号必须为一定占空比的PWM波,因此我们必须将e(k)转化为相应的占空比变化量再进行控制。

在实际使用时,由于不希望舵机抖动造成磨损,在控制算法中加入了死区环节。死区环节表现在实际过程中即为当目标物体中心坐标处于摄像头拍摄画面中间部分一个固定大小的圆内时,云台舵机停止运行。

5  实验仿真及结果分析

作者利用图4中的完整硬件系统完成了本次试验,并利用无线网传输了监控画面。图5中采用OpenCV中的Haar级联器实现快速的人脸识别,实时性可以满足,但精度不高;在图6中配合Dilb与HOG算法,我们得到了十分准确的人脸验证。

6  结  论

本文介绍了基于Dlib与OpenCV的智能摄像头,以及其硬件及软件平台的搭建,该系统可以实现人脸的检测、识别,以及对于特定物体的持续跟踪拍摄。该系统基于Linux系统,以Raspberry Pi 3B+作为处理核心,采用无线连接的方式。实现了无线布置监控、实时回传画面的功能。

在研究过程中,也发现了该方案存在的一些问题。首先,由于处理器性能的限制,在处理过程中必须降低图片质量,较少运算量才可以得到比较流畅地处理图片流。第二,在舵机的控制过程中,由于舵机本身的性能和算法误差的影响,非常容易产生抖动,导致拍摄画面不好,难以识别。最后,由于未进行防水处理等措施,不能裸机在特殊天气工作。

安防措施是保证人民人身财产安全的重要屏障。在智慧城市的建设过程中,智能摄像头应该拥有更快的运算速度,并且以更高的网速进行信息回传,并结合主机进行大数据挖掘、数据分析,对整个城市的安防状况包括人流量、车流量等,作出统计、分析与预测,并采取相关预防措施。我们相信,通过安防人的不懈努力,未来这些问题都将得到解决。

参考文献:

[1] 叶克秋.基于全景摄像机的智能视频监控系统研究 [D].杭州:浙江大学,2012.

[2] 付静飞.健康监测与服务系统研究与开发 [D].西安:西安理工大学,2017.

[3] 张齐.图像处理系统的设计与实现 [D].南京:南京邮电大学,2018.

[4] 黄窈蕙.智能驾驶汽车视觉图像处理技术 [J].公路交通科技(应用技术版),2018,14(8):323-326.

作者简介:王博文(1998.05—),男,汉族,内蒙古敖汉旗人,本科,主要研究方向:自动化。

猜你喜欢

人脸识别监控
谈高速公路特大桥施工监控
人脸识别的“国标”来了
关于FEP在地铁实现综合监控与冗余控制分析
中科视拓开放商业版本人脸识别算法
人脸识别好用但不能滥用
通信电源监控系统在电力通信中的应用
荣耀畅玩7C:人脸识别
iPhoneX来了!
GPS/DR/GIS技术在基于GSM—R列车监控系统中应用
“人脸识别”人工智能测谎仪研发成功