【一键Pip下载安装使用YOLO系列目标检测算法,YOLOv7都能Pip ! ! !】

15 篇文章 3 订阅
2 篇文章 0 订阅


前言

一键Pip下载安装使用YOLO系列目标检测算法,YOLOv7都能Pip ! ! !

今天在浏览器中闲逛,无意中发现,为了方便使用YOLO目标检测算法的快捷使用,有网友已经将其做成了Python的外接工具库,提交到了官方的索引库 pypi 上。0fcc309e5f46d04b670486b31d60964f.png
2884554d9e61141ad0b46f60734aaa42.png
现在已经有关于YOLO的各个版本库都已经发布,这意味着我们可以直接使用 pip 一键进行安装,然后导入包,进行方法调用就可以了,真的是太方便了。就是没有源代码,不好进行模型修改和训练了。
ed9a2c5cc7fa25c81635da7df188b916.png
不知不觉,YOLOv7都出来了,我记得前段时间美团刚出来YOLOv6,不知道怎么YOLOv7在今年2月份就横空出世,但是拒解释说:这里的7,不是下一代YOLO,而是一个幸运数字,姑且可以看作是一个代号。它的目的是让YOLO全面开花,不仅仅只是做目标检测。
在这里插入图片描述

YOLOv7论文相关源码地址:

https:// github.com/WongKinYiu/yolov7

GitHub - jinfagang/yolov7: 🔥🔥🔥🔥 YOLO with Transformers and Instance Segmentation, with TensorRT acceleration! 🔥🔥🔥

一键pip使用YOLOv7

1.创建虚拟环境和下载安装包

打开命令行,输入以下命令创建python的虚拟环境和相关安装包。

conda create -n yolov5 python=3.8 
conda activate yolov5 # 激活虚拟环境yolov5

一键pip安装yolov5,注意:python3.6版本以下的需要提前安装指定版本的 numpy 和 matplotlib,python 版本大于3.7,则可以直接使用 pip 安装。

2.yolov5模型检测detecet、训练trian、验证val和导出export

yolov5 库安装好后,同时会生成 yolov5 的命令行工具,其使用方法与源码中的 detect.py 非常类似。

使用yolov5进行检测detect

yolov5 detect --source 0  # webcam
                    file.jpg  # image
                    file.mp4  # video
                    path/  # directory
                    path/*.jpg  # glob
                    rtsp://170.93.143.139/rtplive/470011e600ef003a004ee33696235daa  # rtsp stream
                    rtmp://192.168.1.105/live/test  # rtmp stream
                    http://112.50.243.8/PLTV/88888888/224/3221225900/1.m3u8  # http stream

注意:cpu 的环境下,图片、视频检测都没问题,但是如果使用 gpu 的话,就会报错了,这可能是目前版本的 bug。目前 gpu 的支持还不够完善,像本地视频、网络视频( rtsp 协议)都不支持检测,

使用yolov5进行模型训练

yolov5 train --data coco.yaml --cfg yolov5s.yaml --weights '' --batch-size 64
                                    yolov5m                                40
                                    yolov5l                                24
                                    yolov5x                                16

另外关于 val 和 export 命令的使用,可以通过 --help 来查看其具体支持的参数,如:yolov5 export --help

3.使用yolov5完整检测示例

【不使用CUDA进行加速检测】:首先将官方提供的 yolov5s.pt 模型权重weights下载下来,然后执行下面的脚本。

# 导入模块
import yolov5
 
# 载入模型
model = yolov5.load('yolov5s.pt')
 
# 待检测的图片
img = 'https://github.com/ultralytics/yolov5/raw/master/data/images/zidane.jpg'
 
# 推理,默认参数
# results = model(img)
 
# 使用特定尺寸进行推理
# results = model(img, size=1280)
 
# 数据增强,能够检测出更多的目标,当然也有可能出现误检
results = model(img, augment=True)
 
# 检测结果数据解析,所属类别、置信度、目标位置信息
predictions = results.pred[0]
boxes = predictions[:, :4] # x1, x2, y1, y2
scores = predictions[:, 4]
categories = predictions[:, 5]
 
# 显示检测结果
results.show()
 
# 保存检测结果图片
results.save(save_dir='results/')

检测结果如下所示:
在这里插入图片描述

【使用CUDA进行加速检测】: 使用cuda进行加速检测,需要提前下载安装 gpu版本的 pytorch,和原版一样,通过指定参数device来指定cuda加速。

from yolov5 import YOLOv5
 
# 模型路径
model_path = 'yolov5s.pt'
 
# 指定参数cuda进行加速
device = "cuda" # or "cpu"
 
# 模型初始化
yolov5 = YOLOv5(model_path, device)
 
# 待检测图片
image = 'https://github.com/ultralytics/yolov5/raw/master/data/images/zidane.jpg'
 
# 推理,默认参数
results = yolov5.predict(image)
 
# 使用特定尺寸进行推理
results = yolov5.predict(image, size=1280)
 
# 数据增强,能够检测出更多的目标,当然也有可能出现误检
# results = yolov5.predict(image, augment=True)
 
# 多个参数一起使用
# results = yolov5.predict(image, size=1280, augment=True)
 
# 如果需要检测多张图片的话,可以使用列表
# results = yolov5.predict([image1, image2], size=1280, augment=True)
 
# 检测结果数据解析,所属类别、置信度、目标位置信息
predictions = results.pred[0]
boxes = predictions[:, :4] # x1, x2, y1, y2
scores = predictions[:, 4]
categories = predictions[:, 5]
 
# 显示检测结果
results.show()
 
# 保存检测结果
results.save(save_dir='results/')

Reference: https://zhuanlan.zhihu.com/p/410743156

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

【网络星空】

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值