Linux中部署Yolov5详解
文章目录
- Linux中部署Yolov5详解
- 一、引言
- 二、环境搭建
- 1、安装 Miniconda
- 2、创建虚拟环境
- 3、安装依赖
- 三、安装 Yolov5
- 1、克隆 Yolov5 仓库
- 2、验证安装
- 四、使用示例
- 1、目标检测
- 2、训练自定义数据集
- 五、总结
Linux中部署Yolov5详解
一、引言
Yolov5 是一款非常流行的目标检测模型,因其高效性和易用性而受到广泛欢迎。在 Linux 系统中部署 Yolov5 可以为开发者提供更强大的计算能力和更灵活的开发环境。本文将详细介绍如何在 Linux 系统中部署 Yolov5,包括环境搭建、模型安装和使用示例。
二、环境搭建
1、安装 Miniconda
Miniconda 是一个轻量级的 Anaconda 发行版,用于管理 Python 环境和包。在 Linux 中,可以通过以下命令安装 Miniconda:
bash复制
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
安装完成后,初始化 Miniconda:
bash复制
source ~/.bashrc
2、创建虚拟环境
创建一个虚拟环境以隔离 Yolov5 的依赖项:
bash复制
conda create -n yolov5 python=3.8
conda activate yolov5
3、安装依赖
安装 Yolov5 所需的依赖项。首先,添加镜像源以加速安装:
bash复制
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
然后,安装 PyTorch 和 torchvision:
bash复制
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
最后,安装 Yolov5 的其他依赖:
bash复制
pip install -r requirements.txt
三、安装 Yolov5
1、克隆 Yolov5 仓库
从 GitHub 克隆 Yolov5 仓库:
bash复制
git clone https://github.com/ultralytics/yolov5
cd yolov5
2、验证安装
运行以下命令验证 Yolov5 是否安装成功:
bash复制
python detect.py --weights yolov5s.pt --img 640 --conf 0.25 --source data/images
如果一切正常,你将看到检测结果的输出。
四、使用示例
1、目标检测
使用预训练的权重文件进行目标检测:
bash复制
python detect.py --weights yolov5s.pt --img 640 --conf 0.25 --source data/images
此命令将使用 yolov5s.pt
权重文件对 data/images
文件夹中的图片进行检测,并将结果保存到 runs/detect
文件夹中。
2、训练自定义数据集
如果需要训练自定义数据集,需要准备数据集并编写相应的配置文件。以下是一个简单的数据集准备脚本:
Python复制
import os
import random
from shutil import copyfile
# 数据集路径
data_dir = "path/to/your/dataset"
train_ratio = 0.8
# 创建训练集和验证集目录
train_dir = os.path.join(data_dir, "train")
val_dir = os.path.join(data_dir, "val")
os.makedirs(train_dir, exist_ok=True)
os.makedirs(val_dir, exist_ok=True)
# 划分数据集
images = os.listdir(os.path.join(data_dir, "images"))
random.shuffle(images)
train_size = int(len(images) * train_ratio)
for i, image in enumerate(images):
src_path = os.path.join(data_dir, "images", image)
if i < train_size:
dst_path = os.path.join(train_dir, image)
else:
dst_path = os.path.join(val_dir, image)
copyfile(src_path, dst_path)
然后,编写 data.yaml
文件指定数据集路径和类别:
yaml复制
train: path/to/your/dataset/train
val: path/to/your/dataset/val
nc: 2
names: ['class1', 'class2']
最后,运行训练命令:
bash复制
python train.py --img 640 --batch 16 --epochs 50 --data data.yaml --weights yolov5s.pt
五、总结
本文详细介绍了在 Linux 系统中部署 Yolov5 的全过程,包括环境搭建、模型安装和使用示例。通过 Miniconda 管理虚拟环境和依赖,可以方便地在 Linux 中运行 Yolov5。希望本文能帮助读者快速上手 Yolov5 的部署和使用。
版权声明:本博客内容为原创,转载请保留原文链接及作者信息。
参考文章:
- 在linux上部署yolov5和安装miniconda3
- Yolov5部署【保姆级教程,从零到一】