yolo代码中的shortcut、route、yolo层讲解

69 篇文章 8 订阅

1、shortcut层

elif module_def["type"] == "shortcut":
    layer_i = int(module_def["from"])
    temp_shape1, temp_shape2 = layer_outputs[-1].shape, layer_outputs[layer_i].shape
    x = layer_outputs[-1] + layer_outputs[layer_i]

单步结果:

在这里插入图片描述

从单步的结果来看layer_outputs[-1]是上一层的feature map即特征图,layer_outputs[layer_i]是选用之前指定的特征图,将这两个相加,也就是对应位置相加,所以形状不变,即shortcut是特征图中的每个像素点进行对应位置的相加操作

这样做的作用暂时还没考虑,待更新

2、route层

elif module_def["type"] == "route":
    temp = [layer_outputs[int(layer_i)] for layer_i in module_def["layers"].split(",")]
    x = torch.cat([layer_outputs[int(layer_i)] for layer_i in module_def["layers"].split(",")], 1)
    print("断点停止")

单步结果:

在这里插入图片描述

从单步结果来看route是进行的拼接操作,即将一个特征图和另一个特征图在指定的维度上进行拼接操作,组成了一张尺度更大的特征图

这样做的作用暂时还没考虑,待更新

3、YOLO层待更新

注,此代码是YOLOV3中的但并不影响对结果的分析

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值