mrg*_*oom 15 computer-vision deep-learning
我正在阅读有关使用CNN(卷积神经网络)进行物体检测的论文.
以下是关于接受领域的引用:
The pool5 feature map is 6x6x256 = 9216 dimensional. Ignoring boundary effects, each pool5 unit has a receptive field of 195x195 pixels in the original 227x227 pixel input. A central pool5 unit has a nearly global view,
while one near the edge has a smaller, clipped support.
Run Code Online (Sandbox Code Playgroud)
我的问题是:
1)像素区域的大小影响最后一个卷积的输出.
2)对于每个卷积和池化操作,计算输出的大小.现在找到导致输出大小为1x1的输入大小.这是感受野的大小
3)您不需要使用库来执行此操作.对于每个2x2池,每个维度的输出大小减少一半.对于跨步卷积,您还可以按步幅划分每个维度的大小.您可能需要削减一些尺寸,具体取决于您是否使用填充进行卷积.最简单的情况是使用padding = floor(内核大小/ 2),因此卷积不会对输出大小产生任何额外的变化.
这是另一种直接计算感受野的方法.Stackoverflow不支持数学公式,对于更易读的版本,请参阅计算CNN的接收域
层$ k $的感受野(RF)$ l_k $是:
$$ l_k = l_ {k-1} +((f_k - 1)*\prod_ {i = 1} ^ {k-1} s_i)$$
其中$ l_ {k-1} $是图层$ k-1 $的接收字段,$ f_k $是过滤器大小(高度或宽度,但假设它们在这里相同),$ s_i $是大步layer $ i $.
上面的公式从下到上(从第1层)计算感受野.直观地说,$ k $层中的RF相对于$ k-1 $层覆盖$(f_k - 1)*s_ {k-1} $个像素.但是,增量需要转换为第一层,因此增量是一个因子 - 层中的步幅$ k-1 $在较低层中呈指数级增长.
希望这是有帮助的.
小智 5
Tensorflow现在仅需使用即可支持接收场计算 tf.contrib.receptive_field
有关详细信息,请参见https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/receptive_field。
| 归档时间: |
|
| 查看次数: |
12256 次 |
| 最近记录: |