基于ELF-Rv1126B AI 模型的训练与导出
6.1.模型训练与导出6.1.1.环境搭建6.1.1.1. Anaconda安装Anaconda是一个流行的开源软件包管理和环境管理系统用于科学计算、数据分析和大数据处理特别是在Python环境中。它包含了许多常用的科学计算和数据分析的软件包并提供了一个方便的方式来管理这些软件包的安装、更新和环境配置。以下是Anaconda的一些主要特点和用途1.软件包管理Anaconda提供了一个名为conda的包管理工具可以轻松安装、更新和删除软件包。它支持数千个科学计算和数据分析相关的软件包如NumPy、Pandas、Matplotlib等。2.环境管理Anaconda允许用户创建和管理多个独立的Python环境。每个环境可以有不同版本的Python和不同的软件包集合这样可以避免版本冲突和环境污染。3.跨平台Anaconda可以在Windows、macOS和Linux上运行使其成为开发人员和研究人员之间共享和复制数据分析项目的理想工具。4.集成开发环境IDEAnaconda还包含了Jupyter Notebook等强大的交互式开发工具使用户能够在浏览器中创建和分享文档结合代码、公式、可视化和解释性文本。5.大数据支持Anaconda不仅适用于单机环境还支持分布式计算平台如Apache Spark从而能够处理大规模数据和复杂的计算任务。总之Anaconda提供了一个全面的解决方案使得科学计算和数据分析的开发和部署变得更加简单和高效。首先需要下载Anaconda工具Anaconda的下载网址Download Now | Anaconda这里下载的是Anaconda3-2025.06-0-Windows-x86_64.exe版本。下载完成后双击Anaconda3-2025.06-0-Windows-x86_64.exe进行Anaconda的安装。下图复选框分别是创建开始菜单快捷方式、添加Anaconda为我的环境变量、注册Anaconda3的python3.13为默认Python环境、完成安装后清理安装包缓存这里选中第一个、第三个、第四个复选框点击Install等待安装完毕。左键单击即可进入虚拟环境界面。6.1.1.2. LabelImg安装LabelImg是一款用Python编写的开源图像标注工具其图形界面基于Qt简洁易用尽管是英文版。该工具主要用于分类和目标检测的数据标注其注释可以保存为PASCAL VOC格式的XML文件这也是ImageNet所使用的格式。此外LabelImg还支持COCO数据集格式。接下来我们将介绍如何使用LabelImg进行目标检测数据标注以及如何使用Labelme进行图像分割数据标注。建议在Anaconda虚拟环境里安装LabelImg所以这里先介绍LabelImg的安装方法搭建安装LabelImg所需要的虚拟环境。首先点击Anaconda Prompt进入conda虚拟环境终端并使用以下指令来创建一个新的虚拟环境将新环境命名为labelimg。注不建议在conda自带的base环境里安装(base) C:\Users\Administratorconda create --name labelimg python3.9接着请激活labelimg虚拟环境并在该环境中使用以下指令来安装LabelImg工具等待其自动帮您安装labelimg以及lxml和pyqt5。(base) C:\Users\Administratorconda activate labelimg(labelimg) C:\Users\Administratorpip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple在安装好labelimg的虚拟环境里输入labelimg等大约三秒左右出现labelimg界面。(labelimg) C:\Users\ Administratorlabelimg6.1.1.3.PyCharm安装PyCharm是一种Python IDEIntegrated Development Environment集成开发环境带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具比如调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制。访问官网https://www.jetbrains.com/pycharm/download/#sectionwindows下载PyCharm安装包。6.1.2.数据收集与处理6.1.2.1.数据集获取和标注方法本项目使用开源数据集coco128coco128是一个小型但功能多样的对象检测数据集由COCO train2017数据集的前128张图像组成。在项目中直接指定datacoco128.yaml模型训练过程中会直接调用项目文件ultralytics/cfg/datasets路径下的coco128.yaml。上图是coco128.yaml文件内容主要定义数据集目录的路径、数据集中所有目标类别的名称。模型训练前会从网页https://github.com/ultralytics/assets/releases/download/v0.0.0/coco128.zip自动下载coco128数据集压缩包并解压缩到项目文件datasets目录下。若使用自己的数据集首先对没有标签的图像数据集进行标注这里介绍使用LabelImg进行数据集标注。LabelImg支持PascalVOC标注保存后会得到与图像同名的xml文件、CreateML保存标注后会获得图像同名的json文件和YOLO三种标注格式。首先点击左侧标注的格式将标注格式切换到YOLO。然后点击Open Dir打开需要标注的图片文件夹。并点击Change Save Dir设置标注文件保存的目录。最后点击左侧的Create RectBox进行画框并输入标签名进行标注这里以项目中使用的coco128数据集的图片为例。点击左侧的Save进行保存会在刚才设置标注文件保存的目录下生成图像同名的txt文件和classes.txtclasses.txt无论标注多少张只会出现一次内容为标签名称如果下一张有新的标签会在classes.txt中再添加。若使用自己的数据集将自己的数据集收集标注完后需要进行整理。首先在ultralytics_yolov8-main项目文件路径下创建一个datasets文件夹在datasets文件夹中建立一个名为mydatasets的文件夹用于存放数据集在mydatasets文件夹里分别创建一个名为train的文件夹用于存放训练数据集和一个名为val的文件夹用于存放验证数据集。然后分别在train文件夹和val文件夹下创建一个名为images的文件夹和一个名为labels的文件夹用于存放训练数据集的图片和标签文件以及验证数据集的图片和标签文件。最后将收集好的图片和标签文件按照一定比例放在创建好的对应的文件夹里。整理完数据集之后为了在训练的时候能读取数据集需要在项目文件ultralytics/cfg/datasets目录下创建数据集配置文件。这里以创建名为mydata.yaml的数据集配置文件为例。右击项目文件目录下的ultralytics/cfg/datasets点击New选择File进行文件创建。输入mydata.yaml文件名完成数据集配置文件的创建。在刚才创建好的数据集配置文件mydata.yaml定义数据集路径和类别信息。通过path指定数据集根目录为../datasets/mydatasets再以相对路径分别定义训练集train/images、验证集val/images的图片存放位置随后通过names字段列出了17个类别的ID与对应名称比如ID0对应“person”、ID1对应“bicycle”让模型能识别数据中的目标类别。其中test字段用于指定测试集的路径是可选字段这里test字段为空未设置实际使用时可根据需求补充。在mydata.yaml数据集配置文件中数据集路径是以刚才整理创建的mydatasets数据集为例以17个数据集类别为例。在实际使用中数据集路径和类别信息须根据自身数据集的实际情况进行调整。6.1.2.2.数据集划分在YOLOv8项目中数据集的划分完全由用户控制框架仅通过配置文件中的路径“识别”已划分好的训练/验证集不涉及自动拆分逻辑。用户需要提前完成数据划分比如按8:2比例拆分原始数据到train/val文件夹再在配置文件中指定对应路径。但是为了让读者更轻松地理解和使用数据集划分功能下面以python脚本的方式提供数据集划分实例将原始图片和标签文件按照指定比例自动划分为训练集、验证集和测试集并分别存储到新的目录结构中。划分数据集脚本路径进阶篇之-基于RK平台的AI模型训练到部署\AI例程源码\数据集划分.py实际使用的时候只需修改数据集路径和划分比例if __name__ __main__:# 1.修改这里的路径指向你的图片和标签文件夹file_path coco128/images/train2017 #需要划分的图片文件夹xml_path coco128/labels/train2017#需要划分的标签文件夹# 2.修改这里的路径指定划分后的数据保存位置new_file_path coco#保存划分好的路径# 3.修改这里的比例根据你的需求调整训练、验证、测试集的占比split_data(file_path, xml_path, new_file_path, train_rate0.7, val_rate0.1, test_rate0.2)6.1.3.模型训练6.1.3.1.环境配置这里以CPU环境下YOLO8环境配置为例进行yolov8环境的配置。点击Anaconda Prompt使用Anaconda执行命令创建虚拟环境。(base) C:\Users\Administratorconda create --name yolov8 python3.10激活刚才创建的yolov8虚拟环境。(base) C:\Users\Administratorconda activate yolov8使用阿里云镜像安装ultralytics、tqdm、pandas。(yolov8) C:\Users\Administratorpip install ultralytics -i https://mirrors.aliyun.com/pypi/simple/(yolov8) C:\Users\Administratorpip install tqdm -i https://mirrors.aliyun.com/pypi/simple/(yolov8) C:\Users\Administratorpip install pandas -i https://mirrors.aliyun.com/pypi/simple/(yolov8) C:\Users\Administratorpip uninstall numpy(yolov8) C:\Users\Administratorpip install numpy2 -i https://mirrors.aliyun.com/pypi/simple/安装Ultralytics时无需单独安装PyTorch、OpenCV或NumPy等依赖包。这是因为执行pip installultralytics命令时安装程序会检测当前环境如果尚未安装PyTorch便会自动安装与其兼容的CPU版本PyTorch而PyTorch自身又会关联安装OpenCV等其他必要依赖库。需要注意的是安装Ultralytics过程中默认会安装NumPy 2.x版本。然而在后续模型训练时由于当前环境使用NumPy 2.x而Ultralytics依赖的部分模块是基于NumPy 1.x编译的两者之间存在兼容性问题会导致训练过程失败。因此需要在安装完成后手动卸载NumPy 2.x版本重新安装1.x版本以确保兼容性。从以下地址下载ultralytics_yolov8-main源码并解压https://github.com/airockchip/ultralytics_yolov8