前言
安装过程中发现,YOLO V8一直在更新,现在是2023-9-20的版本,已经和1月份刚发布的不一样了。
eg: 目录已经变了,旧版预测:在ultralytics/yolo/v8/下detect
新版:ultralytics/models/yolo/detect/predict.py
1.安装
1.1下载源码
下载地址:
GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite
ps:有时候可能打不开,多试几次
点击code 下载zip包
1.2.下载后解压,在pycharm中打开
1.3.安装依赖
在pycharm中Terminal 中执行:
pip install -r requirements.txt
在 Interpreter 中重点看下,有没有 ultralytics 包
1.4 下载模型权重文件
下载地址:
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt
或者从我上传的下载(不要积分!)
https://download.csdn.net/download/hzp666/88359929
下载好放到ultralytics/models/yolo/detect 目录下
模型权重当然有很多版本,在readme中有讲解,回头可以再看。
至此环境基本上,大功告成!
(不要搞什么conda了,简单就完了,费啥牛鼻子劲!!!)
2.使用
找到 ultralytics/models/yolo/detect 目录
增加一个文件,写个main 方法
main 文件内容(就1行!):
from ultralytics import YOLO as yolo if __name__ == '__main__': yolo().predict(model='yolov8n.pt',source='../../../assets/video(1).mp4',save=True)
ps:model 就是指定模型权重文件, source 就是指定 图片/视频路径(项目自带了2个图片)
save :就是要报存下来,不然就只返回list,如下图 4person 1 bus ...(就这个save参数,搞劳资半天,艹)
运行main 函数:
输出结果:
当你看到saved to 那恭喜你成功了。
然后到save目录,查看检测结果图片。
补充:
什么是 TorchScript?
PyTorch 无疑是现在最成功的深度学习训练框架之一,是各种顶会顶刊论文实验的大热门。比起其他的框架,PyTorch 最大的卖点是它对动态网络的支持,比其他需要构建静态网络的框架拥有更低的学习成本。PyTorch 源码 Readme 中还专门为此做了一张动态图:
对研究员而言, PyTorch 能极大地提高想 idea、做实验、发论文的效率,是训练框架中的豪杰,但是它不适合部署。动态建图带来的优势对于性能要求更高的应用场景而言更像是缺点,非固定的网络结构给网络结构分析并进行优化带来了困难,多数参数都能以 Tensor 形式传输也让资源分配变成一件闹心的事。另外由于图是由 python 代码构建的,一方面部署要依赖 python 环境,另一方面模型也毫无保密性可言。
而 TorchScript 就是为了解决这个问题而诞生的工具。包括代码的追踪及解析、中间表示的生成、模型优化、序列化等各种功能,可以说是覆盖了模型部署的方方面面。今天我们先简要地介绍一些 TorchScript 的功能,让大家有一个初步的认识,进阶的解读会陆续推出~