基于概率融合的红外图像人体识别方法
技术领域
本发明涉及基于概率融合的红外图像人体识别方法,属于传感器检测领域。
背景技术
人体目标检测具有非常广泛的应用,比如智能监控,根据人体目标的位置调整摄像机的角度,获得最佳的监控效果,还有智能家居,根据人体目标的位置调整空调的出风方向或者取暖设备的供暖方向,达到最舒适的效果,也可以根据环境内是否有人存在,而控制空调设备的启动或者停止,达到节约能源的目的。但是目前人体目标检测的方式,主要有两个:第一种是人体红外热释电的检测方式,这个方式只能检测动态人体,具有很大的局限性;第二种是靠红外光或者可见光进行成像,然后通过形态学的方法进行识别,这种方式容易被复杂场景干扰,稳定性差,并且人体可能会出现站姿、卧姿、坐姿等,单独使用一种方法进行识别,总会出现失效的情况。
发明内容
针对上述问题,本发明提供基于概率融合的红外图像人体识别方法,该方案通过红外成像模块获取环境的红外图像,并根据人体特征温度进行区域目标提取,再根据长宽比,面积大小,是否移动分别计算概率值,最后融合计算综合概率,并判断成像区域是否为人体目标
本发明解决其技术问题所采用的技术方案是:
基于概率融合的红外图像人体识别方法,包括进行集中处理的处理器,与所述的处理器连接的红外成像模块,所述的红外成像模块上设置进行聚焦成像的镜头,与所述的处理器连接的存储数据的RAM,还包括提供工作电压的电源,所述的处理器内部设置人体识别方法,所述的人体识别方法包括以下步骤:
(1) 设置数据链表L={ai(xi, yi, ci, p1 i, p2 i, p3 i)},其中,i=0,1,2......,xi=1~M,yi=1~N,M为所述的红外成像模块x轴方向上的最大像素个数,N为所述的红外成像模块y轴方向上的最大像素个数,ci为时间计数器,最大值为Cmax,p1 i, p2 i, p3 i为概率值,代表目标为人体目标的可能性大小,取值范围为0~100%,其中p1 i是根据形态学测算的概率值,p2 i是根据面积大小测算的概率值,p3 i是目标移动累计的概率值;
(2) 所述的处理器每个固定周期通过所述的红外成像模块获取场景的红外图像f(x,y),其中x=1~M,y=1~N,并存储在所述的RAM中;
(3) 对红外图像f(x,y)进行二值化处理,得到二值图I0(x,y),采用的方法为:当T1<f(x,y)<T2,则I0(x,y)=1,否则I0(x,y)=0,其中,T1为人体温度对应红外辐射强度采样值的下限值,T2为人体温度对应红外辐射强度采样值的上限值;
(4) 对二值图I0(x,y)进行腐蚀运算,消除成像过程中产生的噪声,得到腐蚀图I1(x,y);
(5) 复制腐蚀图I1(x,y)到临时图I2(x,y),在临时图I2(x,y)中搜索非零区域Qj,计算非零区域Qj的长宽比rj、几何中心点oj(xj,yj)和面积sj,j=0,1,2......,并将非零区域Qj清零;如果无法搜索到非零区域Qj,则执行步骤8;
(6) 计算p1 j和p2 j的值:p1 j=,其中R为人体的标准长宽比,p2 j=,其中S为3米距离成年男子和成年女子的人体成像面积均值;执行匹对算法,以来自同一非零区域的原则,将几何中心点oj(xj,yj)和数据链表L中的元素ai(xi,yi)进行配对,并求两者之间的距离Dij=,执行步骤7;如果几何中心点oj(xj,yj)未匹配,则以(xj,yj,cj=Cmax,p1 j, p2 j, p3 j=0%)为新增点,加入数据链表L,执行步骤5;
(7) 如果距离Dij>T3,其中T3代表采样周期内人体正常移动的经验阈值,则所述的处理器判断对应非零区域可能为人体信号,则更新数据链表的元素ai,即xi=xj,yi=yj,ci=Cmax,p1 i=p1 j, p2 i=p2 j, pi=pi+1%;如果距离Dij≤T3,更新数据链表L的节点数据ai(xi,yi,ci,p1 i,p2 i, p3 i),xi=nxj+(1-n)xi, yi=nyj+(1-n)yi,ci=ci,p1 i=p1 j, p2 i=p2 j, p3 i=p3 i,其中n为权重系数,0<n<1;
(8) 数据链表L中所有元素ai的时间计数器ci自减一,即ci=ci-1;删除数据链表L中的所有ci为0的节点数据;搜索数据链表L中元素ai,进行概率融合,综合概率pi=k1*p1 i+k2*p2 i+k3*p3 i,其中k1,k2,k3为权重系数,并且k1+k2+k3=1,则综合概率pi最大的像素点(xi,yi)对应成像区域最可能为人体目标,返回步骤2。
在步骤5中,计算非零区域Qj的长宽比rj、几何中心点oj(xj,yj)和面积sj采用如下步骤:
(5-1)设置临时变量yMAX,yMIN,xMAX,xMIN,初始化sj=0;在临时图I2(x,y)中沿x轴从左至右,沿y轴方向从下至上搜索,当第一个像素点(xm,yn)使I2(xm,yn)等于1,则确定非零区域Qj,xMAX=xMIN=xm,yMAX=yMIN=yn,同时I2(xm,yn)=0;
(5-2)从像素点(xm,yn)开始,沿y轴向上和向下搜索,寻找I2(xm,y)等于1的所有连续像素点,y值范围y+和y-,令I2(xm,y)=0,其中y=y-......y+;如果y+>yMAX,,则yMAX=y+;如果y-<yMIN,,则yMIN=y-;sj=sj+(y+-y-)+1;
(5-3) 在直线x=xm+1上,在y++1和y--1范围寻找像素点(xm+1,ynn)使I2(xm+1,ynn)等于1,如果成功,则xm=xm+1,yn=ynn,xMAX=xm,返回步骤5-2;如果失败,执行步骤5-4;
(5-4) 则rj=(yMAX-yMIN)/(xMAX-xMIN);xj=(xMAX+xMIN)/2,yj=(yMAX+yMIN)2。
在步骤6中,所述的匹对算法通过如下步骤实现:
(6-1) 将几何中心点oj(xj, yj)映射到腐蚀图I1(x,y)中,位于非零区域Qj内,标记为I1(xj, yj)=2;
(6-2) 数据链表L中的元素ai(xi, yi)也映射到腐蚀图I1(x,y)中,如果I1(xi, yi)等于1,则在该非零区域内搜寻数值为2的像素点,并建立匹配关系(i, j);未形成匹配关系的几何中心点oj(xj,yj)为新增点。
本发明的有益效果主要表现在:1、通过红外成像模块获取环境的红外图像,根据人体温度特征确定目标区域;2、综合长宽比,面积大小和是否移动,九三综合概率值,为人体目标识别提供判断依据。
附图说明
图1是系统框图;
图2是非零区域搜索示意图;
图3是概率分布图。
具体实施方式
下面结合附图对本发明作进一步描述:
参照图1-3,基于概率融合的红外图像人体识别方法,包括进行集中处理的处理器1,与所述的处理器1连接的红外成像模块2,所述的红外成像模块2上设置进行聚焦成像的镜头3,与所述的处理器1连接的存储数据的RAM4,还包括提供工作电压的电源5。所述的镜头3将红外辐射进行聚焦,投射到所述的红外成像模块2,所述的红外成像模块2进行光电转化,并数字化,所述的处理器1根据所述的红外成像模块2的接口信号要求,进行读取,并存储到所述的RAM4内。
所述的处理器1内部设置人体识别方法,所述的人体识别方法包括以下步骤:
(1) 设置数据链表L={ai(xi, yi, ci, p1 i, p2 i, p3 i)},其中,i=0,1,2......,xi=1~M,yi=1~N,M为所述的红外成像模块2x轴方向上的最大像素个数,N为所述的红外成像模块2y轴方向上的最大像素个数,ci为时间计数器,最大值为Cmax,p1 i, p2 i, p3 i为概率值,代表目标为人体目标的可能性大小,取值范围为0~100%,其中p1 i是根据形态学测算的概率值,p2 i是根据面积大小测算的概率值,p3 i是目标移动累计的概率值;
步骤1是建立数据链表,为后续数据提取和分析做准备,数据结构中包括了像素坐标,时间计数器和三个概率值。
(2) 所述的处理器1每个固定周期通过所述的红外成像模块2获取场景的红外图像f(x,y),其中x=1~M,y=1~N,并存储在所述的RAM4中;
步骤2是获取红外图像f(x,y),f(x,y)的数值跟场景中的温度成正比,温度越高数值越大。
(3) 对红外图像f(x,y)进行二值化处理,得到二值图I0(x,y),采用的方法为:当T1<f(x,y)<T2,则I0(x,y)=1,否则I0(x,y)=0,其中,T1为人体温度对应红外辐射强度采样值的下限值,T2为人体温度对应红外辐射强度采样值的上限值;
健康人体温度是36°,在异常情况下,体温也不会偏离很大,因此步骤3中,根据实际测量的人体目标红外图像数据值,设定上下限阈值T1和T2,以此对红外图像f(x,y)进行二值化,提取可能为人体目标的兴趣区域。
(4) 对二值图I0(x,y)进行腐蚀运算,消除成像过程中产生的噪声,得到腐蚀图I1(x,y);
步骤4是对二值图I0(x,y)进行预处理,可采用3*3的模板。
(5) 复制腐蚀图I1(x,y)到临时图I2(x,y),在临时图I2(x,y)中搜索非零区域Qj,计算非零区域Qj的长宽比rj、几何中心点oj(xj,yj)和面积sj,j=0,1,2......,并将非零区域Qj清零;如果无法搜索到非零区域Qj,则执行步骤8;
步骤5是在临时图I2(x,y)中搜索可能为人体的区域,并计算长宽比rj,几何中心点oj和面积sj,具体方法后面会详述。如果已经完成所有非零区域的搜索,则执行步骤8。
(6) 计算p1 j和p2 j的值:p1 j=,其中R为人体的标准长宽比,p2 j=,其中S为3米距离成年男子和成年女子的人体成像面积均值;执行匹对算法,以来自同一非零区域的原则,将几何中心点oj(xj,yj)和数据链表L中的元素ai(xi,yi)进行配对,并求两者之间的距离Dij=,执行步骤7;如果几何中心点oj(xj,yj)未匹配,则以(xj,yj,cj=Cmax,p1 j, p2 j, p3 j=0%)为新增点,加入数据链表L,执行步骤5;
步骤6中,计算p1 j和p2 j的值:以人体的标准长宽比R和成年男子和成年女子的人体成像面积均值S为中心,建立标准正态概率分布,根据长宽比rj和面积sj,就可以计算p1 j和p2 j的值;然后,将当前检测到的几何中心点oj(xj,yj)与代表历史数据的数据链表L中的元素ai(xi,yi)进行匹对,将来自同一非零区域的坐标进行比较,也就是计算两个点之间的距离Dij,从而可以判断该非零区域是否产生实质性移动。具体的匹对算法,后文会详细阐述。如果没有得到匹配,则为新增点,将(xj,yj,cj=Cmax,p1 j, p2 j, p3 j=0%)加入数据链表L。
(7) 如果距离Dij>T3,其中T3代表采样周期内人体正常移动的经验阈值,则所述的处理器1判断对应非零区域可能为人体信号,则更新数据链表的元素ai,即xi=xj,yi=yj,ci=Cmax,p1 i=p1 j, p2 i=p2 j, pi=pi+1%;如果距离Dij≤T3,更新数据链表L的节点数据ai(xi,yi,ci,p1 i, p2 i, p3 i),xi=nxj+(1-n)xi, yi=nyj+(1-n)yi,ci=ci,p1 i=p1 j, p2 i=p2 j, p3 i=p3 i,其中n为权重系数,0<n<1;
在步骤7中,首先根据距离Dij判断是否发生移动,当距离Dij大于阈值T3时,代表非零区域发生了运动,是人体目标的可能性很大,而非某种热源。然后,更新元素ai,并增加概率值pi,代表该区域为人体目标的概率增大;如果距离Dij≤T3,则表示非零区域没有发生明显移动,还不能判断该区域为人体目标,则将新的坐标值与旧的坐标值进行融合,得到非零区域晃动的平均位置。
(8) 数据链表L中所有元素ai的时间计数器ci自减一,即ci=ci-1;删除数据链表L中的所有ci为0的节点数据;搜索数据链表L中元素ai,进行概率融合,综合概率pi=k1*p1 i+k2*p2 i+k3*p3 i,其中k1,k2,k3为权重系数,并且k1+k2+k3=1,则综合概率pi最大的像素点(xi,yi)对应成像区域最可能为人体目标,返回步骤2。
元素ai的时间计数器ci用于记录对应成像区域的滞留时间,如果长时间滞留,则从数据链表L中删除。然后对链表L中元素ai进行概率融合,综合了长宽比,成像面积和是否移动,以综合概率pi最大的元素,代表可能性最大的人体目标,识别成功率非常高。
在步骤5中,计算非零区域Qj的长宽比rj、几何中心点oj(xj,yj)和面积sj采用如下步骤:
(5-1) 设置临时变量yMAX,yMIN,xMAX,xMIN,初始化sj=0;在临时图I2(x,y)中沿x轴从左至右,沿y轴方向从下至上搜索,当第一个像素点(xm,yn)使I2(xm,yn)等于1,则确定非零区域Qj,xMAX=xMIN=xm,yMAX=yMIN=yn,I2(xm,yn)=0;
如图2所示,在临时图I2(x,y)搜索非零区域,从像素点(1,1)开始从x轴从左至右,沿y轴方向从下至上搜索,直到搜到第一个像素点(xm,yn)使I2(xm,yn)等于1,则确定非零区域Qj,然后进行数据存储。
(5-2) 从像素点(xm,yn)开始,沿y轴向上和向下搜索,寻找I2(xm,y)等于1的所有连续像素点,y值范围y+和y-;令I2(xm,y)=0,其中y=y-......y+;如果y+>yMAX,,则yMAX=y+;如果y-<yMIN,则yMIN=y-;sj=sj+(y+-y-)+1;
在步骤5-2中,找出非零区域Qj与直线x=xm的相交部分;为了方便下一个非零区域的搜索,把这部分清零,并更新yMIN,yMIN值,累计面积sj。
(5-3) 在直线x=xm+1上,在y++1和y--1范围寻找像素点(xm+1,ynn)使I2(xm+1,ynn)等于1,如果成功,则xm=xm+1,yn=ynn,xMAX=xm,返回步骤5-2;如果失败,执行步骤5-4;
在x轴方向上,向左移动一个像素距离,即x=xm+1上,在y++1和y--1范围搜寻使I2(x,y)等于1的像素点,如果成功,则表明非零区域Qj在x=xm+1位置上还存在联通区域,更新xm,yn和xMAX后,返回步骤5-2;如果没有找到I2(x,y)等于1的像素点,则说明非零区域Qj已经搜索完成。
(5-4) 则rj=(yMAX-yMIN)/(xMAX-xMIN);xj=(xMAX+xMIN)/2,yj=(yMAX+yMIN)2。
在步骤6中,所述的匹对算法通过如下步骤实现:
(6-1) 将几何中心点oj(xj, yj)映射到腐蚀图I1(x,y)中,位于非零区域Sj内,标记为I1(xj, yj)=2;
因为几何中心点oj(xj,yj)来自于腐蚀图I1(x,y)中的非零区域,所以映射回腐蚀图I1(x,y),必然位于非零区域内。
(6-2) 数据链表L中的元素ai(xi, yi)也映射到腐蚀图I1(x,y)中,如果I1(xi, yi)等于1,则在该非零区域内搜寻数值为2的像素点,并建立匹配关系(i, j);未形成匹配关系的几何中心点oj(xj,yj)为新增点。
数据链表L中的元素ai(xi,yi)也映射到腐蚀图I1(x,y)就可能出现两种情况,如果非零区域还存在,即使处在移动状态,移动距离也会有限,所以元素ai(xi,yi)也会落在非零区域,即I1(xi,yi)等于1,在该区域内就可以找到对应的几何中心点oj(xj,yj),形成匹配关系(i,j);在腐蚀图I1(x,y)中,没有被匹配的几何中心点oj(xj,yj)就是新增点,代表新增目标形成的非零区域。