Yolov8+Pyside6实现坦克车可视化检测

type
status
date
slug
summary
tags
category
icon
password
类别
内容
💡
温馨提示:在开始之前请保证自己电脑中已安装Anocanda和Pycharm

虚拟环境安装

anaconda环境,首先base环境是一个大的环境,类似一个很大的一个房子(但是没有房间),当我们每创建一个环境就都会相当于在这个大房子里面用隔板创建一个房间,然后这个房间里面可以安装我们所需要的包,这样管理起来就比较方便

创建虚拟环境

查看虚拟环境

notion image

激活虚拟环境

notion image
💡
到此,虚拟环境就安装完成啦

有关虚拟环境的其它相关指令如下

安装CUDA

查看GPU的CUDA版本

notion image
💡
所安装的CUDA版本只能等于或低于所显示的CUDA Version!!

下载并安装对应版本的CUDA Toolkit

下载地址如下:
找到自己所要安装的版本进行安装即可
notion image
💡
安装过程中选择自定义安装,安装所有组件

配置环境变量

查看自己电脑的系统变量中是否有如下两个路径,如果没有,则自己添加
notion image
然后查看Path中是否有如下两个路径,如果没有则添加
notion image

检查是否安装配置成功

在cmd中输入以下指令:
显示如下,则表示CUDA环境安装配置成功
notion image

安装依赖库

💡
注意:下面依赖库安装,均在之前所创建的虚拟环境yolov8中进行

安装PyTorch和torchvision

如果要安装的CUDA版本为11.8,可以输入以下指令
如果要安装的CUDA版本为11.7,可以输入以下指
💡
如果安装报错,请检查自己的CUDA版本是否安装过高

安装ultralytics库

安装图形化界面库pyside6

💡
至此,环境安装完成

环境测试

Yolov8项目克隆

项目代码从下面网址中获取
ultralytics
ultralyticsUpdated Jan 24, 2025
由于项目版本更新较快,故会有一些兼容问题,本人所使用版本为1.0版本的2023.8.5版
notion image
找到对应版本之后,将代码压缩包下载下来即可
notion image

配置虚拟环境

使用Pycharm打开ultralytics项目,然后配置之前创建的虚拟环境
notion image
notion image

检查环境配置

先将终端换为yolov8虚拟环境
然后在终端中,依次输入以下命令:
notion image
notion image
notion image
💡
本人已经安装过,故显示上面内容

测试环境

首先在docs/models/yolov8.md中查找下载yolov8的训练的模型
notion image
下载之后将其放在项目根路径下
notion image
在终端中执行下面指令,检查环境的配置的正确与否(图片换为自己项目图片的路径)
notion image
执行完成之后,显示如下:
notion image
💡
至此,yolov8环境配置成功!

问题及解决

  1. 文件源代码,出现报错
notion image
由于版本更新,需要修改一下这个源代码,即可
  1. yolo库未起作用
notion image
当某个库明明安装了,却未起作用时,往往只需先卸载掉,再重新安装即可

数据集处理

💡
温馨提示:进行下面操作,需要自己有自己的数据集图片及对应的标签文件

数据集格式转换和划分

💡
数据集
  • 从网上获取一些目标检测的数据集资源标签的格式都是VOC(xml格式)的,而yolov8训练所需要的文件格式是yolo(txt格式)的,这里就需要对xml格式的标签文件转换为txt文件。
  • 训练自己的yolov8检测模型的时候,数据集需要划分为训练集和验证集。
这里提供了一份代码将xml格式的标注文件转换为txt格式的标注文件,并按比例划分为训练集和验证集。
在使用下面代码之前,需要保证自己的数据集的文件格式如下(可以认为是一种固定格式):
notion image
运行上面代码之后,会生成如下文件:
notion image
💡
至此,数据集准备完成~

模型训练

数据集存放

在训练模型之前,需要按要求设置数据集,新建datasets文件夹,按下面要求将上一步生成的训练集和测试集放在此文件夹下,并进行重命名(可以认为是一种默认格式)
notion image

训练配置文件书写

模仿官方ultralytics/cfg/datasets/coco128.yaml的配置文件的格式,书写自己的,如下:
notion image
编写完成之后,将其放在数据集的文件下面
notion image

进行训练

在终端中,输入以下命令,开始进行训练:
相关参数及其含义可以参考官方文档:
终端看到如下显示,则表明已经开始训练:
notion image
如果中途遇到训练中断,可以在终端输入以下命令,接着中断的位置继续训练:
训练结束之后,会显示如下:
notion image
从中可以看到模型最终训练的效果

查看训练相关数据

模型训练结束之后,可以从runs/detect/train文件夹中,查看训练的模型以及相关数据显示
notion image
notion image
notion image
notion image
💡
其它更多相关图片可自己查看

模型导出

有些时候我们需要将训练好的模型导出为.onnx,将转换导出代码放在下面,供使用:
模型导出后,会在runs/detect/train/weights中:
notion image
💡
模型训练到此完结~

模型使用

直接在命令行中使用

notion image
notion image

使用Tk库,搭建简易可视化页面

效果如下
notion image
model_use2.py
main.py

精美图形化界面(PySide6)

参考哔哩哔哩up主:【YOLOSHOWv2.0-YOLOv10/v9/v8/v7/v5 GUI 目标检测实例分割毕业设计课程设计可视化图形化界面批量检测】 https://www.bilibili.com/video/BV1ZD421E7m3/?share_source=copy_web&vd_source=84f258738e1326f0688e26e789ab83d3
运行效果如下:
notion image
 
校验码如何将本地项目推送至云端(码云)