利索能及
我要发布
收藏
专利号: 202111478584X
申请人: 江苏理工学院
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-01
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种人脸口罩佩戴状态下的识别方法,其特征在于,具体实现过程包括以下步骤:

步骤一:对通过公开的包含佩戴口罩的人脸图像数据集以及自行使用图像采集设备拍摄获得的人脸图像做预处理构建初步人脸图像数据集;

步骤二:对初步构建的人脸图像数据集中自行采集的人脸图像使用Labelimg工具手动标注,保存带有口罩标签的图像和标签信息文件;

步骤三:将处理后的图像输入改进的YOLO V4网络进行训练,若检测出口罩则输出检测结果;

步骤四:对步骤一构建的数据集内的图像进行改进边缘检测,运用区域分割的思想去除包含口罩的下半部分轮廓图像获取局部轮廓图像;

步骤五:对步骤四获得的局部轮廓图像提取轮廓特征,识别阶段通过轮廓特征进行初筛,通过初筛的图像进入候选目标库,为后续精确识别做准备;

步骤六:将步骤四获得的局部轮廓图像坐标信息与步骤一构建的数据集内的图像结合获取局部人脸图像,对其提取尺度不变特征,并结合主成分分析降维处理,保存输出特征点特征信息至对应数据库内,识别阶段对通过步骤五筛选后的候选目标库内选择对象提取特征;

步骤七:输入目标人脸图像,完成口罩佩戴检测,对通过步骤五轮廓特征初筛的对象用步骤六的提取特征方法,将输出特征向量信息与数据库内信息进行匹配并最终输出识别结果;

在所述步骤一中,对人脸图像做预处理,具体预处理操作为:在公开的包含佩戴口罩的人脸图像数据集中选取人脸姿态端正的图像,在保证人脸位置相对端正的前提下自行使用图像采集设备拍摄获取相关图像,对这些选取后的图片进行包括去噪、图像信息增强、尺寸归一化、旋转操作,最终构建的初步人脸图像数据集为包含多个用户多张佩戴口罩以及无佩戴口罩人脸图片;

在所述步骤三中,使用改进后的YOLO V4网络对数据库内人脸图像进行训练,其中使用深度卷积模块改进了主干特征提取网络,具体方法为:首先对输入的特征层进行1*1的卷积,BatchNorm标准化和Swish激活函数激活进行升维操作,接着对升维后的特征层进行深度可分离卷积,卷积核大小为3×3或5×5,通过深度可分离卷积使特征层语义信息更加丰富,最后进行1×1的卷积、BatchNorm标准化和Swish激活进行降维,输出特征层,输入大小为x’*y’的图片,最终根据P6,P7,P8输出的 三个尺度的特征向量输出口罩佩戴的结果,z为最后输出的通道数;

在所述步骤四中,对步骤一构建的数据集内的图像进行改进边缘检测,具体方法为:在传统的Canny边缘检测算法中融入数学形态学技术,选用尺度大小分别为3*3和5*5的椭圆结构元素,结构元素b1是小尺度,结构元素b2尺度较大,对原图像先进行一次闭运算,再进行一次开运算,I=f·b2·b1,其中I为输出图像,f为初步人脸图像数据集;

在所述步骤四中,运用区域分割的思想去除包含口罩的下半部分轮廓图像获取局部轮廓图像,具体方法为:通过改进边缘检测获得图像的二值轮廓,对其进行均值滤波平滑处理后调用opencv库内findContours函数找到边缘以及rectangle函数创建包围轮廓的矩形框,对于输出的多个矩形框,选择图像像素坐标系内横向像素距离差最大或者矩形框中心点纵向像素位置最低的矩形框,判别该矩形框为包含口罩轮廓的矩形框,以该矩形框纵向坐标为基准,去除下半部分的轮廓图像获得局部轮廓图像;

在所述步骤五中,对步骤四获得的局部轮廓图像提取轮廓特征,识别阶段通过轮廓特征进行初筛,通过初筛的进入候选目标库,其中初步筛选的依据为:计算两幅图像的matchShapes函数 若Q小于设置阈值k,则通过初步筛选,对初筛的图片进行下一步骤的识别工作,其中,A表示对象1,B表示对象2, 表示对象1的Hu值,Hu不变矩在图像旋转、缩放、平移操作后,仍能保持矩的不变性,matchShapes函数Q内参数选取7个Hu不变矩中不变性保持的最好的第一个和第二个,其中x0=m10/m00,y0=m01/m00,

在所述步骤六中,对获取的局部人脸图像提取尺度不变特征后将输出的所有角点特征T

向量组合为矩阵X=[x1,x2,…,xz,…,xn],z表示识别对象的第z个角点,xz表示识别对象的第z个角点的128维的特征向量,为了提高匹配速度,将输出特征向量的维度降至D维,为此对矩阵X进行主成分分析,具体操作为:将X的每一行进行零均值化,即减去这一行的均值;

求出协方差矩阵;求出协方差矩阵的特征值及对应的特征向量;将特征向量按对应特征值大小从上到下按行排列为矩阵,取前D行组成矩阵P;Y=PX即为最后输出的降维后D维的特征向量;

在所述步骤七中,对通过步骤五轮廓特征初筛的对象用步骤六的提取特征方法,将输出特征向量信息与数据库内信息进行匹配并最终输出识别结果,其中角点筛选匹配依据如下:其中对于待识别对象A检测出N个角点,q’为数据库内待匹配对象,f(q’)表示第q’个对象检测出的角点数量,Z[f(q’)]表示第q’个对象与A匹配成功的角点数量,Z[fk(q’)]表示第q’个对象检测到第k个角点时与A匹配成功的角点数量,T[Kq’,Kq’+1]表示输出Kq’与Kq’+1中最小的对象q’的值, pnk(m)为两个角点特征向量间相似度,匹配时设置一个阈值Pα,若匹配时pnk(m)>Pα,则两个角点不匹配,Pα根据经验值及样本训练来设定,相似度设置为对象A与样本库内匹配对象角点间特征向量的相对欧式距离,pnk(m)表示对象A内第n个角点与样本库内对象第k个角点匹配,其中第m个匹配成功的角点之间的相对欧式距离;

为了进一步提高搜索速度,当计算pnk(m)时,

先计算 若前d维度相对欧式距离

已经大于阈值Pα,则不进行下面维度计算,d取小于整体维度D的值,

对象A第n个角点的欧式距离为:

对象A第n个角点与样本库内对象第k个角点之间的绝对欧式距离为:

Rn=(rn1,rn2,...,rnD)为识别对象第n个角点D维的特征描述向量,

Sk=(sk1,sk2,...,skD)为样本库内对象第k个角点对比匹配的D维特征描述向量,最后输出的X为匹配对象编号。