目录
yolov8导航
如果大家想要了解关于yolov8的其他任务和相关内容可以点击这个链接,我这边整理了许多其他任务的说明博文,后续也会持续更新,包括yolov8模型优化、sam等等的相关内容。
YOLOv8(附带各种任务详细说明链接)
如果小伙伴们不方便访问github进行下载,可以点击这里,我把源码给大家准备好了。【免费】YOLOV8-main基础项目源码资源-CSDN文库
https://download.csdn.net/download/qq_42452134/88651936-------------------------------------------------------------------------------------------------------------------------
官方文档(国内直接访问可能比较卡)
环境要求建议
python3+、Anaconda3或Miniconda3
安装Ultralytics(YOLOV8)
Ultralytics提供了多种安装方法,包括pip、conda和Docker。通过ultralytics
pip包安装最新稳定版的YOLOv8,或者克隆Ultralytics GitHub仓库以获取最新版本。Docker可用于在隔离容器中执行包,避免本地安装。
pip安装
最简单直接的方式就是直接使用pip方法直接安装。
# 从PyPI安装ultralytics包
pip install ultralytics
也可以直接从GitHub仓库安装ultralytics
包。如果你想要最新的开发版本,这可能会很有用。确保你的系统上安装了Git命令行工具。@main
指令安装main
分支,可修改为其他分支,如@my-branch
,或完全删除,默认为main
分支。
# 从GitHub安装ultralytics包
pip install git+https://github.com/ultralytics/ultralytics.git@main
Conda安装
Conda是pip的一个替代包管理器,也可用于安装。访问Anaconda了解更多详情,网址为Ultralytics :: Anaconda.org。用于更新conda包的Ultralytics feedstock仓库位于GitHub - conda-forge/ultralytics-feedstock: A conda-smithy repository for ultralytics.。
# 使用conda安装ultralytics包
conda install -c conda-forge ultralytics
如果你在CUDA环境中安装,最佳实践是同时安装ultralytics
、pytorch
和pytorch-cuda
,以便conda包管理器解决任何冲突,或者最后安装pytorch-cuda
,让它必要时覆盖特定于CPU的pytorch
包。
# 使用conda一起安装所有包
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics
Git克隆
如果您对参与开发感兴趣或希望尝试最新源代码,请克隆ultralytics
仓库。克隆后,导航到目录并使用pip以可编辑模式-e
安装包。
# 克隆ultralytics仓库
git clone https://github.com/ultralytics/ultralytics
# 进入克隆的目录
cd ultralytics
# 为开发安装可编辑模式下的包
pip install -e .
Docker安装
利用Docker轻松地在隔离的容器中执行ultralytics
包,确保跨不同环境的一致性和流畅性能。通过选择一款官方ultralytics
映像,从Docker Hub中不仅避免了本地安装的复杂性,还获得了对验证工作环境的访问。Ultralytics提供5种主要支持的Docker映像,每一种都为不同的平台和使用案例设计,以提供高兼容性和效率:
- Dockerfile: 推荐用于训练的GPU映像。
- Dockerfile-arm64: 为ARM64架构优化,允许在树莓派和其他基于ARM64的平台上部署。
- Dockerfile-cpu: 基于Ubuntu的CPU版,适合无GPU环境下的推理。
- Dockerfile-jetson: 为NVIDIA Jetson设备量身定制,整合了针对这些平台优化的GPU支持。
- Dockerfile-python: 最小化映像,只包含Python及必要依赖,理想于轻量级应用和开发。
- Dockerfile-conda: 基于Miniconda3,包含conda安装的ultralytics包。
以下是获取最新映像并执行它的命令:
# 将映像名称设置为变量
t=ultralytics/ultralytics:latest
# 从Docker Hub拉取最新的ultralytics映像
sudo docker pull $t
# 使用GPU支持运行ultralytics映像的容器
sudo docker run -it --ipc=host --gpus all $t # 所有GPU
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # 指定GPU
上述命令初始化了一个带有最新ultralytics
映像的Docker容器。-it
标志分配了一个伪TTY,并保持stdin打开,使您可以与容器交互。--ipc=host
标志将IPC(进程间通信)命名空间设置为宿主,这对于进程之间的内存共享至关重要。--gpus all
标志使容器内可以访问所有可用的GPU,这对于需要GPU计算的任务至关重要。 要在容器中使用本地机器上的文件,请使用Docker卷将本地目录挂载到容器中:
# 将本地目录挂载到容器内的目录
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
将/path/on/host
更改为您本地机器上的目录路径,将/path/in/container
更改为Docker容器内希望访问的路径。
项目依赖(requirements.txt)
项目下载之后,在本地会出现一个requirements.txt文件,这个就是项目所需要依赖的库。如果你安装的项目执行的时候存在环境冲突的情况,那么建议新建一个虚拟环境在部署项目,或者使用: pip install -r requirements.txt 的方法安装依赖覆盖掉之前的环境。
# Ultralytics requirements
# Example: pip install -r requirements.txt# Base ----------------------------------------
matplotlib>=3.3.0
numpy>=1.22.2 # pinned by Snyk to avoid a vulnerability
opencv-python>=4.6.0
pillow>=7.1.2
pyyaml>=5.3.1
requests>=2.23.0
scipy>=1.4.1
torch>=1.8.0
torchvision>=0.9.0
tqdm>=4.64.0# Logging -------------------------------------
# tensorboard>=2.13.0
# dvclive>=2.12.0
# clearml
# comet# Plotting ------------------------------------
pandas>=1.1.4
seaborn>=0.11.0# Export --------------------------------------
# coremltools>=7.0 # CoreML export
# onnx>=1.12.0 # ONNX export
# onnxsim>=0.4.1 # ONNX simplifier
# nvidia-pyindex # TensorRT export
# nvidia-tensorrt # TensorRT export
# scikit-learn==0.19.2 # CoreML quantization
# tensorflow>=2.4.1,<=2.13.1 # TF exports (-cpu, -aarch64, -macos)
# tflite-support
# jax<=0.4.21 # tensorflowjs bug https://github.com/google/jax/issues/18978
# jaxlib<=0.4.21 # tensorflowjs bug https://github.com/google/jax/issues/18978
# tensorflowjs>=3.9.0 # TF.js export
# openvino-dev>=2023.0 # OpenVINO export# Extras --------------------------------------
psutil # system utilization
py-cpuinfo # display CPU info
thop>=0.1.1 # FLOPs computation
# ipython # interactive notebook
# albumentations>=1.0.3 # training augmentations
# pycocotools>=2.0.6 # COCO mAP
# roboflow
依赖项解释
Base Dependencies
matplotlib>=3.3.0
: 用于数据可视化和绘图。numpy>=1.22.2
: 提供高性能的多维数组处理和数学函数。opencv-python>=4.6.0
: 用于图像处理和计算机视觉任务。pillow>=7.1.2
: 用于图像处理,是Python Imaging Library (PIL) 的一个更现代化的分支。pyyaml>=5.3.1
: 用于处理YAML文件,这在配置模型和数据时非常有用。requests>=2.23.0
: 用于发送HTTP请求,可能用于网络数据交互。scipy>=1.4.1
: 提供科学计算功能,包括统计、优化等。torch>=1.8.0
: PyTorch深度学习框架,YOLOv8的核心依赖。torchvision>=0.9.0
: 提供PyTorch用于计算机视觉的数据集、模型等。tqdm>=4.64.0
: 提供进度条,用于长时间运行的任务。Logging (注释掉了)
tensorboard
,dvclive
,clearml
,comet
: 这些是用于实验跟踪和日志记录的工具,但在此依赖列表中被注释掉了。Plotting
pandas>=1.1.4
: 数据分析和操作的工具,通常与matplotlib结合使用。seaborn>=0.11.0
: 基于matplotlib的高级数据可视化库。Export (大多注释掉了)
- 这部分包含了许多导出模型到其他格式(如CoreML、ONNX、TensorRT等)的依赖库,但大多被注释掉了。
Extras
psutil
: 用于监控系统资源,如内存和CPU使用。py-cpuinfo
: 用于获取CPU的详细信息。thop>=0.1.1
: 用于计算模型的浮点运算次数(FLOPs)。
项目执行测试
当你的项目安装成功后,可以在命令行中执行以下命令测试项目是否能正常运行。
# 在命令行中执行以下命令测试项目是否正常安装成功
yolo predict model=yolov8n.pt imgsz=640 conf=0.25
在win中执行该命令,下图为执行成功的结果,runs\detect\predict 是程序执行输出的测试结果。
图片输出效果如下:
大家可以看到这个图片的时候,就说明咱们得项目环境没问题了。
总结
这篇博文是关于如何安装和使用Ultralytics的YOLOv8进行目标检测的全面指南。它涵盖了从环境搭建到项目测试的所有步骤,并提供了对官方文档的链接以及环境要求建议。 博文通过详细的步骤和命令行示例,为用户提供了一个清晰的YOLOv8安装和测试流程。无论是对于初学者还是希望在现有系统上部署YOLOv8的开发者,这篇文章都提供了实用的信息。此外,文章还考虑到了不同操作系统和硬件配置,提供了不同的安装选项,以适应广泛的用户需求。如果有哪里写的不够清晰,小伙伴本可以给评论或者留言,我这边会尽快的优化博文内容,另外如有需要,我这边可支持技术答疑与支持。