yolov5+ros 识别交通信号灯实战第一节:yolov5运行环境搭建

操作系统:Ubuntu20.04
ROS版本:neotic
CUDA版本:12.2

闲来无事想用 yolov5 实现交通信号灯的检测,记录下过程,效果如下:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

1. 安装 Anaconda

1.1 安装Anaconda

Anaconda 下载地址,打开的界面如下:
在这里插入图片描述
点击 Download 按钮下载,下载完成后打开终端(打开终端的快捷键为:ctrl + alt + t),切换到保存 Anaconda 的目录,输入如下指令,文件名或许不一样,输入前几个字母(Linux大小写敏感)然后按 tab 键可自动补全。

bash Anaconda3-2024.02-1-Linux-x86_64.sh

如下图所示,然后按 ENTER 回车键
在这里插入图片描述
出现如下界面,继续按 ENTER 回车键
在这里插入图片描述
出现如下界面,可以一直按 ENTER 回车键
在这里插入图片描述
直到出现如下界面,这里询问你是否同意软件许可,输入 yes 后按 ENTER 回车键。
在这里插入图片描述
出现如下界面询问软件安装位置,默认安装路径为红色框中的路径,新手不建议更改,所以继续按 ENTER 回车键。大神随意,我选择默认位置,回车后等待软件安装完成。
在这里插入图片描述
开始安装
在这里插入图片描述
安装完成后会出现询问是否启动默认环境的选项,输入 yes 后按 ENTER 回车键继续
在这里插入图片描述
OK,安装完成

在这里插入图片描述
关闭当前终端,重新打开终端(ctrl + alt + t),可看到效果,前面的(base)表示默认环境
在这里插入图片描述
总结一下,Anaconda 的安装很简单,一路回车,一路 yes,就能到达目的地

1.2 Anaconda加速

在终端中输入如下命令,打开 conda 的配置文件

sudo gedit ~/.condarc

在这里插入图片描述
在打开的文本文件中,输入以下内容,目的是换源,这样在创建 conda 虚拟环境时,下载速度非常快

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

效果图如下,ctrl + s 保存后关闭
在这里插入图片描述

2.创建 yolov5 运行环境

2.1.环境创建

终端输入如下命令,然后按 ENTER 回车键

# yolov5 为环境名称
# 指定python的版本为3.8
conda create -n yolov5 python=3.8

出现如下界面,输入 y 后按 ENTER 回车键
在这里插入图片描述
安装过程如下:
在这里插入图片描述
安装完成的效果图如下:
在这里插入图片描述

2.2.安装 pytorch

终端输入如下指令,进入创建好的 yolov5 环境

# 最后的yolov5是环境名称
conda activate yolov5

回车之后,可以看到前面的 base 变成了 yolov5,接下来的操作全是在创建的 yolov5 环境中进行
在这里插入图片描述
在安装 pytorch 前,先给后面的pip安装加个速,在终端输入如下命令:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/

在这里插入图片描述
终端输入 nvidia-smi 查看自己的 CUDA 版本,比如我的是 12.2,同时可以查看自己GPU的显存,比如我的是6GB
在这里插入图片描述
然后在 pytorch 官网 查找对应的版本
在这里插入图片描述
尽可能选择与你 CUDA 一致的版本,没有12.2 我选择 CUDA 12.1,输入如下命令:

conda install pytorch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 pytorch-cuda=12.1 -c pytorch -c nvidia

在这里插入图片描述
出现如下界面,输入 y 后按 ENTER 回车键
在这里插入图片描述
安装ing持续等待,有代理或梯子速度很快,反之时间长短因人而异
在这里插入图片描述
OK,安装完成
在这里插入图片描述
到这里 yolov5 的环境已备好,继续

3.运行yolov5

3.1.源码下载

先给 yolov5 创建文件夹,然后下载源码,签出最新版本

mkdir workspace && cd workspace
git clone https://github.com/ultralytics/yolov5.git
cd yolov5/
# 使用最新版本 7.0,带语义分割
git checkout v7.0

在这里插入图片描述
然后安装 yolov5 的依赖,使用如下命令,有代理或梯子速度很快,反之时间长短因人而异

pip install -r requirements.txt 

在这里插入图片描述
安装完成

在这里插入图片描述

3.2.模型下载

在 yolov5 目录下新建目录 weights,用于存放下载的模型文件,模型下载地址为:https://github.com/ultralytics/yolov5/releases,注意选择 v7.0 的模型文件,我们下载两个:yolov5s.pt(检测模型)和 yolov5s-seg.pt(检测+分割模型),下载完成后放在刚才创建的 weights 目录下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.3.目标检测

开始运行检测模型,在终端中输入如下命令:

# 第一个参数,weights 表示使用的模型文件
# 第二个参数,source 表示需要检测的图片
# 新手只用输入这两个参数就可以了
python3.8 detect.py --weights weights/yolov5s.pt --source data/images/

在这里插入图片描述
运行成功,结果保存路径:runs/detect/exp,第一个红色框表示模型推理运行在GPU上,去看看效果,完美!
在这里插入图片描述

3.4.目标分割

开始运行分割模型,在终端中输入如下命令:

# 第一个参数,weights 表示使用的模型文件
# 第二个参数,source 表示需要检测和分割的图片
# 新手只用输入这两个参数就可以了
python3.8 segment/predict.py --weights weights/yolov5s-seg.pt --source data/images/

在这里插入图片描述
运行成功,结果保存路径:runs/predict-seg/exp,第一个红色框表示模型推理运行在GPU上,去看看效果,完美!
在这里插入图片描述
关注作者,回复 yolov5 获取完整代码和训练数据集
在这里插入图片描述

文章内容仅供学习参考,如有侵权,非常抱歉,请立即联系作者删除。

  • 44
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值