yolov5 part2

two-stage (两阶段):Faster-rcnn Mask-Rcnn系列

one-stage (单阶段):YOLO系列

最核心的优势:速度非常快,适合实时监测任务。但是缺点也有,效果可能不好

速度较慢在2018年是

Mask R-CNN的原始实现能够在配备NVIDIA Tesla M40 GPU的5fps,但是效果很好,非常实用的通用框架maskrcnn

part1已经给出了这个

yolov1

这个思路很简单就是设定两个参数 h和w 然后得到一个预测框 计算和真实框的差别,再根据差别更新h和w,把你事先标好框的图片数据给yolo训练,yolo输出层会输出框来拟合标好的框,就是拟合与事先的框的偏移量,比如你最后特征图是13*13然后就每个像素生成三个框来拟合你真实的框

YOLO V1目标检测,看我就够了,看看b站【精读AI论文】YOLO V1目标检测,看我就够了_哔哩哔哩_bilibili

是针对每一个点都有两个候选框,根据IOU选择完候选框之后,通过置信度看其能不能算为一个物体,训练用的数据集一般是人工打上去的标签

发现网上yolov5视频主要是讲解原理,不讲解实战甚至安装

在github下载yolov5.zip,在prompt输入(base) C:\Users\eve>pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121,下载pytorch,

在一个单独的环境中,能使用pip就尽量使用pip,实在有问题的情况,再使用conda进行安装,不要来回混淆

·CUDA是否必须安装

·如果只需要训练、简单推理,则无需单独安装CUDA,直接在官网搜索对应的版本,通过pip安装即可

·如果需要编译、部署等,那么还是需要单独安装CUDA的,这部分大家可以自行百度

关键参数

  • ·weights:训练好的模型文件
  • ·source:检测的目标,可以是单张图片、文件夹、屏幕或者摄像头等
  • ·conf---thres:置信度阈值,越低框越多,越高框越少
  • ·iou---thres:IOU阈值,越低框越少,越少框越多

可以看到yolov5n是最小的,只要1.9M,速度也最快

输入python detect.py --weights yolov5s.pt即可检测那两个预定图片

python detect.py --weight yolov5s.pt -- source data /images/bus.jpg,这是对具体照片的检测

python detect.py --weight yolov5s.pt -- source screen,这是对电脑屏幕实时监测,持续循环,按ctrl+c即可暂停

还有其他方法,对应640*640图片尺寸变化

基于web的检测

基于torch.hub的检测方法,我们在jupyterlab

python 复制代码
import torch
#Model
model = torch.hub.load("./","yolov5s", source="local")#即为加载本地的模型 

# Images
img ="./data/images/zidane.jpg" 

#Inference
results=model(img)

#Results
results.show() 

数据集

python 复制代码
import cv2
import matplotlib.pyplot as plt   
#打开视频文件
video =cv2.videoCapture("./BVN.mp4") 
#读取一帧
ret, frame video. read()
plt.imshow(frame)#因为要在notebook里面显示图片,而不是弹出窗口

plt.imshow(cv2.cvtColor(frame,cv2.COLOR_BGR@RGB))

结合后循环30fps一抽

video =  cv2.Videocapture("./BVN.mp4") 
num =0  #计数器 
save step=30#同隔帧 
while True:
    ret, frame=video.read()
    if not ret:
        break 
    num+=1   
    if num%save_step == 0
         cv2.imwrite("./images/" +str (num) + ".jpg", frame)

这里没有用OpenCV进行读取显示,单纯的打开图片 

通过pip install labelimg下载标注工具,在prompt直接输入labelimg就打开了

这个框文件夹是把标注结果放在哪里,创建即可,把左边pasvoc的文件格式换成yolov5并且save,记得打开auto save自动保存

右键create box即可标注

模型训练

新建如下文件夹,把数据放入即可

what's your mission in shanghai!?

记住classes不要放

数据描述文件 ,修改train.py的439行

通常会出现一些问题,只好问ai了

相关推荐
城南皮卡丘5 小时前
苹果果实成熟度检测数据集 4195张+YOLO格式
深度学习·yolo·目标检测·计算机视觉·数据集
微尘hjx7 小时前
【数据集 11】面向城市道路的坑洞检测数据集(含8760张,已按比例划分训练、验证、测试集,支持YOLO全系列训练)
人工智能·yolo·目标检测·数据集·道路坑洞·路坑数据集·路坑
William一直在路上2 天前
把轻量化 YOLO 模型部署到你的手机上
yolo·智能手机
迪菲赫尔曼3 天前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
迪菲赫尔曼3 天前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
yyk333243 天前
YOLOv4算法
人工智能·yolo·目标跟踪
pjj198543 天前
YOLO 目标检测算法系列梳理:从 V1 到 V5 的原理演进
算法·yolo·目标检测
爱吃火鸡面呀3 天前
YOLOv2、YOLOv3、YOLOv4、YOLOv5 全面对比与总结
yolo
微尘hjx4 天前
【ByteTrack 04】多轨迹算法ByteTrack改进点
算法·yolo·目标检测·目标跟踪·bytetrack·ultralytics·车跟踪
fl1768314 天前
工业玻璃不同形状类别玻璃检测数据集VOC+YOLO格式1012张4类别
人工智能·yolo·机器学习