附本菜鸡在windows上运行成功的(通过电脑摄像头的)yolo目标检测
配置环境的时候想清楚放在哪个盘,特别是虚拟机,放C盘很可能会g
1 项目代码结构整
- data:主要是存放一些超参数的配置文件(这些文件(yaml文件)是用来配置训练集和测试集还有验证集的路径的,其中还包括目标检测的种类数和种类的名称);还有一些官方提供测试的图片。如果是训练自己的数据集的话,那么就需要修改其中的yaml文件。但是自己的数据集不建议放在这个路径下面,而是建议把数据集放到yolov5项目的同级目录下面。
- models:里面主要是一些网络构建的配置文件和函数,其中包含了该项目的四个不同的版本,分别为是s、m、l、x。从名字就可以看出,这几个版本的大小。他们的检测测度分别都是从快到慢,但是精确度分别是从低到高。这就是所谓的鱼和熊掌不可兼得。如果训练自己的数据集的话,就需要修改这里面相对应的yaml文件来训练自己模型。
- utils:存放的是工具类的函数,里面有loss函数,metrics函数,plots函数等等。
- weights:放置训练好的权重参数。
- detect.py:利用训练好的权重参数进行目标检测,可以进行图像、视频和摄像头的检测。
- train.py:训练自己的数据集的函数。
- test.py:测试训练的结果的函数。
- requirements.txt:这是一个文本文件,里面写着使用yolov5项目的环境依赖包的一些版本,可以利用该文本导入相应版本的包。
2 从github上拉取的包
2.1 最好创建一个新的虚拟环境,因为yolo对一些库有版本要求
创建虚拟环境—b站视频教程,视频评论区置顶处下有pdf讲义,可下载。不想看视频的可以直接点讲义链接
其中:
- 注意
NVIDA、CUDA、pytorch的型号是否互相兼容 - 注意网络问题,有时候关掉梯子会好点
- 源的问题,找到一个阿里云比较好用的:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple pip config set install.trusted-host mirrors.aliyun.com - 记录途中用到的
whl路径pip install D:\whl\torch-1.12.0+cu116-cp39-cp39-win_amd64.whl pip install D:\whl\torchvision-0.13.0+cu116-cp39-cp39-win_amd64.whl pip install D:\whl\torchaudio-0.12.0+cu116-cp39-cp39-win_amd64.whl
2.2 修改代码时的一些注意事项
train.py、dectect.py可以面向CSDN编程
- e.g.报错No module named ‘yaml‘ ,在终端输入如下指令
pip install pyyaml - 注意是在终端处下载还是在
Anaconda Prompt处下载 - 注意
conda install还是pip install,注意先激活虚拟环境再安装包conda activate xxx
- 注意路径问题:
- 绝对路径:在
train.py中的三行代码里最好使用绝对路径
- 相对路径:在
detect.py中的weights,在我使用绝对路径的时候是无法实现想要的效果的,但是更改为weights/best.pt(使用最佳模型做测试)时可以正常运行
- 绝对路径:在
3 配置VMware和Ubuntu
下面是两个安装教程,可以结合食用:
3.1VMware虚拟机安装Linux教程:
(以下是该教程的虚拟机和iso选择,可根据个人需要进行更改,但是配置过程大差不差)
- 虚拟机:VMware16 pro
- Linux系统iso镜像:CentOS-7.5-x86_64
3.2 VMware虚拟机安装Ubuntu20.04详细图文教程
(以下是该教程的虚拟机和iso选择,可根据个人需要进行更改,但是配置过程大差不差) - 虚拟机:VMware16
- Linux系统iso镜像:Ubuntu20.04
3.3 一些说明
正如上面一位博主所说“不必刻意用旧版”
- 关于虚拟机:可选择VMware 17,VMware官方网站
关于iso镜像:新手推荐下Ubuntu,可以去Ubuntu官方网站
这里附上Ubuntu20.04的链接(是国内镜像源,下载会快些)!
设置内核和内存时可以最好设置好之后就不改了,因为修改内存或硬盘大小之后重启可能会b溃,本人在下图修改硬盘大小之后无法再打开虚拟机

3.4 宿主机与虚拟机互传文件
windows主机和ubuntu互传文件的4种方法
本人选择第二个方法:- ubuntu安装FTP服务
在ubuntu终端输入如下命令sudo apt-get install vsftpd - 安装完后检查
/etc /vsftpd.conf配置文件
输入如下命令打开配置文件:(注意此处在网址上输入的是sudo vi,但是本人不太会使用vi编辑器,也找不到vi编辑器的使用方法,因此使用了vim,vim编辑器的的指令在下文4.9有提到)sudo vim /etc/bsftpd.conf - windows安装和配置FIleZilla
点击FileZilla下载中心下载客户端 - FileZilla软件配置:
打开FileZilla软件,选择:文件->站点管理器->点击新增站点,然后配置连接参数,如下图:
主机处输入的是ubuntu的IPv4地址,查找方式如下:
- 点击设置



- 可以看到ubuntu下的文件(右边)

4 Ubuntu22.04配置anaconda
4.1 配置过程
首先,通过在终端中运行以下命令,确保所有系统包都是最新的。
sudo apt update sudo apt upgrade sudo apt install wget apt-transport-https gnupg2 software-properties-common在 Ubuntu 22.04 上安装 Anaconda Python。
默认情况下,Anaconda 在 Ubuntu 22.04 基础存储库中不可用。现在运行以下命令将 Anaconda 的最新稳定版本下载到您的 Ubuntu 系统:wget https://repo.anaconda.com/archive/Anaconda3-2022.05-Linux-x86_64.sh
下载Anaconda安装程序后,现在使用以下命令运行脚本:
bash Anaconda3-2022.05-Linux-x86_64.sh
按照向导说明完成 Anaconda 安装过程(可以一路按”Enter”)
Welcome to Anaconda3 2022.05
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>
下一步是指明安装路径,默认指向根目录。如果您具有 root 访问权限,则可以将其保留在那里,但您也可以将其安装在您帐户的 HOME 目录中:
Anaconda3 will now be installed into this location:
/root/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/root/anaconda3] >>>注意地址是:
/home/wabbybabbo(你自己的用户名)/anaconda3
安装 Anaconda 后,下一步是通过运行以下命令来使用“ ”文件中添加的环境设置:
.bashrcsource ~/.bashrc验证Anaconda安装:
conda list如果要更新运行的整个环境(非必要)
conda update-all查看虚拟机上的虚拟环境有哪些
conda info --envs可以看到这时候有一个名为
base的虚拟环境
4.2 其他指令
4.2.1 unbutu一些指令
cd www # 到www目录;
cd .. # 到上一级目录;
cd - # 返回到上次的目录,类似windows返回 ;
cd / # 回到根目录。
4.2.2 Linux vim编辑器的指令
- 编写:按
a - 退出:先按
ESC键,跳到命令模式,再根据选择输入下面的(记得输入冒号):w # 保存文件但不退出vi :w file # 将修改另外保存到file中,不退出vi :w! # 强制保存,不推出vi :wq # 保存文件并退出vi :wq! # 强制保存文件,并退出vi :q # 不保存文件,退出vi :q! # 不保存文件,强制退出vi :e! # 放弃所有修改,从上次保存文件开始再编辑
4.2.3 进入和退出conda base环境
进入conda base环境:
source ~/anaconda3/bin/activate退出
conda base环境:conda deactivate
5 yolo模型部署到orangepi 3
附上两个参考网站:# 香橙派5 RK3588 yolov5模型转换rknn及部署踩坑全记录 orangepi 5、linux板上运行yolov5 目标检测(25/4/18发现这个网站已经无法访问了)
5.1 所谓的yolov5目录

这个yolov5目录在本人的电脑上,这个文件是这样的
5.2 路径问题
weight和data/coco128改成自己的weight和data的路径
5.3 生成的.onnx文件
生成的yolov5n.onnx文件在本人电脑上的位置在这里,名为best.onnx
5.4 在Ubuntu创建虚拟环境
- 创建名为
rknn的虚拟环境时输入conda create -name rknn python=3.9报错了,但是输入conda create -n rknn python=3.9就不会,很奇怪
5.5 Ubuntu解压缩
参考网址
本人用到的是
unzip FileName.zip # 解压
再之后的跟着上面的两个博客走,基本上没什么坑了
6 遇到的其他问题
在开机时黑屏且遇到了:
SMbus Host Controller not enabled