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了

相关推荐
FL162386312911 小时前
智慧交通基于yolov8的行人车辆检测计数系统python源码+onnx模型+精美GUI界面
yolo
阿利同学12 小时前
自动泊车系统中的YOLOv8 pose关键点车位线检测
yolo·自动泊车·关键点检测·车位检测·yolov8 pose·自定义模型训练·联系 qq1309399183
kay_54515 小时前
YOLOv8改进 | 模块缝合 | C2f 融合SCConv提升检测性能【CVPR2023】
人工智能·python·深度学习·yolo·目标检测·面试·yolov8改进
FL162386312915 小时前
[数据集][目标检测]葡萄成熟度检测数据集VOC+YOLO格式1123张3类别
人工智能·yolo·目标检测
FL162386312915 小时前
[数据集][目标检测]无人机飞鸟检测数据集VOC+YOLO格式6647张2类别
深度学习·yolo·目标检测
FL16238631291 天前
[数据集][目标检测]高铁受电弓检测数据集VOC+YOLO格式1245张2类别
人工智能·yolo·目标检测
TAICHIFEI1 天前
1. YOLOv10: Real-Time End-to-End Object Detection
人工智能·笔记·yolo·目标检测·目标跟踪
向阳逐梦1 天前
图像检测【YOLOv5】——深度学习
人工智能·深度学习·yolo
李佩锦peijin2 天前
YOLOv8目标检测模型——遥感小目标检测经验分享
人工智能·python·yolo·目标检测·计算机视觉
FL16238631292 天前
[数据集][目标检测]无人机识别检测数据集VOC+YOLO格式6986张1类别
人工智能·yolo·目标检测