预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于Tensorflow的人脸口罩识别系统的设计与实现 1.1题目的主要研究内容 (1)工作的主要描述 人脸口罩识别主要是可以有效检测在密集人流区域中携带和未携戴口罩的 所有人脸,同时判断该者是否佩戴口罩。本系统由两个功能单元组成,可以分别 完成口罩人脸的检测和口罩人脸的分类。 (2)系统流程图 批量图片数据 基础卷积层 辅助卷积层ssd网络目标定位和检测 预测卷积层 模型参数更 损失函数计算 新 1.2题目研究的工作基础或实验条件 (1)硬件环境 芯片:AppleM1 内存:8GB (2)软件环境 开发语言:python(版本号python3.7) 开发软件:PyCharm 1.3数据集描述 本设计所用数据集是在公开数据集上找了将近8000张的人脸口罩数据和模 型,主要来源于WIDERface和MAFA数据集。其中包括了4064张佩戴口罩的 人脸图片,3894张未佩戴口罩的人脸图片。并将这些数据集分为测试集和验证 集两部分。 带口罩的数据集: 不戴口罩的数据集: 1.4特征提取过程描述 本设计采用了ssd架构的人脸检测算法,在这基础上增加一个类别分类,即 戴口罩和不戴口罩两类。在这个模型中输入是260*260大小的图片,主干网络只 有8个卷积层,有五个定位和分类层,一共具有28层,且每个卷积层的通道数 目基本都是32、64、128这三种。其网络结构为: Conv+ReLu—Pooling—Conv+ReLu—Pooling—Conv+ReLu—Pooling—Conv +ReLu—Pooling—Conv+ReLu—Pooling—Conv+ReLu—Pooling—Conv+ReLu— Conv+ReLu—Conv—ReLu—Conv—Permute—Reshape—sigmoid, 其中前面八个卷积层为主干网络,主要应用于特征提取,最后面为定位和分 类层。在ssd的网络中原始图像经过卷积层转换后得到原图像的特征映射图,再 用多个卷积层对特征映射图处理后用来定位和检测原始图像。ssd的网络结构中 包含了基础网络,辅助卷积层和预测卷积层。其中基础网络用来提取低尺度的特 征映射图,辅助卷积层用来提取高尺度的特征映射图。 基础网络的结构采用了vgg-16的网络架构,因为VCG-16网络包含了卷积 层和全连接层(FCLayers),全连接层的任务用来分类,由于基础网络只需要 提取特征映射图,因此需要对全连接层用卷积层代替。辅助卷积层连接基础网络 最后的特征映射图,通过卷积神经网络输出4个高尺度的特征映射图 1.5分类过程描述 在ssd网络模型中预测卷积层用来输出特征映射图的位置信息和分类信息。 训练目标检测模型,最重要的就是合理的设置anchor的大小和宽高比。所以在 模型五个卷积上接出来的定位分类层其大小设置为: 第一层:特征图大小45*45,anchor大小0.04,0.056,anchor宽高比1,0.62,0.42; 第二层:特征图大小23*23,anchor大小0.08,0.11,anchor宽高比1,0.62,0.42; 第三层:特征图大小12*12,anchor大小0.16,0.22,anchor宽高比1,0.62,0.42; 第四层:特征图大小6*6,anchor大小0.32,0.45,anchor宽高比1,0.62,0.42; 第五层:特征图大小4*4,anchor大小0.64,0.72,anchor宽高比1,0.62,0.42; 预测层预测了映射图每个点的矩形框信息和分类信息,该点的损失值等于矩 形框位置的损失与分类的损失之和。首先我们计算映射图每个点的先验框与真实 框的交并比,若交并比大于设置的阈值,则该先验框与真实框所标记的类相同, 称为正类即戴口罩并用绿色框圈起来;若小于设置的阈值,则称为负类即不戴口 罩,用红色框圈起来。 1.6主要程序代码(要求必须有注释) importcv2 importargparse fromPILimportImage fromutils.anchor_generatorimportgenerate_anchors fromutils.anchor_decodeimportdecode_bbox fromutils.nmsimportsingle_class_non_max_suppression fromload_model.pytorch_loaderimportload_pytorch_model,pytorch_inference importsys importnumpyasnp importtorch importtorch.nnasnn importtorch.nn.functionalasF sys