人群密度向:CMTL

论文地址:https://arxiv.org/pdf/1707.09605.pdf

代码地址:https://github.com/svishwa/crowdcount-cascaded-mtl

 

Abstract

提出了一种新的端对端的级联神经网络同时学习人群数量分类以及密度图估计;

将人群数量分成不同的组别等价于粗略地对人群数目进行估计,之后其可以作为一个高水平的先验信息加入到密度图估计的神经网络中去。

 

Introduction

作者将主要关注点放在从单张图片中进行人群计数和密度图。现在面临比较大的挑战来源于由于观察形变导致的物体在大小和外观上的变化太大。

所谓的高水平先验就是根据一张图片中的人数将其分为不同的组的类别。这个高水平先验和一个密度图估计学习网络是通过一个级联网络进行同时学习的的。人群计数分类和密度图估计这两个任务共享一组初始卷积层,随后分别连接两个平行的网络对高层语义特征进行学习。高水平先验学习到的全局特征同密度估计得到的第二部分的特征图进行连接之后,进行反卷积操作,最后得到高精度密度图。

Proposed Method

 Shared convolutional layers

这一部分由两个卷积层组成,每个卷积层后接着PReLU激活函数。第一个卷积层有16张特征图,卷积核大小为9x9;第二个卷积层有32张特征图,卷积核大小为7x7。这一浅层网络生成的特征图将会被高水平先验阶段和密度图估计阶段进行共享。

Hight-level prior stage

这一阶段将前一共享阶段输出的特征图作为输入。这一部分由四个卷积层组成,每层之后接的激活函数是PReLU。前两个卷积层后都跟着一个步长为2的最大池化层。这一阶段的最后一部分由三个卷积层组成,每个卷积层之后接的激活函数是PReLU。第一个全连接层有512个神经元,第二个全连接层有256个卷积核,最后一个全连接层有10个卷积核,随后紧跟着sigmoid层,对图片中人群数目的类别进行预测。为了实现训练的时候可以输入任意大小的图片,将SPP-net引入到最后一个卷积层之后,它可以汇总所有卷积层的特征并像全连接层输入固定尺寸的特征,此处损失函数用交叉熵损失。

Density estimation

这一部分同样由四个卷积层组成,每个卷积层后接的激活函数均为PReLU。前两个卷积层后都跟着一个步长为2的最大池化层。因此CNN的输出维度会变为原来的1/4。第一个卷积层有20张特征图,卷积核大小为7x7;第二个卷积层有40张特征图,卷积核大小为5x5;第三个卷积层有20张特征图,卷积核大小为5x5;第四个卷积层有10张特征图,卷积核大小为5x5。这一部分网络的输出,会同高水平先验阶段的最后一个卷积层的输出连接起来,然后输入到两个卷积层和两个反卷积层的结构中去,其中第一个卷积层有24张特征图,卷积核大小为3x3;第二个卷积层有32张特征图,卷积核大小为3x3;接着是两个特征数分别为16和18的反卷积层。这两个反卷积层通过将特征图恢复到原图大小,从而可以修复之前池化时损失的细节。这一阶段使用的是标准的pixel-wise的欧式距离损失。需要注意的是,这一部分的损失同前一部分cascade的输出有关。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值