CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scen 论文阅读

论文题目:CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes

网址:https://arxiv.org/pdf/1802.10062.pdf

CVPR2018

主要观点:

1。MCNN的多列设计没有显著作用:

  以前的拥挤场景分析工作主要基于multi-scale architectures.他们在该领域取得了很高的性能,但是当网络变得更深时,它们使用的设计也带来了两个显著的缺点:大量的训练时间和无效的分支结构(例如:MCNN),本文设计了一个实验来证明mcnn与表1中更深入的常规网络相比表现不佳。

如我们先前所知,MCNN的每列专用于某一级别的拥塞场景。但是,使用MCNN的有效性可能并不突出。论文在图2中展示了MCNN中三个独立列(代表大,中,小的感受野)所学习的特征,并用ShanghaiTech PartA数据集进行评估。该图中的三条曲线与具有不同拥塞密度的50个测试案例共享非常相似的模式(估计的错误率),这意味着这种分支结构中的每个列学习几乎相同的特征。它违背了MCNN设计的初衷,用于学习每列的不同功能。

2。膨胀卷积优于反卷积

    已经在分割任务中证明了膨胀卷积层,其精度得到显著提高,并且它是池化层的良好替代方案。尽管池化层(例如,最大和平均池化)被广泛用于维持不变性和控制过度拟合,但是它们还显著地降低了空间分辨率,这意味着丢失了特征映射的空间信息。反卷积层可以减轻信息的丢失,但额外的复杂性和执行延迟可能并不适合所有的情况,膨胀卷积是一个更好的选择,它使用稀疏内核来交替汇集和卷积层。其在不增加参数数量(或计算量)的情况下扩大了感受野(例如,添加更多卷积层可以产生更大的感受野但引入更多操作)。

为了保持特征图的分辨率,与使用卷积+池化+反卷积的方案相比,膨胀卷积显示出明显的优点,我们在图4中选择一个例子用于说明,输入是人群的图像,并且它分别通过两种方式处理以产生具有相同大小的输出。

在第一种方法中,输入由具有因子2的最大池化层进行下采样,然后将其传递到具有3×3 sobel内核的卷积层。由于生成的特征图是原始输入的1/2,因此需要对其进行上采样。

在另一种方法中,我们尝试膨胀卷积并使用相同的3×3sobel内核,同时具有因子=2步幅的膨胀内核。输出与输入共享相同的维度。最重要的是,膨胀卷积的输出包含更详细的信息

 

 

CSRNet以VGG-16为前端,具有很强的迁移学习能力。VGG的输出大小是原始输入大小的1/8。CSRNet还在后端使用膨胀的卷积层。

什么是膨胀的卷积?可以参考以下图像

使用膨胀卷积的基本概念是在不增加参数的情况下扩大核,所以,如果膨胀率是1,我们取核并将它转到整个图像上。然而,如果我们将扩展率提高到2,内核就会像上面的图像所示的那样扩展(按照每个图像下面的标签),它可以替代汇集图层。

背后原理:

假设我们有一个输入x(m,n),一个滤波器w(i,j),以及膨胀率r。输出为y(m,n):

y(m,n)=\sum_{i=1}^{M}\sum_{j=1}^{N}x(m+r\times i,n+r\times j)w(i,j)

我们可以用(k*k)核推广这个方程,其扩张率为r.内核扩展到:

([K+(k-1)*(r-1)]*[k+(k-1)*(r-1)])

因此,每一幅图像都产生了一个对应的特征图。在给定的图像中,每个人的头部都是用高斯核模糊的。所有的图像都被裁剪成9个补丁,每个补丁的大小是图像原始大小的1/4。其中,前4个补丁分为四个1/4,其他5个补丁随机裁剪。最后,每个补丁的镜像被取为训练集的两倍。

简而言之,这就是CSRNet背后的体系结构细节。

下面我们来看下其训练细节(含评估指标)。

训练采用了随机梯度下降法,在训练期间,固定学习率设置为le-6,损失函数被认为是欧几里德距离,以便测量真实标注与网络预测之间的误差

L(\Theta )=\frac{1}{2N}\sum_{i=1}^{N}||Z(X_i,\Theta)-Z_i^{GT}||^2_2

其中N是训练批次的大小(batch?).CSRNet中使用的评估标准是mae和mse.即平均误差和均方误差。其计算公式为:

MAE=\frac{1}{N}\sum_{i=1}^{N}|C_i-C_i^{GT}|\\ MSE=\sqrt{\frac{1}{N}\sum_{i=1}^{N}|C_i-C_i^{GT}|^2}

其中,C_i是网络预测值,网络的预测值本质是一个维度为M*N的矩阵Z(可以理解为密度图),则C_i的计算公式为:

C_=\sum_{i=1}^{M}\sum_{j=1}^{N}z_{i,j}

网络模型将首先预测给定图像的密度图。如果没有人在场,网络预测矩阵(密度图)元素值的和为0。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值