使用ultralytics的yolo11训练自定义数据集的图像分类模型+预测+导出onnnx模型+trtexec转engine模型

先说结论

yolo12太新,先不要用,而是用yolo11训练和导出。

模型训练

  • 环境创建
conda create -n  ultralytics-clas-yolo11 python==3.10
  • 环境激活
conda activate ultralytics-clas-yolo11
  • 安装环境
pip install ultralytics
  • 进入到文件夹中
cd /home/sss/桌面/Projects/ultralytics-clas
  • 克隆仓库
git clone https://github.com/ultralytics/ultralytics.git
  • 整理数据格式为:
data-train/  
|  
|-- train/  
|   |-- airplane/  
|   |   |-- 10008_airplane.png  
|   |   |-- 10009_airplane.png  
|   |   |-- ...  
|   |  
|   |-- bird/  
|   |   |-- 10014_bird.png  
|   |   |-- 10015_bird.png  
|   |   |-- ...  
|   |  
|   |-- ...  
|  
|-- test/  
|   |-- airplane/  
|   |   |-- 10_airplane.png  
|   |   |-- 11_airplane.png  
|   |   |-- ...  
|   | 
|   |-- bird/  
|   |   |-- 1000_bird.png  
|   |   |-- 1001_bird.png  
|   |   |-- ...  
|   |  
|   |-- ...  
|  
|-- val/ (可选)  
|   |-- airplane
### 使用YOLOv11训练自定义数据集 #### 3.1 数据集准备 为了使用YOLOv11训练自定义数据集,首先需要准备好合适的数据集。这包括图像文件及其对应的标签文件。通常情况下,这些标签是以YOLO格式保存的文本文件,每行代表一个目标对象的位置和类别[^1]。 对于图像标注工作,可以采用多种工具完成,比如`labelImg`, `LabelMe`等。其中`LabelMe`可以通过conda安装: ```bash conda install pyqt=5 conda install labelme ``` 上述命令会安装必要的依赖库以及`LabelMe`本身,之后便能利用此工具为图片打上边界框并指定所属分类[^4]。 #### 3.2 数据集划分 一旦拥有了足够的带标记样本,下一步就是合理地分割成训练集、验证集(有时还包括测试集),以便后续评估模型性能时不受到过拟合的影响。一般建议按照一定比例随机分配各个子集合中的成员。 #### 3.3 配置文件设置 针对特定版本的YOLO框架,在开始正式训练之前还需调整相应的配置参数。虽然不同版本间存在差异,但核心部分大致相同——即指明输入尺寸、批次大小(batch size)、最大迭代次数(max_batches),还有各类损失函数权重等等。 假设要创建一个新的`.yaml`配置文档,则其结构可能如下所示: ```yaml train: ./datasets/train/ val: ./datasets/valid/ nc: 80 names: ['class_1', 'class_2', ...] mosaic: true degrees: 0.0 translate: 0.1 scale: 0.5 shear: 0.0 perspective: 0.0 ... ``` 这里仅展示了部分内容;实际应用时应参照官方指南或现有案例做适当修改以适应具体需求。 #### 3.4 编写训练脚本 最后一步便是编写Python脚本来启动整个流程。下面给出了一段简单的例子作为参考: ```python from ultralytics import YOLO model = YOLO('yolov11.yaml') # 加载预设配置 results = model.train(data='./data.yaml', epochs=100, imgsz=640) print(results) ``` 这段代码片段说明了如何加载定制化的网络架构描述(`yolov11.yaml`),并通过调用内置方法执行一轮完整的训练过程,期间还会自动记录日志供日后分析查看。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI技术库

谢谢鼓励~我将继续创作优质博文

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值