deep-learning - 为什么过滤器和特征层具有相同数量的 channel ?

标签 deep-learning computer-vision conv-neural-network detection object-detection

一些对象检测框架,例如 SSD(单次多盒检测器)和 Faster-RCNN,具有用于分类和回归的“卷积过滤器”。以下来自SSD:

For a feature layer of size m × n with p channels, the basic element for predicting parameters of a potential detection is a 3 × 3 × p small kernel that produces either a score for a category, or a shape offset relative to the default box coordinates. At each of the m × n locations where the kernel is applied, it produces an output value.



我的问题是:“小内核”的数量必须是 p 吗?设置一个任意数 k(与特征 channel 不同)如何?

最佳答案

enter image description here

图中,部分extra Feature layers显示如何 small kernel摘录p来自每个输出位置的向量,预测不同 aspect ratios 的检测和 class categories .

例如,从第一个卷积特征图,p 是 (3x(classes+4)) ,第二个是 (6x(classes+4)) .号码 36表示anchor的数量为这些特征图定义的框,对于每个 anchor 框都有 classes + 4 box coordinates输出。

所以你需要修复p根据您为每个特征图决定的 anchor 框数量,您想要检测的类数量。

My question is: does the numbers of “small kernels” have to be p? How about set a arbitrary number k (which is not same with feature channels)?



特征 channel 是3x3xp卷积的结果channel 所以它总是需要大小 p ,它是内核的输出 channel 大小。并注意 3x3xp实际上是 3 x 3 x in_channels x p ,例如第一个特征层是通过卷积38x38x512得到的来自带有内核的 VGG 3x3x512xp获取 38x38xp

关于deep-learning - 为什么过滤器和特征层具有相同数量的 channel ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50615786/

相关文章:

python - 使用 noise_shape 的 Keras Dropout

matlab - 使用 Matlab 和 opencv 进行基本矩阵估计

python - 初始网络的类数(Tensorflow)

c++ - 您如何判断图片中物体的(现实世界)距离?

python - keras 中的图像到图像映射

Tensorflow:如何使用自定义常量滤波器对图像进行卷积

deep-learning - 亚麻 (google) 和 dm-haiku (deepmind) 之间的主要区别是什么?

tensorflow - 测试精度提高,同时损耗增加

python - 如何在keras中与自身进行卷积?

python - 初始训练是否适用于不平衡数据集? ( tensorflow )