当前位置: 首页 > article >正文

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部署【保姆级教程,从零到一】

http://www.kler.cn/a/527919.html

相关文章:

  • 2848、与车相交的点
  • Flutter 新春第一弹,Dart 宏功能推进暂停,后续专注定制数据处理支持
  • doris:数据更新概述
  • 代码随想录算法训练营第三十九天-动态规划-337. 打家劫舍 III
  • Chrome浏览器编译系统研究与优化分析
  • 从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
  • 嵌入式知识点总结 Linux驱动 (八)-Linux设备驱动
  • H. Mad City
  • 深度学习编译器的演进:从计算图到跨硬件部署的自动化之路
  • 《大数据时代“快刀”:Flink实时数据处理框架优势全解析》
  • 翻译: Dario Amodei 关于DeepSeek与出口管制一
  • (二)QT——按钮小程序
  • 本地运行大模型效果及配置展示
  • 牛客周赛 Round 77
  • Java 16进制 10进制 2进制数 相互的转换
  • 数据分析系列--⑦RapidMiner模型评价(基于泰坦尼克号案例含数据集)
  • 通过.yml文件创建环境
  • 反射、枚举以及lambda表达式
  • Ubuntu下的Doxygen+VScode实现C/C++接口文档自动生成
  • 想品客老师的第九天:原型和继承
  • Nginx代理
  • 面试回顾——1
  • JAVA实战开源项目:房屋租赁系统(Vue+SpringBoot) 附源码
  • Visual RAG: Expanding MLLM visual knowledge without fine-tuning 论文简介
  • 【文件整理】文件命名、存放、分类建议
  • JDK的动态代理:深入理解与实践