个人理解:
感受野就是每层featuremap 中 1个值计算与原图像 几个值相关
原图像就是1, 第一层用 3*3卷积层计算,每个点用到了原图像3个值,第二层 用到第一层3个,反应到原图像就是5个, 直接看一维(行或列)就可以。这里可以想象一下如果第一层(第一次卷积,不算原图像)stride=2的话,对于当前层的感受野是没有影响的,但是会影响到下一层的感受野,下面是具体的计算公式。
计算公式为
注意 这里是 前几层的步长乘积,跟当前层的步长是没有关系的。
这是一个具体的计算结果;
这里演示一下计算过程,layer2开始
layer2:3 + (3 - 1) * 1 = 5
layer3 : 5 + (3-1) * 4 = 13
其余不算了
附一个vgg16 感受野计算结果
可以看到vgg输入时224 ,最后感受野大小212几乎达到224 几乎拥有全图信息
画个图
感受野计算网站:
https://fomoro.com/projects/project/receptive-field-calculator#3,1,1,VALID;3,1,1,VALID;3,2,1,VALID
参考博客:https://www.jianshu.com/p/2b968e7a1715 ,里面有更具体的公式推导流程