人脸识别最终章之利用预训练模型进行人脸识别
通过往期的文章分享,我们分享了人脸识别的前2个步骤,人脸数据的提取,人脸数据的神经网络训练,本期是人脸识别的最终章,通过前期文章训练的人脸数据模型,进行人脸的识别。
人脸识别结果
人脸识别系统初始化
初始化系统
2-6行,插入必要的第三方库
8-10行,导入人脸检测模型,人脸识别的前提步骤是从图片或者从视频中识别到人脸
12-13行,导入人脸识别模型
15-18行,导入上期文章训练的人脸模型数据,包括人脸数据以及人脸label
人脸识别的人脸检测
人脸检测
20-23行,我们导入要识别的一张人脸图片,并获取图片的尺寸
25-29行,计算图片的blob值,并导入人脸检测模型,使用前反馈从图片中检测到人脸
人脸识别的人脸数据筛选
人脸数据筛选
31-39行,首先从人脸检测到的数据中提取人脸检测的置信度,并筛选出置信度大于50%的数据,并从人脸置信度高的图片中,检测出人脸的大小尺寸,若人脸的尺寸小于20,此人脸看作是一个无效的数据
41-44行,从检测到人脸中,计算人脸的blob值,并把blob值导入人脸识别数据模型,使用前反馈识别人脸
人脸识别
人脸识别
46行,利用预训练模型识别人脸数据
47-48行,计算人脸识别的置信度(利用前期训练的人脸模型与数据对比,得到人脸识别模型与我们前期预训练的模型的对比置信度)
49行,得到人脸识别的label,也就是人脸的名称
50-51行,打印人脸识别的结果包括人脸名称与置信度
52-56行,画出人脸方框,并在方框上标注人脸名称与置信度
58-59行,显示图片
人脸识别
人脸识别之视频人脸识别
从视频中识别人脸,就是从识别中提取每帧视频的图片,利用图片的人脸识别进行人脸的数据对比,通过前期的文章分享,我们也分享了很多的视频识别 ,包括对象检测,本部分的人脸识别的步骤完全一样
初始化人脸模型
初始化人脸模型
打开默认摄像头
打开默认摄像头
人脸检测
人脸检测
29行,从视频中提取图片
33-38行,使用人脸检测模型检测人脸
人脸数据筛选
人脸数据筛选
39-47行,筛选检测到的人脸置信度大于50%的数据,并筛选人脸的尺寸大于20的数据
人脸识别
人脸识别
49-52行,进行人脸识别
53-56行,利用人脸预训练模型,识别出人脸的名称以及置信度
59-62行,画出人脸方框,并在方框中标注人脸的名称与置信度
视频数据输出
65行,实时显示人脸识别结果
当关闭程序时,打印一下识别的速度,当然电脑的配置越高,识别速度越快,从视频查看,并不觉的卡,当然也可以利用前期分享的多进程处理的方式,把识别的部分放到多进程里面来处理,在while true里面只显示结果便可。
人脸识别
序
通过这三期的文章分享,一个完整的人脸识别项目便可以实现了,大家可以参考这3章的文章,搜集人脸图片,进行一下自己的人脸识别系统的建立,比如智能家居,人脸识别考勤系统等等,都可以使用分享的方案进行人脸的识别,当然,小编的技术能力有限,人脸识别的精度若想提高到一定的等级,需要自己设计一些算法
从视频中截图照片