基于paddle多标签图像分类模型训练(PP-HGNetV2-B6_ML)
2.安装PaddleX。
·
官网教程:https://paddlepaddle.github.io/PaddleX/3.0-beta2/module_usage/tutorials/cv_modules/image_multilabel_classification.html#413
1.环境要求
- python3.8-3.10
- 安装 paddle的相关环境(下面两个都要安装)
1.根据自己的电脑环境安装对应的paddlepaddle版本
- cpu
python -m pip install paddlepaddle==3.0.0b2 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/
- gpu,该命令仅适用于 CUDA 版本为 11.8 的机器环境
python -m pip install paddlepaddle-gpu==3.0.0b2 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/
- gpu,该命令仅适用于 CUDA 版本为 12.3 的机器环境
python -m pip install paddlepaddle-gpu==3.0.0b2 -i https://www.paddlepaddle.org.cn/packages/stable/cu123/
2.安装PaddleX
git clone https://github.com/PaddlePaddle/PaddleX.git
cd PaddleX
pip install -e .
paddlex --install PaddleClas
2.模型训练与推理
2.1 数据集准备
- 1.使用paddlelabel工具进行数据标注。
pip install --upgrade paddlelabel
pip install a2wsgi uvicorn==0.18.1
pip install connexion==2.14.1
pip install Flask==2.2.2
pip install Werkzeug==2.2.2
- 2.启动
终端输入paddlelabel或者pdlabel启动paddlelabel工具
- 选择目标检测->填写项目名称和数据路径(有三种导入方式,如果你的数据集没有任何标注,就随意选择一种即可)->开始标注
- 在右侧添加所有的类别->在右侧选择一种类别,然后在左侧选择矩形,然后长按拖拽鼠标框出需要标注的区域即可,可以多次框选。
- 数据集划分->按比例划分数据集,训练集、验证集、测试集。
- 导出数据->支持coco,voc,yolo三种格式导出,这里选择coco格式导出。
- 导出后有一个image文件夹和train,val,test三个标注文件
按照如下表格重命名文件名:
| 源文件(目录)名 | 重命名后文件(目录)名 |
|---|---|
| train.json | instance_train.json |
| val.json | instance_train.json |
| test.json | instance_test.json |
| image | images |
在数据集根目录创建annotations目录,并将json文件全部移动到annotations目录下,最后文件目录结构如下:
dataset
├── annotations
│ ├── instance_train.json
│ ├── instance_val.json
│ └── instance_test.json
└── images
├── 000001.jpg
├── 000002.jpg
├──...
└── 000010.jpg
3.转换成MLClsDataset格式:
python main.py -c ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml//配置文件路径
-o Global.mode=check_dataset //模式选择为校验数据集
-o Global.dataset_dir=./dataset/det_coco_examples //数据集路径
-o CheckDataset.convert.enable=True //开启数据转换
-o CheckDataset.convert.src_dataset_type=COCO //源数据集格式
2.2 数据校验:
python main.py -c ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml//配置文件路径
-o Global.mode=check_dataset //模式选择为校验数据集
-o Global.dataset_dir=./dataset/mlcls_nus_examples //数据集路径
//在终端上输入以上命令
示例:python main.py -c ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml -o Global.mode=check_dataset -o Global.dataset_dir=./dataset/data2
2.3 模型训练:
python main.py -c ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml//配置文件路径
-o Global.mode=train \
-o Global.dataset_dir=./dataset/mlcls_nus_examples//数据集路径
2.4 模型评估:
python main.py ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml
-o Global.mode=evaluate \
-o Global.dataset_dir=./dataset/mlcls_nus_examples//测试数据集路径
2.5 模型推理:
python main.py -c ./paddlex/configs/modules/image_multilabel_classification/PP-HGNetV2-B6_ML.yaml
-o Global.mode=predict \
-o Predict.model_dir="./output/best_model/inference" //模型路径
-o Predict.input="multilabel_classification_005.png"//可以是单张图片路径或文件夹路径
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)