基于深度学习的口罩佩戴检测研究
1. 课题背景及研究意义
随着新冠疫情的爆发,口罩成为了一种重要的防止病毒传播的手段。然而,有些人并不遵守佩戴口罩的规定,也有些人佩戴口罩的方式不正确,这可能会增加病毒的传播风险。因此,为了监督公共场所的口罩佩戴情况、预防疫情的扩散以及保护公众健康,研究开发能够自动检测佩戴口罩的技术具有重要意义。
2. 口罩佩戴检测整体设计
首先,在口罩配佩戴检测之前需实现人脸的定位,具体实现为基于opencv,通过CascadeClassifier 级联分类器实现对人脸的实时检测,然后将人脸定位结果进行裁剪,输入训练好的cnn模型进行预测,然后同步预测结果,可是实现口罩佩戴的实时检测。
3. 口罩佩戴检测实现
github开源的两个数据集,将两个数据集合并,其中,戴口罩数据为1296张,不带口罩数据为1146张。同时对数据进行增强,基于opencv实现
基于tensorflow框架构建卷积神经网络,训练loss如图所示。
model = tf.keras.models.Sequential([
tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(250, 250, 3)),
tf.keras.layers.MaxPooling2D(2, 2),
tf.keras.layers.Conv2D(64, (3, 3), activation='relu'),
tf.keras.layers.MaxPooling2D(2, 2),
tf.keras.layers.Conv2D(128, (3, 3), activation='relu'),
tf.keras.layers.MaxPooling2D(2, 2),
tf.keras.layers.Flatten(),
tf.keras.layers.Dropout(0.5),
tf.keras.layers.Dense(50, activation='relu'),
tf.keras.layers.Dense(2, activation='softmax')
])
基于tensorflow框架构建卷积神经网络,训练loss如图3所示。
4. 精美ppt