深度计算机视觉中的目标检测、跟踪与分割技术
1. 目标检测基础与全卷积网络
传统的目标检测方法虽然效果不错,但需要多次运行卷积神经网络(CNN),速度较慢。例如,简单的目标检测方法在某些示例中需要运行 CNN 15 次。不过,有一种更快的方法,即使用全卷积网络(FCN)。
FCN 的概念最早是为语义分割任务提出的,其核心思想是将 CNN 顶部的全连接层替换为卷积层。下面通过一个例子来理解:假设有一个全连接层,它有 200 个神经元,位于一个输出 100 个 7×7 特征图的卷积层之上。每个神经元会计算卷积层所有 100×7×7 激活值的加权和(再加上一个偏置项)。
若将这个全连接层替换为一个使用 200 个 7×7 滤波器、采用“valid”填充的卷积层,该卷积层将输出 200 个 1×1 的特征图,即输出 200 个数字,这与全连接层的输出数量相同。而且,仔细观察卷积层的计算过程,会发现这些数字与全连接层产生的数字完全相同。唯一的区别在于,全连接层的输出是形状为 [批量大小, 200] 的张量,而卷积层的输出是形状为 [批量大小, 1, 1, 200] 的张量。
将全连接层转换为卷积层时,需要满足以下条件:
- 卷积层的滤波器数量必须等于全连接层的单元数量。
- 滤波器大小必须等于输入特征图的大小。
- 必须使用“valid”填充。步长可以设置为 1 或更大。
全连接层需要特定的输入大小,而卷积层可以处理任意大小的图像(不过,它要求输入具有特定数量的通道)。由于 FCN 只包含卷积层和池化层(池化层也有类似特性),因此它可以在任意大小的图像上进行训练和执行。
例如,一个用于花卉分类和定位的
超级会员免费看
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



