下面这个网站,可以简单的输入网络参数,就直接把你的感受野计算出来
https://fomoro.com/projects/project/receptive-field-calculator#3,1,1,VALID;2,2,1,VALID;3,1,1,VALID;2,2,1,VALID;3,1,1,VALID;3,1,1,VALID;2,2,1,VALID
几个原则:
(1)第一层卷积层的输出特征图像素的感受野的大小等于滤波器的大小;
(2)深层卷积层的感受野大小和它之前所有层的滤波器大小和步长有关系;
(3)计算感受野大小时,忽略了图像边缘的影响,即不考虑padding的大小。
计算公式:
V’为要计算的上一层的感受野大小,stride和size都是上一层的步长和卷积核大小。
V为该层的感受野大小。
一步一步往前迭代。
举一个例子:
一个输入随意,第一层卷积核参数为ksize = 3, stride = 2,第二层ksize =3,stride=2,第三层ksize=3,stride=1.
我的计算思路如下:
第三层输出的Feature Map上每1*1像素在各层上表示的感受野尺寸为:
在第三层输入的Feature Map上:(1-1)*1+3=3;
在第二层输入的Feature Map上:(3-1)*2+3=7;
在第一层输入的Feature Map(也就是原始图像)上:(7-1)*2+3=15;
所以最终结果是15