快速预览
一、YOLO简介
概述
YOLO(You Only Look Once)是一种流行的目标检测算法,由Joseph Redmon等人开发。YOLO
算法以其高效的实时性能和准确的检测能力而闻名。自YOLO的首次提出以来,已经经历了多个版本
的更新和改进。以下是YOLO发展史的简要概述:
YOLOv1(2015)
YOLOv1是YOLO系列的开山之作,它将目标检测问题视为一个回归问题,通过一个神经网络直接在
输入图像上进行预测,而不需要使用滑动窗口或区域提议的方法。它将图像划分为SxS的网格,每个
网格单元负责预测中心点落在该单元内的物体的边界框和类别概率。YOLOv1在速度和准确性之间取
得了很好的平衡,尤其是在实时目标检测任务中。
YOLOv2(也称为YOLO9000,2016)
YOLOv2在YOLOv1的基础上进行了改进,提高了检测速度和准确性。引入了批量归一化(Batch
Normalization)和锚框(Anchor Boxes)的概念,以更好地处理不同尺寸的物体。YOLO9000能
够检测多达9000个类别,通过结合ImageNet和COCO数据集进行训练。
YOLOv3(2018)
YOLOv3进一步优化了网络结构,提高了检测精度,尤其是在小物体和复杂场景中。引入了多尺度
预测和新的损失函数,如IoU损失,以改善模型性能。YOLOv3在COCO数据集上取得了显著的性
能提升。
YOLOv4(2020)
YOLOv4由Alexey Bochkovskiy等人开发,旨在实现最佳的速度和准确性。引入了多种新技术,如加
权残差连接(WRC)、跨阶段部分连接(CSP)、跨小批量标准化(CmBN)等,以提高模型的效
率和性能。YOLOv4在保持高速的同时,提供了与两阶段检测器相媲美的准确性。
YOLOv5(2020)
YOLOv5并非由原始YOLO作者团队发布,而是由其他研究者基于YOLOv4进行的改进。YOLOv5在
网络结构和训练策略上进行了优化,以提高检测速度和准确性。它提供了多种大小的模型,以适应
不同的计算资源和应用场景。
YOLOv6(2021)
YOLOv6由美团开发,继续在速度和准确性上进行优化。引入了新的特征金字塔网络(FPN)和注意
力机制,以提高对小物体的检测能力。
YOLOv7(2021)
通过引入新的网络架构和训练技巧,YOLOv7在保持高速的同时,提高了检测的准确性。YOLO系列
算法的发展展示了目标检测领域在速度和准确性方面的不断进步。随着技术的不断发展,YOLO算法
及其变体在计算机视觉和深度学习领域中的应用越来越广泛。
YOLOv8(2023)
YOLOv8的作者和YOLOv5的作者是同一家公司,YOLOv8 的具体创新包括一个新的骨干网络、一个
新的 Ancher-Free(无锚点)检测头和一个新的损失函数。YOLOv8 可以在从 CPU 到 GPU 的各种
硬件平台上运行,提供了一个全新的 SOTA(State of the Art,最先进)模型。YOLOv8 也支持全方
位的视觉 AI 任务,包括检测、分割、姿态估计、跟踪和分类。
二、基本环境
1.miniconda安装
miniconda简介
miniconda是管理python环境的一个工具,因为我的日常任务可能会用各种各样的工具,然而这些工
具需要的Python环境不一样,可能会出现不兼容的情况,所以我们使用mini来部署我们的Python环境
我使用基于Python3.8的miniconda版本(Miniconda3-py38_23.11.0-2-Windows-x86_64.exe)
下载地址如下
https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_23.11.0-2-Windows-x86_64.exe
Miniconda常用命令
创建环境
conda create -n y5 python=3.8
列出所有环境
conda env list
激活环境
activate y5
删除环境
conda remove --all -n y5
切换源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ --trusted-host https://mirrors.aliyun.com/pypi/simple/
2.安装CPU版本的Pytorch
Pytorch是一个深度学习框架,近些年来称为深度学习领域热门的框架之一,Pytorch有CPU版和GPU
版本。鉴于大家的GPU可能不一样,不同的GPU安装的CUDA不一样。为了统一,所以我这里只安装
CPU的Pytorch,安装代码如下
pip3 install torch torchvision torchaudio
三、下载YOLO代码&安装依赖&推理
安装依赖
同学们可以在Github找到YOLOv5的代码,现在YOLOv5已经迭代到5.7这个版本了,我们使用YOLOv
5.7这个版本来做演示,YOLOv5 .7源码地址如下:
https://github.com/ultralytics/yolov5/tree/v7.0