YOLO系列算法详解(一)

一、深度学习经典检测方法

1.检测任务中阶段的意义

对于单阶段(one-stage)检测来说,输入一张图像,经过一个卷积神经网络,输出一个边界框,只需要得到框的(x1,y1)和(x2,y2)四个值即可,是一个简单的回归任务。 

两阶段(two-stage)检测中,也是输入一张图像,输出是检测到的物体的边界框,但是在检测过程中,多加了一个RPN(区域建议网络),最终的结果是由一些候选框(预选框)得到的,这样得到的效果会比单阶段检测好。

2.不同阶段算法优缺点分析

one-stage:最核心的优势:速度非常快,适合做实时检测任务!
                 但是缺点也是有的,效果通常情况下不会太好!

通常来说,在目标检测算法中,速度越快,效果越差;效果越好,速度越慢。

mAP,即均值平均精度(mean Average Precision)

mAP值越大,效果越好

 FPS,即每秒帧率 (Frame Per Second)

除了检测准确度,目标检测算法的另一个重要评估指标是速度,只有速度快,才能够实现实时检测。FPS用来评估目标检测的速度。即每秒内可以处理的图片数量。当然要对比FPS,你需要在同一硬件上进行。另外也可以使用处理一张图片所需时间来评估检测速度,时间越短,速度越快。

two-stage:速度通常较慢(5FPS),但是效果通常还是不错的!
                 非常使用的通用框架Mask-Rcnn,需要熟悉

 3.指标分析

(1)TP、TN、FP、FN

在介绍各项评估指标之前,首先介绍一下TP、TN、FP、FN这四个概念。

 T(True)或者F(False)代表的是该样本的分类是否正确,P&#x

### YOLO算法的优点 YOLO(You Only Look Once)作为种实时目标检测算法,在多个方面表现出显著的优势。该算法将目标检测问题转化为个单的回归问题,直接从图像像素预测边界框和类别概率[^2]。 - **速度快**:由于只需要次推理过程即可完成整个图片中的所有对象检测工作,因此YOLO能够实现非常高的处理速度,适合于需要快速响应的应用场景。 - **全局视角**:在单次扫描过程中考虑整张图的信息,有助于减少背景误报并提高定位准确性。 - **端到端训练**:可以次性优化所有的模型参数,简化了传统两阶段方法中复杂的调参流程。 然而,尽管有这些优势,YOLO也存在些局限性: ### YOLO算法的缺点 - **小物体检测效果差**:对于较小尺寸的对象或者密集排列在起的目标,YOLO的表现不如其他专门设计用于此类情况的方法好。这是因为网格划分的方式使得每个grid cell负责预测固定数量的目标,当遇到大量细碎的小物件时容易出现遗漏或错误分类的情况[^1]。 - **召回率较低**:相比于Faster R-CNN等基于候选区生成的技术路线而言,YOLO可能会错过某些真实存在的实例,尤其是在复杂背景下或是遮挡严重的情形下表现得更为明显。 为了克服上述不足之处,后续版本如YOLOv2引入了系列改进措施,比如采用更强大的特征提取器Darknet-19、支持多尺度输入以及借鉴Anchor Box概念来增强对不同形状大小物体的适应能力;同时通过调整损失函数等方式进步提升了整体性能水平。 ```python import torch from yolov2 import Darknet19 # 假设这是定义好的darknet架构 model = Darknet19() input_tensor = torch.randn(1, 3, 416, 416) # 输入张量模拟张RGB彩色图片 output = model(input_tensor) print(output.shape) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AYu~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值