SSD原理

候选框生成结构之后还会进行微调,利用四个variance做回归调整候选框

### YOLO 和 SSD 的目标检测原理及其差异 #### YOLO (You Only Look Once) YOLO 是一种实时对象检测算法,它将输入图像划分为多个网格单元格。每个网格负责预测边界框和类别概率。具体来说: - 输入图像被划分成 S×S 网格[^1]。 - 每个网格预测 B 个边框以及这些边框属于各个类别的置信度分数。 - 边框由五个参数组成:(x, y, w, h),其中 (x,y) 表示中心坐标,w,h 分别表示宽度和高度;还有一个置信度得分 C。 对于单次前向传播过程中的每一个位置 i,j ,网络都会输出一组固定数量的候选区域提案(bounding boxes),并附带相应的分类评分。这种设计使得 YOLO 能够一次性处理整张图片,在速度上具有显著优势。 ```python import torch from yolov5 import YOLOv5 model = YOLOv5('yolov5s.pt') results = model(image) ``` #### SSD (Single Shot MultiBox Detector) SSD 同样是一种基于卷积神经网络的一阶段探测器,但是采用了不同的策略来提高精度而不牺牲太多性能: - 使用不同尺度的感受野特征图来进行多层预测,从而更好地捕捉大小各异的对象实例。 - 默认框(default box)概念引入——预先定义了一系列形状固定的锚点(anchor),它们覆盖了整个输入空间的不同比例尺级别。 - 对于每个默认框,默认情况下会生成一系列偏移量作为最终的位置估计,并计算该处存在特定种类物体的概率分布。 因此,相比于只依赖单一分辨率下采样的 Faster R-CNN 或者原始版本的 YOLO , SSD 可以更有效地利用多层次的信息[^2]. ```python from ssd.ssd import build_ssd net = build_ssd('test', 300, 21) # initialize SSD with size=300 and VOC dataset classes count=21 image_tensor = transform(img).unsqueeze(0) predictions = net(image_tensor)[0] ``` #### 主要区别 | 特征 | YOLO | SSD | | --- | --- | ---| | 多尺度支持 | 单一尺度下的全连接层用于预测 | 不同层次特征图上的多样化感受野 | | 锚定机制 | 预测绝对尺寸而非相对偏差 | 利用了预设好的 anchor boxes 来辅助定位 | | 准确率 vs 效率平衡 | 更倾向于效率优先的设计理念 | 力求在保持较高帧速率的同时提升准确性 |
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值