pytorch-ssd源码解读(二)------------detection(预测层)

本文深入解析SSD模型的detection层,讲解如何整合位置偏移量、置信度及默认框,过滤低置信度预测框,并通过NMS进行框的抑制。内容包括输入解析、参数配置、输出格式和关键代码解读。
摘要由CSDN通过智能技术生成

一、定义

detection层是ssd预测阶段的最后一层。它接收底层网络输出的位置偏移量(loc_data)、各个框置信度(conf_data)以及默认框(prior_data)。该层的作用是整合各层的预测结果,过滤置信度太低的预测框,通过类内nms抑制大量相同的预测框。

二、代码解读

1.输入

  • loc_data    网络六个层预测的坐标偏移。Shape:[batch,num_priors*4]
  • conf_data     各预测框对应各类的置信度(每个预测框针对每一类都预测一个得分,因此每个预测框对应num_classes个得分)                            Shape: [batch*num_priors,num_classes]
  • prior_data   默认框(上篇博客中介绍过),网络的预测框其实就是针对这个默认框的偏移量。 Shape: [num_priors,4]

2.参数配置

  • top_k                          一张图片中,每一类保存top_k个预测框
  • conf_thresh                置信度阈值,置信度低于该阈值的预测框会被抛弃
  • nms_thresh                nms阈值

3.输出格式

    output的Shape为 [batch, num_classes, top_k, 5] 

   取其中一个输出output[i,j,k,:]表示在当前mini_batch中的第i张图片的第j类的第k个框对应的预测结果。

   最后一维的五个数依次为[score,xmin,ymin,xmax,ymax]

 4.重点代码解读

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值