一种基于计算机视觉分析的智能化监控融合系统的制作方法

文档序号:18167206发布日期:2019-07-13 09:42阅读:191来源:国知局
一种基于计算机视觉分析的智能化监控融合系统的制作方法

本发明涉及工厂运行状态监控系统,具体涉及一种基于计算机视觉分析的智能化监控融合系统,属于安全监控领域。



背景技术:

在工厂的生产运行中,安全始终是放在第一位的。然而,在工厂的日常生产中,存在着许多安全隐患,例如重点区域温度过高、员工未佩戴安全帽进入工作区域、车辆驶入其无权限进入的区域、员工携物进入禁止携物的重要区域、员工走错工作区域等等,严重威胁了工厂的正常运行。



技术实现要素:

为解决上述问题,本发明提供了一种基于计算机视觉分析的智能化监控融合系统,包括视频监控系统、人脸识别系统、视频结构化分析系统、视频融合系统。

所述视频监控系统由前端摄像头、红外热像仪和视频监控平台构成;前端摄像头负责采集视频信息;红外热像仪负责采集厂区重要区域温度信息;视频监控平台接收前端摄像头采集的视频信息以及红外热像仪采集的厂区重要区域温度信息,进行显示,同时将视频信息传送给视频结构化分析系统,并将视频信息与厂区重要区域温度信息传送给视频融合系统。

所述人脸识别系统由人脸抓拍器、人脸面部识别模块和员工身份数据库构成;人脸抓拍器采集进出厂区各重点区域的员工图像,并传送给人脸面部识别模块;员工身份数据库存储每个员工的身份信息及其脸部特征;人脸面部识别模块接收人脸抓拍器采集的员工图像,进行人脸识别,通过与员工身份数据库的比对确定其身份信息,并将识别结果传送给视频融合系统。

所述人脸识别系统中员工脸部特征提取过程如下:采集厂区每个员工的人脸图像,图像大小为m×n,假设共有k名员工,则可得到k张人脸图像;对k张人脸图像进行灰度线性变换处理以及3×3中值滤波处理,得到k张人脸灰度图;将每张人脸灰度图的每一行像素的灰度值相连,则每张人脸灰度图可构成一个d=m×n维的行向量,对于第i张人脸灰度图,记其构成的行向量xi,并计算平均脸将k张人脸灰度图构成的k个行向量进行排列,构成k×d维的矩阵,并对该矩阵进行k-l变换,得到特征脸空间:w=(u1,u2,u3,…,up),式中:p为设置的降维后维数;计算每个员工的脸部特征,对于第j个员工,其脸部特征ωj的计算公式为:ωj=wt(xj-ψ)。

所述人脸识别系统中人脸面部识别模块进行人脸识别过程如下:采集人脸抓拍器抓拍到的进出厂区各重点区域的人脸图像,对人脸图像进行灰度线性变换得到人脸灰度图,将人脸灰度图每一行像素的灰度值相连,得到行向量y;计算该人脸图像的脸部特征ωj=wt(xj-ψ),式中:w为权利要求2中求得的特征脸空间:w=(u1,u2,u3,…,up),ψ为权利要求2中求得的平均脸;计算ωy与员工身份数据库存储的脸部特征的欧式距离,选出与ωy欧式距离最近的脸部特征,该脸部特征对应的员工身份即为人脸识别结果。

所述视频结构化分析系统由安全帽识别模块、车牌识别模块、工作服识别模块以及携物识别模块构成,其接收视频监控系统采集的视频信息,通过安全帽识别模块判断员工是否已佩戴安全帽、通过车牌识别判断模块车辆是否进入非授权区域、通过工作服识别模块判断员工工作服是否与其工作区域一致、通过携物识别模块判断员工是否携带包裹,并将分析结果传送给视频融合系统。

所述安全帽识别模块判断员工是否已佩戴安全帽的过程如下:

实时读取检测区域摄像头采集的视频信息,提取前一帧和当前帧,对前一帧和当前帧进行灰度化处理,得到前一帧和当前帧的灰度图;使用帧间差分法对前一帧和当前帧的灰度图进行处理,得到运动物体图;构造一个或多个运动物体估测矩形框提取出运动物体图中所有互相独立的部分,假设图中有k个互相独立的部分,则可得到k个运动物体估测矩形框;提取每个运动物体估测矩形框在当前帧的灰度图和彩色图中对应部分的图像,得到k张运动物体估测灰度图和k张运动物体估测彩色图;使用canny算子对k张运动物体估测灰度图进行逐一边缘检测,得到k张运动物体边缘图,在每张运动物体边缘图中构造一个运动物体矩形框包含该图中所有边缘,得到k个运动物体矩形框;根据人体长宽比例,确认运动物体矩形框中的人体矩形框,假设判断出有k个人体矩形框,提取每一个人体矩形框在运动物体估测彩色图中对应部分的图像,得到k张人体彩色图;对于每一个人体矩形框,根据人体上半身特征定位人体矩形框中人的头部,根据头部比例定位安全帽估测区域,得到k个安全帽估测区域;提取每一个安全帽估测区域在其对应的人体彩色图中对应部分的图像,得到k张安全帽区域彩色图,以颜色为依据逐一对安全帽区域彩色图进行判断;具体步骤如下:

步骤1,提取前一帧与当前帧,采用加权平均法对前一帧与当前帧图片进行灰度化处理,即对每个像素点的r,g,b三个分量分配不同的权重,具体公式如下:f(x,y)=0.3r(x,y)+0.59g(x,y)+0.11b(x,y),式中,r(x,y)、g(x,y)、b(x,y)分别指坐标为(x,y)的像素的r,g,b分量,f(x,y)指坐标为(x,y)的像素转换后的灰度值;

步骤2,使用帧间差分法对前一帧和当前帧的灰度图进行处理,得到运动物体图,过程如下:将两帧图像对应像素的灰度值进行相减,并取其绝对值,得到差分图像dn(x,y)=|fn(x,y)-fn-1(x,y)|,其中fn(x,y)指当前帧中坐标为(x,y)的像素的灰度值,fn-1(x,y)指前一帧中坐标为(x,y)的像素的灰度值;设置阈值ta,如果dn(x,y)>t,rn=255,如果dn(x,y)<t,rn=0,获得运动物体图r;r为二值化图像,其中白色区域代表运动物体区域;

步骤3,构造k个运动物体估测矩形框提取出运动物体图中所有互相独立的部分,并获取每一个运动物体估测矩形框的位置信息,存储于矩阵lo中,具体过程如下:

step1:以步骤2得到的运动物体图r的左下角为原点,建立坐标轴,运动物体图r在第一象限;设直线x=h,h初始值为0;

step2:将直线x=h右移一个单位,判断直线x=h上每个像素的像素值;

step3:如果直线x=h上每个像素的像素值都为0,返回step2;如果直线x=h上存在像素值不为0的像素,记此时的h为xmin;

step4:将直线x=h右移一个单位,判断直线x=h上每个像素的像素值;

step5:如果直线x=h上存在像素值非0的像素,记直线上最上面的非0像素对应的纵坐标值以及最下面非0像素对应的纵坐标值,并存储在数组y中,返回step4;如果直线x=h上每个像素的像素值都为0,记此时的h为xmax;

step6:对数组y中的元素的大小进行比较,得到y中的最大值ymax与最小值ymin;以直线y=ymax作为上边缘,直线y=ymin作为下边缘,直线x=xmin作为左边缘,直线x=xmax作为右边缘构造运动估测区域矩形框;数组y清零,记lok=(ymax,ymin,xmin,xmax,k)并存储在矩阵lo中,其中k初始值为1,每次构造运动估测区域矩形框后k值加1;

step7:重复step2到step6,直至直线x=h移动到二值化图片最右边时结束;

步骤4,提取每个运动物体估测矩形框在当前帧的灰度图和彩色图中对应部分的图像,得到k张运动物体估测灰度图g1,...,gk和k张运动物体估测彩色图p1,…,pk;提取过程如下:对于第i个运动物体估测矩形框,从步骤3得到的矩阵lo中读取其对应的位置信息loi=(ymax,ymin,xmin,xmax,i),利用上边缘、下边缘、左边缘和右边缘确认该运动物体估测矩形框的具体位置从而进行提取;

步骤5,使用canny算子逐一对运动物体估测灰度图g1到gk进行边缘检测,得到k张边缘图,将每张边缘图中所有边缘像素与运动物体图中对应位置的像素进行比较,删除边缘像素中与运动物体图中对应位置的像素像素值不相等的边缘像素,得到最终的运动物体边缘图;在每张运动物体边缘图中构造一个运动物体矩形框包含该图中所有边缘,得到k个运动物体矩形框m1,…,mk;

构造运动物体矩形框过程如下:首先,从下到上对该运动物体边缘图进行遍历,获得每一行的最左边的边缘像素xle={xl1,xl2,xl3,xl4,xl5,…,xlm}和最右边的边缘像素的横坐标xre={xr1,xr2,xr3,xr4,xr5,…,xrm},其中,xli代表第i行最左边的边缘像素的横坐标,xri代表第i行最右边的边缘像素的横坐标,m代表该运动物体边缘图行数;然后,从左到右对该运动物体边缘图进行遍历,获得每一列的最上面的边缘像素yhe={yh1,yh2,yh3,yh4,yh5,...,yhn}和最下面的边缘像素的纵坐标yle={yl1,yl2,yl3,yl4,yl5,...,yln},其中,yhi代表第i列最上面的边缘像素的纵坐标,yli代表第i列最下面的边缘像素的纵坐标,n代表该运动物体边缘图列数;最后,以xle中的最小元素作为左边缘,xre中最大元素作为右边缘,yhe中的最大元素作为上边缘,yle中的最小元素作为下边缘,构造运动物体矩形框;

步骤6,根据人体比例对运动物体矩形框m1到mk进行判断,得到其中的人体矩形框,假设判断出有k个人体矩形框,提取每一个人体矩形框在其对应的运动物体估测彩色图中对应部分的图像,得到k张人体彩色图;

判断是否是人体矩形框过程如下:记运动物体矩形框矩形长为l,宽为w,λ=w/l,设置阈值α、β;如果α<λ<β,则将其视为人体矩形框,否则视为其他物体;

步骤7,对于每一个人体矩形框,根据人体上半身特征定位人体矩形框中人的头部,根据头部比例定位安全帽估测区域,得到k个安全帽估测区域;

头部定位过程如下:首先,对人体矩形框进行切割,得到头部区域,具体如下:取人体矩形框上边缘作为头部区域上边缘,人体矩形框上边缘与下边缘1/3靠近上边缘的位置作为头部区域下边缘,人体矩形框的左边缘和右边缘作为头部区域的左边缘和右边缘;其次,从下到上遍历头部区域获得每一行最左边缘点和最右边缘点的横坐标,xld={xl1,xl2,xl3,xl4,xl5,…,xlg}和xrd={xr1,xr2,xr3,xr4,xr5,…,xrg},其中xli代表第i行最左边边缘点横坐标,xri代表第i行最右边边缘点坐标,g代表头部区域行数;然后,计算最左边边缘到最右边边缘的距离d=xrd-xld,得到d={d1,d2,d3,d4,d5,…,dg},计算d中元素后一项与前一项的差dδ={d2-d1,d3-d2,d4-d3,d5-d4,…,dg-dg-1};最后找出dδ从第11个元素到最后一个元素中最大的元素对应的行数p,将头部区域下边缘更新为第p行;

构造安全帽矩形框过程如下:分别找出xld中从xlp到xlg最小的元素xml的和xrd中从xrp到xrg的最大元素xmr,以x=xml作为精确头部区域左边缘,以x=xmr作为右边缘,以头部区域上边缘和下边缘作为精确头部上边缘和下边缘,得到精确头部区域;然后,对精确头部区域进一步切分以得到安全帽区域,具体如下:安全帽区域上、左、右边缘与精确头部区域一致,以精确头部区域上边缘与下边缘1/3靠近上边缘的位置作为安全帽区域下边缘;

步骤8,提取安全帽矩形框在人体彩色图对应位置的图像,得到张安全帽区域彩色图,以颜色为依据逐一对安全帽区域彩色图进行判断;

其判断过程如下:将安全帽区域彩色图转为hsv图像,由于一般工厂安全帽有红色、蓝色、白色和黄色,所以取红色、蓝色、白色和黄色作为判断标准,这四种颜色对应的色调h、饱和度s、明度v的取值范围如下:

红色:h:0-10和156-180;s:43-255;v:46-255

蓝色:h:100-124;s:43-255;v:46-255

白色:h:0-180;s:0-30;v:221-255

黄色:h:26-34;s:43-255;v:46-255

对每个像素的颜色进行分类,过程如下:如果待分类像素的h,s,v值均满足某种颜色的取值范围,则判断该像素的颜色属于该颜色;分类结束后,计算红色、蓝色、白色和黄色的像素占全部像素的比例,得到红色比例tr、蓝色比例tb、白色比例tw和黄色比例ty;设置阈值t1,如果tr、tb、tw、ty中存在一个值超过t1,则判定已佩戴安全帽;如果tr、tb、tw、ty均小于t1,则判断未佩戴安全帽。

所述车牌识别模块判断模块车辆是否进入非授权区域过程如下:

提取当前帧,使用平均值法对当前帧进行灰度化和灰度拉伸处理,得到当前帧灰度图;使用canny算子对当前帧灰度图进行边缘提取,得到边缘图;对边缘图进行四次膨胀、四次腐蚀和中值滤波以消除噪声;使用hough变换确定边缘图中的直线,根据车牌上下平行、左右平行以及车牌长度和宽度的比例特征确定车牌所在位置,构造车牌识别区域;对车牌识别区域的图像进行垂直方向投影,根据峰值群的特点进行分割,得到每个字符图像;使用bp神经网络对每个字符图像进行识别,得到每个字符,从而识别车牌号;识别出车牌号之后,查找数据库确定该车牌对应的授权区域,与当前摄像头所在区域进行比对,如果摄像头所在区域不属于车牌授权区域,则进行警示。

所述工作服识别模块判断员工工作服是否与其工作区域一致过程如下:

实时读取检测区域摄像头采集到的视频信息,提取当前帧和前几帧,对当前帧和前几帧进行灰度化处理得到当前帧和前几帧的灰度图;使用高斯混合模型对前几帧的灰度图进行建模训练更新,得到最终模型;利用该模型对当前帧灰度图的每个像素点进行判断,得到运动物体图;构造一个或多个运动物体矩形框提取出运动物体图中所有互相独立的部分,假设图中有k个互相独立的部分,则可得到k个运动物体矩形框;根据人体长宽比例,确认物体矩形框中的人体矩形框,假设判断有l个人体矩形框,提取每一个人体矩形框在当前帧彩色图片对应位置的图像,得到l张人体彩色图;对于每一张人体矩形框,根据人体比例确定上身位置,以上身位置作为工作服估测区域,提取工作服估测区域在对应的人体彩色图对应部分的图像,得到l张工作服彩色图;按照颜色对每一张工作服彩色图进行判断,具体如下:将工作服彩色图转为hsv图像,对每个像素点进行分类,若像素点的h,s,v值均满足某种颜色的取值范围,将其分类为该颜色,计算每种颜色的像素占全部像素的比例,设置阈值t=0.6,如果某种颜色的比例超过阈值t,则将该工作服判定为该颜色,查询数据库,得到当前摄像头的位置对应的工作区域工作服颜色,与判定的颜色进行对比,若不一致,进行警示;如果所有颜色的比例都不超过阈值t,则判定为员工未穿戴工作服,进行警示。

所述携物识别模块判断员工是否携带包裹过程如下:

实时读取检测区域摄像头采集到的视频信息,提取当前帧和前几帧,对其进行灰度化处理,得到当前帧和前几帧灰度图;使用vibe算法对前几帧的灰度图进行建模训练更新,得到最终模型;使用该模型对当前帧灰度图的每个像素点进行判断,得到运动区域,构建人体边界矩形包含所有运动区域;根据人体比例构造物体估测矩形;以物体估测矩形内物体的对称性为标准判断是否携物;具体步骤如下:

步骤1,读取摄像头采集到的视频信息,提取前几帧和当前帧;对每一帧进行灰度化处理,采用加权平均法对图像进行灰度化:每个像素点进行加权运算,对r,g,b三个分量分配不同的权重,f(x,y)=0.3r(x,y)+0.59g(x,y)+0.11b(x,y)式中,x,y指的是像素点坐标;

步骤2,使用vibe算法对前几帧的灰度图进行建模训练更新,得到最终模型;

步骤3,使用最终模型对当前帧灰度图的每个像素点进行判断,得到运动区域,构建人体边界矩形包含所有运动区域;

步骤4,根据人体比例形成物体估测矩形,具体如下:以人体边界矩形的上边缘与下边缘的1/5靠近上边缘的位置作为物体估测矩形的上边缘,以人体边界矩形上边缘与下边缘间2/5靠近下边缘的位置作为物体估测矩形的下边缘,以人体边界矩形的左边缘与右边缘间分别为物体估测矩形的左边缘和右边缘,形成物体估测矩形;

步骤5,以物体估测区域的对称性为标准判断是否携物,过程如下:以物体估测矩形左下角为原点建立坐标系,物体估测矩形在第一象限,取物体估测矩形上边缘的物体部分的中点m,得到其横坐标xm,以x=xm为对称轴,计算对称轴左边区域的物体面积s1,计算对称轴右边的物体面积s2,计算对称程度设置阈值th和tl,如果tl<β<th,判断为未携带物体,否则判断为携带物体。

所述视频融合系统,融合视频监控系统、人脸识别系统和视频结构化分析系统,形成面向用户的视频应用系统,在一个软件中实现视频查看、视频报警提示、视频回放、报警记录、用户管理、角色管理、权限管理等一系列功能,方便对视频应用的统一管理。

本发明的有益效果在于:能对厂区的工作状况进行实时监控与分析,一旦发现员工未携带安全帽、员工携物进入禁止携物区域、车辆驶入其未授权区域、员工走错工作区域、重点区域温度过高等危险情况,能及时进行警示并即时查看。

附图说明

图1为本发明所提出的基于计算机视觉分析的智能监控融合系统结构图。

具体实施方式

本发明所提出的基于计算机视觉分析的智能监控融合系统结构如图1所示,视频监控系统由前端摄像头、红外热像仪和视频监控平台构成;前端摄像头负责采集视频信息;红外热像仪负责采集厂区重要区域温度信息;视频监控平台接收前端摄像头采集的视频信息以及红外热像仪采集的厂区重要区域温度信息,进行显示,同时将视频信息传送给视频结构化分析系统,并将视频信息与厂区重要区域温度信息传送给视频融合系统。

人脸识别系统由人脸抓拍器、人脸面部识别模块和员工身份数据库构成;人脸抓拍器采集进出厂区各重点区域的员工图像,并传送给人脸面部识别模块;员工身份数据库存储每个员工的身份信息及其脸部特征;人脸面部识别模块接收人脸抓拍器采集的员工图像,进行人脸识别,通过与员工身份数据库的比对确定其身份信息,并将识别结果传送给视频融合系统。

视频结构化分析系统由安全帽识别模块、车牌识别模块、工作服识别模块以及携物识别模块构成,其接收视频监控系统采集的视频信息,通过安全帽识别模块判断员工是否已佩戴安全帽、通过车牌识别判断模块车辆是否进入非授权区域、通过工作服识别模块判断员工工作服是否与其工作区域一致、通过携物识别模块判断员工是否携带包裹,并将分析结果传送给视频融合系统。

视频融合系统,包括视频报警提示模块、视频回放模块、报警记录模块、用户管理模块、角色管理模块、权限管理模块。

所述安全帽识别模块判断员工是否已佩戴安全帽的过程如下:

步骤1,提取前一帧与当前帧,采用加权平均法对前一帧与当前帧图片进行灰度化处理,即对每个像素点的r,g,b三个分量分配不同的权重,具体公式如下:f(x,y)=0.3r(x,y)+0.59g(x,y)+0.11b(x,y),式中,r(x,y)、g(x,y)、b(x,y)分别指坐标为(x,y)的像素的r,g,b分量,f(x,y)指坐标为(x,y)的像素转换后的灰度值;

步骤2,使用帧间差分法对前一帧和当前帧的灰度图进行处理,得到运动物体图,过程如下:将两帧图像对应像素的灰度值进行相减,并取其绝对值,得到差分图像dn(x,y)=|fn(x,y)-fn-1(x,y)|,其中fn(x,y)指当前帧中坐标为(x,y)的像素的灰度值,fn-1(x,y)指前一帧中坐标为(x,y)的像素的灰度值;设置阈值ta,本实例取ta值为当前帧像素的1/10,即ta=fn(x,y)/10;如果dn(x,y)>t,rn=255,如果dn(x,y)<t,rn=0,获得运动物体图r;r为二值化图像,其中白色区域代表运动物体区域;

步骤3,构造k个运动物体估测矩形框提取出运动物体图中所有互相独立的部分,并获取每一个运动物体估测矩形框的位置信息,存储于矩阵lo中,具体过程如下:

step1:以步骤2得到的运动物体图r的左下角为原点,建立坐标轴,运动物体图r在第一象限;设直线x=h,h初始值为0;

step2:将直线x=h右移一个单位,判断直线x=h上每个像素的像素值;

step3:如果直线x=h上每个像素的像素值都为0,返回step2;如果直线x=h上存在像素值不为0的像素,记此时的h为xmin;

step4:将直线x=h右移一个单位,判断直线x=h上每个像素的像素值;

step5:如果直线x=h上存在像素值非0的像素,记直线上最上面的非0像素对应的纵坐标值以及最下面非0像素对应的纵坐标值,并存储在数组y中,返回step4;如果直线x=h上每个像素的像素值都为0,记此时的h为xmax;

step6:对数组y中的元素的大小进行比较,得到y中的最大值ymax与最小值ymin;以直线y=ymax作为上边缘,直线y=ymin作为下边缘,直线x=xmin作为左边缘,直线x=xmax作为右边缘构造运动估测区域矩形框;数组y清零,记lok=(ymax,ymin,xmin,xmax,k)并存储在矩阵lo中,其中k初始值为1,每次构造运动估测区域矩形框后k值加1;

step7:重复step2到step6,直至直线x=h移动到二值化图片最右边时结束;

步骤4,提取每个运动物体估测矩形框在当前帧的灰度图和彩色图中对应部分的图像,得到k张运动物体估测灰度图g1,…,gk和k张运动物体估测彩色图p1,…,pk;提取过程如下:对于第i个运动物体估测矩形框,从步骤3得到的矩阵lo中读取其对应的位置信息loi=(ymax,ymin,xmin,xmax,i),利用上边缘、下边缘、左边缘和右边缘确认该运动物体估测矩形框的具体位置从而进行提取;

步骤5,使用canny算子逐一对运动物体估测灰度图g1到gk进行边缘检测,得到k张边缘图,将每张边缘图中所有边缘像素与运动物体图中对应位置的像素进行比较,删除边缘像素中与运动物体图中对应位置的像素像素值不相等的边缘像素,得到最终的运动物体边缘图;在每张运动物体边缘图中构造一个运动物体矩形框包含该图中所有边缘,得到k个运动物体矩形框m1,…,mk;

构造运动物体矩形框过程如下:首先,从下到上对该运动物体边缘图进行遍历,获得每一行的最左边的边缘像素xle={xl1,xl2,xl3,xl4,xl5,…,xlm}和最右边的边缘像素的横坐标xre={xr1,xr2,xr3,xr4,xr5,…,xrm},其中,xli代表第i行最左边的边缘像素的横坐标,xri代表第i行最右边的边缘像素的横坐标,m代表该运动物体边缘图行数;然后,从左到右对该运动物体边缘图进行遍历,获得每一列的最上面的边缘像素yhe={yh1,yh2,yh3,yh4,yh5,...,yhn}和最下面的边缘像素的纵坐标yle={yl1,yl2,yl3,yl4,yl5,…,yln},其中,yhi代表第i列最上面的边缘像素的纵坐标,yli代表第i列最下面的边缘像素的纵坐标,n代表该运动物体边缘图列数;最后,以xle中的最小元素作为左边缘,xre中最大元素作为右边缘,yhe中的最大元素作为上边缘,yle中的最小元素作为下边缘,构造运动物体矩形框;

步骤6,根据人体比例对运动物体矩形框m1到mk进行判断,得到其中的人体矩形框,假设判断出有k个人体矩形框,提取每一个人体矩形框在其对应的运动物体估测彩色图中对应部分的图像,得到k张人体彩色图;

判断是否是人体矩形框过程如下:记运动物体矩形框矩形长为l,宽为w,λ=w/l,设置阈值α、β,本实例中α、β分别取3和5;如果α<λ<β,则将其视为人体矩形框,否则视为其他物体;

步骤7,对于每一个人体矩形框,根据人体上半身特征定位人体矩形框中人的头部,根据头部比例定位安全帽估测区域,得到k个安全帽估测区域;

头部定位过程如下:首先,对人体矩形框进行切割,得到头部区域,具体如下:取人体矩形框上边缘作为头部区域上边缘,人体矩形框上边缘与下边缘1/3靠近上边缘的位置作为头部区域下边缘,人体矩形框的左边缘和右边缘作为头部区域的左边缘和右边缘;其次,从下到上遍历头部区域获得每一行最左边缘点和最右边缘点的横坐标,xld={xl1,xl2,xl3,xl4,xl5,…,xlg}和xrd={xr1,xr2,xr3,xr4,xr5,…,xrg},其中xli代表第i行最左边边缘点横坐标,xri代表第i行最右边边缘点坐标,g代表头部区域行数;然后,计算最左边边缘到最右边边缘的距离d=xrd-xld,得到d={d1,d2,d3,d4,d5,…,dg},计算d中元素后一项与前一项的差dδ={d2-d1,d3-d2,d4-d3,d5-d4,…,dg-dg-1};最后找出dδ从第11个元素到最后一个元素中最大的元素对应的行数p,将头部区域下边缘更新为第p行;

构造安全帽矩形框过程如下:分别找出xld中从xlp到xlg最小的元素xml的和xrd中从xrp到xrg的最大元素xmr,以x=xml作为精确头部区域左边缘,以x=xmr作为右边缘,以头部区域上边缘和下边缘作为精确头部上边缘和下边缘,得到精确头部区域;然后,对精确头部区域进一步切分以得到安全帽区域,具体如下:安全帽区域上、左、右边缘与精确头部区域一致,以精确头部区域上边缘与下边缘1/3靠近上边缘的位置作为安全帽区域下边缘;

步骤8,提取安全帽矩形框在人体彩色图对应位置的图像,得到张安全帽区域彩色图,以颜色为依据逐一对安全帽区域彩色图进行判断;

其判断过程如下:将安全帽区域彩色图转为hsv图像,由于一般工厂安全帽有红色、蓝色、白色和黄色,所以取红色、蓝色、白色和黄色作为判断标准,这四种颜色对应的色调h、饱和度s、明度v的取值范围如下:

红色:h:0-10和156-180;s:43-255;v:46-255

蓝色:h:100-124;s:43-255;v:46-255

白色:h:0-180;s:0-30;v:221-255

黄色:h:26-34;s:43-255;v:46-255

对每个像素的颜色进行分类,过程如下:如果待分类像素的h,s,v值均满足某种颜色的取值范围,则判断该像素的颜色属于该颜色;分类结束后,计算红色、蓝色、白色和黄色的像素占全部像素的比例,得到红色比例tr、蓝色比例tb、白色比例tw和黄色比例ty;设置阈值t1,本实例t1取0.5;如果tr、tb、tw、ty中存在一个值超过t1,则判定已佩戴安全帽;如果tr、tb、tw、ty均小于t1,则判断未佩戴安全帽。

所述携物识别模块判断员工是否携带包裹过程如下:

步骤1,读取摄像头采集到的视频信息,提取前几帧和当前帧;对每一帧进行灰度化处理,采用加权平均法对图像进行灰度化:每个像素点进行加权运算,对r,g,b三个分量分配不同的权重,f(x,y)=0.3r(x,y)+0.59g(x,y)+0.11b(x,y)式中,x,y指的是像素点坐标;

步骤2,使用vibe算法对前几帧的灰度图进行建模训练更新,得到最终模型;

步骤3,使用最终模型对当前帧灰度图的每个像素点进行判断,得到运动区域,构建人体边界矩形包含所有运动区域;

步骤4,根据人体比例形成物体估测矩形,具体如下:以人体边界矩形的上边缘与下边缘的1/5靠近上边缘的位置作为物体估测矩形的上边缘,以人体边界矩形上边缘与下边缘间2/5靠近下边缘的位置作为物体估测矩形的下边缘,以人体边界矩形的左边缘与右边缘间分别为物体估测矩形的左边缘和右边缘,形成物体估测矩形;

步骤5,以物体估测区域的对称性为标准判断是否携物,过程如下:以物体估测矩形左下角为原点建立坐标系,物体估测矩形在第一象限,取物体估测矩形上边缘的物体部分的中点m,得到其横坐标xm,以x=xm为对称轴,计算对称轴左边区域的物体面积s1,计算对称轴右边的物体面积s2,计算对称程度设置阈值th和tl,本实例th取值0.75,tl取值1.33;如果tl<β<th,判断为未携带物体,否则判断为携带物体。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可推想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1