首页 飞桨领航团 帖子详情
百度AI达人创造营项目全流程实战:以安全帽检测为例
收藏
快速回复
飞桨领航团 文章AI达人创造营 450 0
百度AI达人创造营项目全流程实战:以安全帽检测为例
收藏
快速回复
飞桨领航团 文章AI达人创造营 450 0

安全帽检测开发与部署:

  • 模型训练

一、准备模型库

!pip install paddlex==2.0rc

二、准备数据集

# 解压数据集,并做好数据切分准备

!mv MyDataset/images MyDataset/JPEGImages  切分为图片集

!mv MyDataset/annotations MyDataset/Annotations  切分为标注集

!paddlex --split_dataset --format VOC --dataset_dir MyDataset --val_value 0.2 --test_value 0.1    将训练集、验证集和测试集按照7:2:1的比例划分。 PaddleX中提供了简单易用的API,方便用户直接使用进行数据划分。

三、模型训练

# 定义训练和验证时的transforms

# 定义训练和验证所用的数据集

# 初始化模型,并进行训练

num_classes = len(train_dataset.labels)  数据集分类个数

model = pdx.models.YOLOv3(num_classes=num_classes, backbone='MobileNetV3_ssld')   选择模型

model.train(                      模型训练
    num_epochs=270,        训练轮次
    train_dataset=train_dataset,
    train_batch_size=2,   前向计算一次(即为一个step)所用到的样本数量
    eval_dataset=eval_dataset,
    learning_rate=0.001 / 8,    学习率
    warmup_steps=1000,      
    warmup_start_lr=0.0,
    save_interval_epochs=1,       多少轮进行一次保存
    lr_decay_epochs=[216, 243],
    save_dir='output/yolov3_mobilenet')    输出保存路径

四、模型预测

五、模型裁剪

模型裁剪可以更好地满足在端侧、移动端上部署场景下的性能需求,可以有效得降低模型的体积,以及计算量,加速预测性能。

 

  • 模型部署

基于PaddleInference的推理-Linux环境编译

1 部署代码准备

2 下载PaddlePaddle C++ 预测库

3 修改编译参数

4 修改yaml依赖包路径并编译

模型导出和部署

1 模型导出

2 模型测试(可排查BUG)

3 加载导出的模型并使用GPU预测

4 模型验证

 

  • EasyEdge:PaddleX 2.0动态图检测模型的部署

看使用文档、

 

0
收藏
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户