一种人脸非配合场景下的小人脸识别方法与流程

文档序号:19156898发布日期:2019-11-16 00:56阅读:733来源:国知局
一种人脸非配合场景下的小人脸识别方法与流程

本发明属于图像识别技术领域,具体涉及一种人脸非配合场景下的小人脸识别方法。



背景技术:

人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术,它由计算机分析人脸图像,从图像中提取有效信息并自动鉴别,人脸识别技术广泛应用于安全系统及人机交互等方面,已成为计算机视觉和模式识别领域中重要的研究课题之一。

对于人脸识别技术来说,如果人脸图像是在正面采集到的,具有较高的分辨率,通常识别精度比较高,但是当人脸姿态发生改变,尤其是监控等摄像头拍摄到的大量人脸图片时,即使采用很好的模型,由于训练的数据有限,识别效果也会大打折后。



技术实现要素:

本发明的目的在于提供一种人脸非配合场景下的小人脸识别方法,通过迁移学习将其他小目标检测的模型参数用于小人脸检测,并利用mtcnn与face_net网络模型进一步检测与识别人脸。

为实现上述目的,本发明提供如下技术方案:一种人脸非配合场景下的小人脸识别方法,包括以下步骤:

s1、视频流解析:获取监控摄像头等拍下的视频,将视频流解析多幅视频帧,并且转化为rgb格式;

s2、图像获取与小目标检测:该步骤整体分为两个模块,首先采集一些不同类别的小目标图像,通过faster_rcnn模型检测小目标,利用训练好的模型接着检测视频帧中的人脸,若有人脸,返回检测框,若无人脸,舍弃当前视频帧;

s3、人脸检测:通过专有的人脸检测模型,进一步检测视频帧中的人脸,返回人脸特征图;

s4、人脸识别:采用face_net网络以及相应的比对算法,对人脸进行识别,返回检测结果。

优选的,所述s2中的小目标图像为水龙头、开关中的任意一项。

优选的,小目标检测迁移学习步骤:

s5、通过faster_rcnn训练“水龙头”数据集,将处理过的视频帧带入训练好的网络接着学习;

s6、通过faster_rcnn训练“开关”数据集,将处理过的视频帧带入训练好的网络接着学习;

s7、通过faster_rcnn训练不同类型的小目标数据集,比较不同数据集下的迁移学习效果。

优选地,所述图像获取与小目标检测步骤包括:

s2.1、faster_rcnn目标检测步骤:利用卷积提取“水龙头”,“开关”图像特征,采用vgg-16模型,将p*q的原始图片,裁剪为m*n的图片,经过13个conv_relu层,穿插四个max_pooling层;

s2.2、经过rpn网路生成候选框和roi池化,使proposal大小变为一致,带入全连接层,利用boundingbox回归,得到检测框的粗略位置。

优选地,在s3中人脸检测步骤包括:

s3.1、迁移学习步骤:将上述faster_rcnn训练好的模型接着用于检测视频帧中的人脸。

s3.2、人脸检测步骤:使用mtcnn模型精确检测人脸,并进行对齐,返回人脸图像矩阵。

s3.3、人脸识别步骤:利用face_net网络将人脸图像矩阵转化为512维向量,返回向量列表,输入一张代识别图像,经过上述处理,与人脸库进行比对,返回检测结果。

与现有技术相比,本发明的有益效果是:

该种人脸非配合场景下的小人脸识别方法,与现有技术相比,其显著的效果在于,提高了模型的泛化能力,有效增加识别率并且缩短了学习时间,通过解析视频流,利用小目标检测迁移学习初步检测人脸,利用人脸检测模型对初步检测的人脸模型再次训练,实现人脸的精确检测与对齐,通过facenet网络将图像矩阵转化为向量列表,最后将人脸与库中的进行比对,返回识别结果,本发明将迁移学习与人脸检测,识别相结合,在非配合场景下,快速,有效的得到最终检测结果。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明的小人脸识别方法的流程图结构示意图;

图2为本发明的小脸识别效果对比结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-2,本发明提供以下技术方案:一种人脸非配合场景下的小人脸识别方法,包括以下步骤:

s1、视频流解析:获取监控摄像头等拍下的视频,将视频流解析多幅视频帧,并且转化为rgb格式;

s2、图像获取与小目标检测:该步骤整体分为两个模块,首先采集一些不同类别的小目标图像,通过faster_rcnn模型检测小目标,利用训练好的模型接着检测视频帧中的人脸,若有人脸,返回检测框,若无人脸,舍弃当前视频帧;

s3、人脸检测:通过专有的人脸检测模型,进一步检测视频帧中的人脸,返回人脸特征图;

s4、人脸识别:采用face_net网络以及相应的比对算法,对人脸进行识别,返回检测结果。

具体的,s2中的小目标图像为水龙头、开关中的任意一项。

具体的,图像获取与小目标检测步骤包括:

faster_rcnn目标检测步骤:

1.1利用卷积提取“水龙头”,“开关”图像特征,采用vgg-16模型,将p*q的原始图片,裁剪为m*n的图片,经过13个conv_relu层,穿插四个max_pooling层;

1.2.rpn网路生成候选框;

1.3.roi池化,使proposal大小变为一致,带入全连接层,利用boundingbox回归,得到检测框的粗略位置。

迁移学习步骤:

1.1.通过faster_rcnn训练“水龙头”数据集,将处理过的视频帧带入训练好的网络接着学习;

1.2.通过faster_rcnn训练“开关”数据集,将处理过的视频帧带入训练好的网络接着学习;

1.3.通过faster_rcnn训练不同类型的小目标数据集,比较不同数据集下的迁移学习效果。

1.4.将上述faster_rcnn训练好的模型接着用于检测视频帧中的人脸。

人脸检测步骤:

使用mtcnn模型精确检测人脸,并进行对齐,返回人脸图像矩阵。

人脸识别步骤:

利用face_net网络将人脸图像矩阵转化为512维向量,返回向量列表;输入一张代识别图像,经过上述处理,与人脸库进行比对,返回检测结果。

下面以其中一段代码对该过程做阐述:

(1)首先利用mtcnn模型检测人脸并预处理;

defload_and_align_data(image_paths,image_size,margin,gpu);

返回images:字典(键:人名;值:人脸矩阵列表)。

(2)利用face_net模型将人脸矩阵列表转化为人脸向量列表,根据图像列表生成注册人脸库保存在json中;

defgenerate_facalib(image_files,save_file);

(3)识别人脸是否为库中人员,是则返回名称,不是则返回不匹配信息;

defface_recognize(file_name,lib_file);

输入一张待识别人脸,调用(1)中所述函数,利用(2)中的face_net模型将待识别图像转化为向量;

将待识别人脸与人脸库中进行比对;

forkeyinface_lib.keys();

distance=0;

foriinrange(len(face_lib[key][‘image’][i]));

distance+=np.linalg.norm(embnp.array(face_lib[key][‘image’][i]));

distance/=float(len(face_lib[key][‘image’]));

ifkey==list(images.keys())[0];

print(list(image.keys())[0],‘:’,distance);

ifdistance<threshold;

name=key;

threshold=distance。

本发明的工作原理及使用流程:首先获取监控摄像头等拍下的视频,将视频流解析多幅视频帧,并且转化为rgb格式,再利用卷积提取“水龙头”,“开关”图像特征,采用vgg-16模型,将p*q的原始图片,裁剪为m*n的图片,经过13个conv_relu层,穿插四个max_pooling层,经过rpn网路生成候选框和roi池化,使proposal大小变为一致,带入全连接层,利用boundingbox回归,得到检测框的粗略位置,通过faster_rcnn训练“水龙头”数据集,将处理过的视频帧带入训练好的网络接着学习,通过faster_rcnn训练“开关”数据集,将处理过的视频帧带入训练好的网络接着学习,通过faster_rcnn训练不同类型的小目标数据集,比较不同数据集下的迁移学习效果,利用训练好的模型接着检测视频帧中的人脸,若有人脸,返回检测框,使用mtcnn模型精确检测人脸,并进行对齐,返回人脸图像矩阵,利用face_net网络将人脸图像矩阵转化为512维向量,返回向量列表,输入一张代识别图像,经过上述处理,与人脸库进行比对,返回检测结果,若无人脸,舍弃当前视频帧。

最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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