基于PaddlePaddle的口罩识别实战心得

目前,全球各地疫情防控形势严峻,如何将AI技术应用到疫情防控中成为各技术领域研究的热点。PaddlePaddle是百度自主研发的集深度学习核心框架、工具组件和服务平台为一体的开源深度学习平台,有全面的官方支持的工业级应用模型,涵盖自然语言处理、计算机视觉、推荐引擎等多个领域。本次以口罩识别项目为例,通过使用百度PaddlePaddle 开发平台的核心框架Paddle Fluid实现了人脸口罩判断模型,可实现对人脸是否佩戴口罩的判定。

整个开发过程遵循数据准备——模型配置——模型训练——模型评估——模型预测的固定流程,开发过程简单易上手。

针对口罩识别项目具体的开发步骤如下:

一、数据准备

包括:(1)准备原始数据集(2)按照比例划分训练集与验证集(3)乱序,生成数据列表(4)构造训练数据集提供器和验证数据集提供器

二、模型配置

以经典VGG网络作为网络模型,需要完成VGG网络的定义和参数设置。

基于PaddlePaddle的口罩识别实战心得_第1张图片

VGG的核心是五组卷积操作,每两组之间做Max-Pooling空间降维。同一组内采用多次连续的3X3卷积,卷积核的数目由较浅组的64增多到最深组的512,同一组内的卷积核数目是一样的。卷积之后接两层全连接层,之后是分类层。由于每组内卷积层的不同,有11、13、16、19层这几种模型,上图展示一个16层的网络结构。

基于PaddlePaddle的口罩识别实战心得_第2张图片

这里可以直接利用飞桨动态图功能fluid.dygraph来实现。

三、模型训练

模型配置完成以后,就可以将数据放入模型进行训练。

基于PaddlePaddle的口罩识别实战心得_第3张图片

四、模型评估

模型训练完成以后,可以用测试数据对训练完成的模型进行评估,评价是否达到期望效果。如果达到预期即可投入使用,否则,调整训练模型相关参数或使用其它模型重新训练,直到达到预期效果。

五、模型预测

当模型通过评估后,即可对新数据进行实际预测了,以下是对图片中人物进行是否戴口罩的识别结果,从结果来看,达到了较好的效果。

基于PaddlePaddle的口罩识别实战心得_第4张图片

当然本次案例的实现,比实际场景应用上难度上有所降低,只是通过正面头部照片进行了训练和测试,但通过这一简单案例也帮助我对如何使用飞桨动态图搭建一个网络模型有了更深地理解和掌握。

你可能感兴趣的:(基于PaddlePaddle的口罩识别实战心得)