基于人脸识别的视频监控系统及其数据处理方法
(一)、技术领域:本发明涉及一种视频监控系统及其数据处理方法,特别是涉及一种基于人脸识别的视频监控系统及其数据处理方法。
(二)、背景技术:在传统的视频监控环境下,监控管理人员往往要对监控视频画面中搜索出的人脸进行仔细观察并与嫌疑犯人的图片进行比对,一旦需要关注的前端视频画面或嫌疑人过多,将十分耗费人的精力。随着人工智能和计算机图像技术的飞速发展,实时人脸检测和识别技术不断取得新的发展,这些技术在一定程度上能够替代管理人员对监控画面中出现的人脸自动进行检测、识别。相对于指纹、虹膜、掌纹、语音等其他识别技术,人脸识别具有可以隐藏操作,非接触式采集,没有侵犯性,图像采集设备成本低等特点。人脸识别技术将广泛地应用于公安、银行、机场、车站、码头、商场、考场等众多公共场所与领域。
视频监控下的人脸识别技术涉及到多个领域的专业知识。虽在国内外取得一些应用成果,还未取得类似指纹识别和虹膜识别的类似的满意结果。目前的人脸识别监控系统有还有以下缺点:
1)视频拍摄角度限制过死,不利于前端监控设备的架设;
2)受制于处理器技术的发展,DSP、FPGA等芯片无法做到实时的监控识别;
3)受人脸区域的光照、遮挡、尺度或移动等因素影响,人脸识别算法性能达不到预想效果;
4)市场上多数系统无法集中式实现人脸识别;
目前的视频监控下的人脸识别技术绝大多数都有上述共性的缺陷,这些缺陷致使视频控系统只能运用到一些特定的或者预先定制好的场景,无法处理复杂的监控环境。
(三)、发明内容:
本发明要解决的技术问题是:克服现有技术的缺陷,提供一种识别速度快、准确性高的基于人脸识别的视频监控系统及其数据处理方法。
本发明的技术方案:
一种基于人脸识别的视频监控系统,含有N路数据采集电路、中心服务器单元和显示输出单元,N路数据采集电路的输出通讯端与中心服务器单元的通讯端口连接,中心服务器单元的输出端与显示输出单元连接,每路数据采集电路含有视频采集单元、信号处理单元和数据传输单元,视频采集单元的输出端与信号处理单元的输入端连接,信号处理单元的输出通讯端通过数据传输单元与中心服务器单元的通讯端口连接,N为大于等于1的自然数。
在每一路数据采集电路中,视频采集单元含有M个CCD传感器,CCD传感器的数量可根据实际情况和系统的整体性能确定,信号处理单元含有中央处理器和存储器,存储器与中央处理器的存储器端口连接,数据传输单元为传输网络,M个CCD传感器的输出信号进入中央处理器的信号输入端,中央处理器的输出信号经传输网络进入中心服务器单元的通讯端口;M为大于等于1的自然数。
中心服务器单元中含有工作站或高性能计算机,用Linux系统或Windows系统作为运行环境,显示输出单元中含有显示器,中央处理器的输出信号经传输网络进入服务器的通讯端口,服务器的显示输出端与显示器连接。
中央处理器为ARM处理器,或为DSP处理器,或为FPGA处理器;存储器含有SDRAM存储器和FLASH存储器,传输网络为Internet网。
一种基于人脸识别的视频监控系统的数据处理方法,含有下列步骤:
步骤1:视频采集单元进行实时画面的采集;视频采集单元可分布在各个不同的特定地点,以便于进行视频采集;视频采集单元的软件采用用嵌入式系统开发。
步骤2:信号处理单元对步骤1中采集的视频数据进行处理:采用ASM(Active Shape Model)人脸检验算法对人脸进行检测,然后将检测到的视频数据和人脸检测信息编码,并将编码后的视频数据和人脸检测信息压缩打包;ASM人脸检测算法使得前端视频采集单元的架设、采光等受到很小的限制;
步骤3:数据传输单元将信号处理单元压缩打包后传输来的数据传送到中心服务器单元;数据传输单元采用端对端的流媒体传输机制,以保证视频数据的传输质量;
步骤4:中心服务器单元按预定的协议接收并解码各数据传输单元传输来的数据,然后汇总数据,进行集中式人脸识别,最后将识别结果存储并送显示输出单元;
步骤5:显示输出单元根据中心服务器单元传送来的识别结果进行显示。显示输出单元有选择地显示人脸识别的部分结果。
步骤2中,信号处理单元中的中央处理器进行ASM人脸检验算法的运算,并进行数据的编码和压缩打包;信号处理单元还控制、修正视频采集单元的参数,调整视频采集单元中的镜头参数,使镜头聚焦跟踪人脸区域,重点对人脸画面区域进行采集。
步骤4中,中心服务器单元还通过数据传输单元远程控制信号处理单元和视频采集单元的参数,以获得最佳人脸图像。信号处理器单元的可控制参数有:视频格式、图像格式、帧率、码率、ASM算法的灵敏等,视频采集单元的可控制参数为:图像的亮度、色度、对比度、镜头、对焦等。
步骤4中的集中式人脸识别方法为:中心服务器单元将接收到的视频数据按帧存储在自身的存储器中,接着按下列步骤进行人脸识别:
步骤4.1:从存储器中按顺序取出一帧图像数据进行图像预处理,该图像预处理含有光照补偿和中值滤波操作;一方面,人脸图像会随着光照强度的改变而改变,光照变化是影响人脸检测性能的关键因素之一,光照条件不好,尤其是偏光、暗光、强光破坏了人脸模式的灰度特征,因此,采用光照补偿算法来弱化光照对人脸检测的影响。另一方面,在实际图像拍摄中一般会携带随机噪声和干扰噪声,如果对噪声不处理直接进行人脸检测,肯定会影响检测的效果,对检测结果带来很大的误差。因此在进行人脸检测之前尽量先去噪,使用中心滤波器对每帧图像数据进行中值滤波处理。
步骤4.2:对图像预处理后的帧数据进行人脸检测:首先建立起反应人脸目标形状变化规律的形状统计模型和反应人脸目标灰度分布规律的局部灰度模型,局部灰度模型通过训练得到;然后,利用局部灰度模型进行人脸搜索,利用形状统计模型对搜索到的形状进行近似表达,同时对合理性进行判断,对不合理的形状进行调整以保证形状在统计意义上的合理性;如果检测到有人脸目标,则执行步骤4.3,如果没有检测到人脸目标,则执行步骤4.1;
步骤4.3:对检测到的当前帧图像数据中存在的人脸图片进行人脸图片尺度变换处理和人脸图片灰度归一化处理;
步骤4.4:采用DCT(Discreat Cosine Transform,离散余玄变换)算法和MMSD(Multiple Maximum Scatter Difference,最大散度差)算法相结合的人脸识别算法,先对预先采集到的人脸数据库的人脸图片进行二维DCT变换,然后再对二维DCT变换后的变换系数矩阵应用MMSD算法进行特征提取,获得最优特征鉴别矩阵W;
最优特征鉴别矩阵W的计算过程为:首先,对预先采集到的人脸数据库的每个样本做二维DCT变换,得到的变换系数矩阵为T={x1,x2,...,xi...,xN},其中,xi为每个样本经过二维DCT变换后得到的变换系数向量,N是人脸数据库的样本数;
然后,依据变换系数矩阵T计算类间散度矩阵Sw和类内散度矩阵Sb;
最后,基于MMSD算法获得人脸数据库的最优特征鉴别矩阵W;
步骤4.5:将步骤4.3中经过尺度变换处理和灰度归一化处理后的人脸图片先经过二维DCT变换,然后再投影到步骤4.4中的最优特征鉴别矩阵W,利用最近邻分类方法匹配人脸图片,利用欧式距离进行测度运算,运算公式如下:
其中,Y为人脸图片经过二维DCT变换后投影到最优特征鉴别矩阵W的向量,Zj=WTxj,WT为W的转置,xj是变换系数矩阵T的第j列数据,j=1,2,...,N,yk表示Y的第k个值,zjk表示Zj的第k个值,dist(Y,Zj)为Y和Zj的欧氏距离,m为Y的列数;
人脸识别的最终结果为:
r*=mindist(Y,Zj)
其中,Zj为Z的第j个列向量,Z=WTT,r*表示Y与Zj的欧氏距离最小,这时的Zj的列号对应的类别就是人脸识别的最终结果。
步骤4.3中的人脸图片灰度归一化处理采用典型的直方图均衡方法,其变换公式如下:
k1=0,1,2,...,L-1
其中,n1是人脸图片中像素的总和,n1j1是灰度级为rj1的像素个数,L为人脸图片中可能的灰度级总数,pr(rj1)指灰度级为rj1的像素占总的像素的比例,直方图均衡方法就是根据该变换公式将人脸图片中灰度级为rj1的各像素映射到输出图像中灰度级为sk1的对应像素;
步骤4.3中的人脸图片尺度变换处理方法为:按照预先设定的宽高,采用三次插值算法裁剪人脸图片的大小,方便以后的识别操作。
DCT算法是一种优良的数据压缩方法,一幅人脸图像经过二维DCT变换后,其变换系数矩阵左上角的有限个系数包含了人脸图像的大部分信息。一个M×M的人脸图片f(α,β)(α,β=0,1,...,M-1)经过二维DCT变换后得到的变换系数向量F(u,v)为:
其中,α、β分别为人脸图片的两个空域序列,u、v分别为人脸图片的两个变换域序列,u,v=0,1,...,M-1。
最小化类内散步矩阵和最大化类间散布矩阵是两个通用的鉴别特征提取准则。LDA(Linear Discriminant Analysis,线性判别分析)算法虽然给出了一种熵的准则提取鉴别特征,但LDA本身无法克服小样本问题。最大间距准则是基于特征空间的类间散度与类内散度的差的最大化,其目的是需求一组最佳鉴别矢量为投影轴进行投影变换,使得特征空间样本的类间散度最大、类内散度最小。
步骤4.4中的MMSD算法(最优特征提取准则)可以由下式给出:
W=argmax(WT(Sb-σ·Sw)W)
其中,W为最优特征鉴别矩阵,WT为W的转置,σ是平衡因子;W为Sb-σ×Sw的前c-1个非零特征值对应的特征向量形成的矩阵,c指人脸数据库中的类数。
本发明的有益效果:
1、本发明通过信号处理单元对采集到的含有人脸区域最大化的视频图像逐帧进行人脸检测,并经过网络传输单元将检测到的人脸图片传送到中心服务器单元,最终由中心服务器单元进行人脸识别功能,中心服务器单元由工作站等相对速度快的处理器实现识别功能,不仅识别速度快,而且识别准确。前端的视频采集单元和信号处理单元实现最大化人脸检测功能,后端的中心服务器单元则根据前端检测到的最大化人脸图片实现人脸识别,且具有自组学习功能,可不断提高人脸识别效果,且实时性好,不必受前端微处理器速度限制,可以大大减轻前端处理单元的负荷。
2、本发明的集中式人脸识别方法从采集到的视频信号中取得人脸图片,再对人脸图片进行尺度变换和灰度归一化处理;采用DCT和MMSD相结合的算法对预先采集到的人脸数据库的人脸图片进行处理,获得最优特征鉴别矩阵;最后根据处理过的人脸图片和最优特征鉴别矩阵进行人脸识别;该集中式人脸识别方法对人脸的识别较准确。
(四)、附图说明:
图1为基于人脸识别的视频监控系统的原理框图;
图2为基于人脸识别的视频监控系统的数据处理方法的流程示意图。
(五)、具体实施方式:
如图1所示,基于人脸识别的视频监控系统含有N路数据采集电路、中心服务器单元和显示输出单元,N路数据采集电路的输出通讯端与中心服务器单元的通讯端口连接,中心服务器单元的输出端与显示输出单元连接,每路数据采集电路含有视频采集单元、信号处理单元和数据传输单元,视频采集单元的输出端与信号处理单元的输入端连接,信号处理单元的输出通讯端通过数据传输单元与中心服务器单元的通讯端口连接,N为大于等于1的自然数。
在每一路数据采集电路中,视频采集单元含有M个CCD传感器,CCD传感器的数量可根据实际情况和系统的整体性能确定,信号处理单元含有中央处理器和存储器,存储器与中央处理器的存储器端口连接,数据传输单元为传输网络,M个CCD传感器的输出信号进入中央处理器的信号输入端,中央处理器的输出信号经传输网络进入中心服务器单元的通讯端口;M为大于等于1的自然数。
中心服务器单元中含有工作站或高性能计算机,用Linux系统或Windows系统作为运行环境,显示输出单元中含有显示器,中央处理器的输出信号经传输网络进入服务器的通讯端口,服务器的显示输出端与显示器连接。
中央处理器为ARM处理器,或为DSP处理器,或为FPGA处理器;存储器含有SDRAM存储器和FLASH存储器,传输网络为Internet网。
基于人脸识别的视频监控系统的数据处理方法含有下列步骤:
步骤1:视频采集单元进行实时画面的采集;视频采集单元可分布在各个不同的特定地点,以便于进行视频采集;视频采集单元的软件采用用嵌入式系统开发。
步骤2:信号处理单元对步骤1中采集的视频数据进行处理:采用ASM(Active Shape Model)人脸检验算法对人脸进行检测,然后将检测到的视频数据和人脸检测信息编码,并将编码后的视频数据和人脸检测信息压缩打包;ASM人脸检测算法使得前端视频采集单元的架设、采光等受到很小的限制;
步骤3:数据传输单元将信号处理单元压缩打包后传输来的数据传送到中心服务器单元;数据传输单元采用端对端的流媒体传输机制,以保证视频数据的传输质量;
步骤4:中心服务器单元按预定的协议接收并解码各数据传输单元传输来的数据,然后汇总数据,进行集中式人脸识别,最后将识别结果存储并送显示输出单元;
步骤5:显示输出单元根据中心服务器单元传送来的识别结果进行显示。显示输出单元有选择地显示人脸识别的部分结果。
步骤2中,信号处理单元中的中央处理器进行ASM人脸检验算法的运算,并进行数据的编码和压缩打包;信号处理单元还控制、修正视频采集单元的参数,调整视频采集单元中的镜头参数,使镜头聚焦跟踪人脸区域,重点对人脸画面区域进行采集。
步骤4中,中心服务器单元还通过数据传输单元远程控制信号处理单元和视频采集单元的参数,以获得最佳人脸图像。信号处理器单元的可控制参数有:视频格式、图像格式、帧率、码率、ASM算法的灵敏等,视频采集单元的可控制参数为:图像的亮度、色度、对比度、镜头、对焦等。
步骤4中的集中式人脸识别方法为:中心服务器单元将接收到的视频数据按帧存储在自身的存储器中,接着按下列步骤进行人脸识别:
步骤4.1:从存储器中按顺序取出一帧图像数据进行图像预处理,该图像预处理含有光照补偿和中值滤波操作;一方面,人脸图像会随着光照强度的改变而改变,光照变化是影响人脸检测性能的关键因素之一,光照条件不好,尤其是偏光、暗光、强光破坏了人脸模式的灰度特征,因此,采用光照补偿算法来弱化光照对人脸检测的影响。另一方面,在实际图像拍摄中一般会携带随机噪声和干扰噪声,如果对噪声不处理直接进行人脸检测,肯定会影响检测的效果,对检测结果带来很大的误差。因此在进行人脸检测之前尽量先去噪,使用中心滤波器对每帧图像数据进行中值滤波处理。
步骤4.2:对图像预处理后的帧数据进行人脸检测:首先建立起反应人脸目标形状变化规律的形状统计模型和反应人脸目标灰度分布规律的局部灰度模型,局部灰度模型通过训练得到;然后,利用局部灰度模型进行人脸搜索,利用形状统计模型对搜索到的形状进行近似表达,同时对合理性进行判断,对不合理的形状进行调整以保证形状在统计意义上的合理性;如果检测到有人脸目标,则执行步骤4.3,如果没有检测到人脸目标,则执行步骤4.1;
步骤4.3:对检测到的当前帧图像数据中存在的人脸图片进行人脸图片尺度变换处理和人脸图片灰度归一化处理;
步骤4.4:采用DCT(Discreat Cosine Transform,离散余玄变换)算法和MMSD(Multiple Maximum Scatter Difference,最大散度差)算法相结合的人脸识别算法,先对预先采集到的人脸数据库的人脸图片进行二维DCT变换,然后再对二维DCT变换后的变换系数矩阵应用MMSD算法进行特征提取,获得最优特征鉴别矩阵W;
最优特征鉴别矩阵W的计算过程为:首先,对预先采集到的人脸数据库的每个样本做二维DCT变换,得到的变换系数矩阵为T={x1,x2,...,xi...,xN},其中,xi为每个样本经过二维DCT变换后得到的变换系数向量,N是人脸数据库的样本数;
然后,依据变换系数矩阵T计算类间散度矩阵Sw和类内散度矩阵Sb;
最后,基于MMSD算法获得人脸数据库的最优特征鉴别矩阵W;
步骤4.5:将步骤4.3中经过尺度变换处理和灰度归一化处理后的人脸图片先经过二维DCT变换,然后再投影到步骤4.4中的最优特征鉴别矩阵W,利用最近邻分类方法匹配人脸图片,利用欧式距离进行测度运算,运算公式如下:
其中,Y为人脸图片经过二维DCT变换后投影到最优特征鉴别矩阵W的向量,Zj=WTxj,WT为W的转置,xj是变换系数矩阵T的第j列数据,j=1,2,...,N,yk表示Y的第k个值,zjk表示Zj的第k个值,dist(Y,Zj)为Y和Zj的欧氏距离,m为Y的列数;
人脸识别的最终结果为:
r*=mindist(Y,Zj)
其中,Zj为Z的第j个列向量,Z=WTT,r*表示Y与Zj的欧氏距离最小,这时的Zj的列号对应的类别就是人脸识别的最终结果。
步骤4.3中的人脸图片灰度归一化处理采用典型的直方图均衡方法,其变换公式如下:
k1=0,1,2,...,L-1
其中,n1是人脸图片中像素的总和,n1j1是灰度级为rj1的像素个数,L为人脸图片中可能的灰度级总数,pr(rj1)指灰度级为rj1的像素占总的像素的比例,直方图均衡方法就是根据该变换公式将人脸图片中灰度级为rj1的各像素映射到输出图像中灰度级为sk1的对应像素;
步骤4.3中的人脸图片尺度变换处理方法为:按照预先设定的宽高,采用三次插值算法裁剪人脸图片的大小,方便以后的识别操作。
DCT算法是一种优良的数据压缩方法,一幅人脸图像经过二维DCT变换后,其变换系数矩阵左上角的有限个系数包含了人脸图像的大部分信息。一个M×M的人脸图片f(α,β)(α,β=0,1,...,M-1)经过二维DCT变换后得到的变换系数向量F(u,v)为:
其中,α、β分别为人脸图片的两个空域序列,u、v分别为人脸图片的两个变换域序列,u,v=0,1,...,M-1。
最小化类内散步矩阵和最大化类间散布矩阵是两个通用的鉴别特征提取准则。LDA(LinearDiscriminantAnalysis,线性判别分析)算法虽然给出了一种熵的准则提取鉴别特征,但LDA本身无法克服小样本问题。最大间距准则是基于特征空间的类间散度与类内散度的差的最大化,其目的是需求一组最佳鉴别矢量为投影轴进行投影变换,使得特征空间样本的类间散度最大、类内散度最小。
步骤4.4中的MMSD算法(最优特征提取准则)可以由下式给出:
W=argmax(WT(Sb-σ·Sw)W)
其中,W为最优特征鉴别矩阵,WT为W的转置,σ是平衡因子;W为Sb-σ·Sw的前c-1个非零特征值对应的特征向量形成的矩阵,c指人脸数据库中的类数。
下面结合图2进一步说明基于人脸识别的视频监控系统的数据处理方法:
首先,信号处理单元2获得视频采集单元1采集到的数字图像,一方面,对每帧图像进行人脸检测,基于ASM模型匹配算法判断当前帧是否有人脸存在,若存在人脸,则取出人脸区域并对人脸区域进行编码,继续检测下一帧图像,若不存在,则检测下一帧图像,并按人脸区域最大化算法控制采集单元镜头与聚焦;另一方面,信号处理单元对获得的视频流进行H.264编码。
其次,将编码后视频流和人脸区域按端对端的流媒体传输机制经互联网3传输上传到中心服务器单元4。
中心服务器单元4解码前端视频流数据和人脸区域数据,并汇总各路人脸区域数据,实现集中式人脸识别功能,存储识别结果。
最后,显示输出单元5显示出解码后视频流和人脸识别结果。