引言
YOLOv8 项目Git地址:https://github.com/ultralytics/
YOLO(你只看一次),一个流行的目标检测和图象分割法模型是由华盛顿大学的约瑟夫·雷德蒙和阿里·法尔哈迪开发的。YOLO于2015年推出,因其高速度和准确性而迅速走红。
- 2016 年发布的YOLOv2通过纳入批量归一化、锚框和维度集群改进了原始模型。
- 2018 年推出的YOLOv3使用更高效的骨干网络、多锚和空间金字塔池进一步增强了模型的性能。
- YOLOv4于2020年发布,引入了像马赛克这样的创新数据扩充、新的无锚探测头和新的损失函数.
- YOLOv5进一步提高了模型的性能,并增加了超参数优化、集成实验跟踪和自动导出为常用导出格式等新功能。
- YOLOv6于 2022 年由美团开源,目前已用于该公司的许多自主配送机器人。
- YOLOv7增加了额外的任务,如椰子树关键点数据集的姿势估计。
- YOLOv8由Ultralytics于2023年发布。YOLOv8引入了新的功能和改进,以增强性能、灵活性和效率,支持全方位的视觉人工智能任务,
- YOLOv9引入了可编程梯度信息(PGI)和广义高效层聚合网络(格兰)等创新方法。
- YOLOv10是由清华大学的研究人员使用该软件包创建的。超lytics计算机编程语言软件包创建的。该版本通过引入端到端头(端到端头),消除了非最大抑制(NMS)要求,实现了实时目标检测的进步。
- YOLO11🚀新的:Ultralytics的最新YOLO型号可在多项任务中提供一流的(SOTA)性能,包括侦查, 分割, 姿态估计, 跟踪,以及分类,利用不同人工智能应用和领域的能力。
什么是Ultralytics,它如何改进物体检测?
Ultralytics YOLO是广受好评的YOLO(你只看一次)系列的最新进展,用于实时对象检测和图像分割。它建立在以前版本的基础上,引入了新的功能和改进,增强了性能、灵活性和效率。YOLO支持各种视觉人工智能任务例如检测、分割、姿态估计、跟踪和分类。其最先进的架构确保了卓越的速度和准确性,使其适合各种应用,包括边缘设备和云API。
准备环境
Anaconda下载
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。
Conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等Miniconda包括Conda、Python。
创建yolov8虚拟环境
创建新的虚拟环境yolov8
conda create -n yolov8 python=3.8
激活yolov8环境
conda activate yolov8
yolov8模型下载
clone模型
可以直接下载zip压缩文件,或者安装Git输入以下命令克隆ultralytics项目
git clone https://github.com/ultralytics/ultralytics.git
下载完了之后目录如下:
pycharm配置
-
解释器配置:将下载下来的ultralytics文件夹使用pycharm打开,进入文件 —> 设置界面,找到解释器选项。选择你希望使用的 Anaconda 环境作为解释器,并进行配置。 点击添加本地解释器—>现有—>yolov8虚拟环境下的python.exe。
- 终端配置 :打开Anaconda Prompt所在文件,右键属性查看目标位置,复制cmd.exe以及后面的内容。同样地,文件—>设置—>工具—>终端,将以上复制的路径填入shell路径。
安装必要库
在pycharm终端输入pip安装命令等待安装完成。
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install yolo -i https://pypi.tuna.tsinghua.edu.cn/simple
下载训练模型
在GitHub项目仓,README往下翻可以看见预测、分类、分割等模型,点击即可下载。
https://github.com/ultralytics/ultralytics
自行下载
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n-pose.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s-pose.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8m-pose.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8l-pose.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x-pose.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n-seg.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s-seg.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8m-seg.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8l-seg.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x-seg.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n-cls.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s-cls.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8m-cls.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8l-cls.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x-cls.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8m.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8l.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n-obb.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s-obb.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8m-obb.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8l-obb.pt
https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8x-obb.pt
环境验证
在终端输入以下命令进行预测,打开runs/detect/predict查看预测结果
yolo predict model=./model/yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
可以看到yolov8的效果是非常棒的,除了person以及bus,甚至连stop sign都检测出来了。
参考官方快速使用文件:
https://docs.ultralytics.com/quickstart/#use-ultralytics-with-cli