登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 计算机类 > 软件工程 > 正文

针对行人检索的联合检测和识别的特征学习方法外文翻译资料

 2021-12-15 22:41:13  

英语原文共 10 页

针对行人检索的联合检测和识别的特征学习方法

Tong Xiao1,*, Shuang Li1,*, Bochao Wang2, Liang lin2,3, Xiaogang Wang1

(1. The Chinese University of Hong Kong 2. Sun Yat-Sen University 3. SenseTime Group Limited)

({xiaotong,sli,xgwang}@ee.cuhk.edu.hk, wangboch@mail2.sysu.edu.cn, linliang@ieee.org)

  1. 现有的行人重识别方法中所使用的标准和方法主要关注的是经过裁剪的查询和候选行人图片。然而,现实中的场景不会这么理想,在做行人检索时,我们需要先用行人检测的方法标记出人,再用行人重识别的方法搜索出指定的人。本文为了缩小两者的差距,提出了一个针对行人检索的新的深度学习框架,将行人检测和行人重识别整合到一个卷积神经网络中。本文建议使用在线实例匹配(OIM)损失函数来训练网络,因为它能很好的适应大量的识别数据集。为了验证我们的方法,我们收集和标注了一个针对行人检索的大规模基准数据集,它包含了18184张图片、8432个识别框和96143个行人检测框。实验表明我们整合的框架比那些未整合的方式表现得更好,并且OIM损失函数比传统的Softmax损失函数收敛得更快。

引言

行人重识别[8,39]旨在在行人图片集中匹配目标人物,它在视频监控方面有广泛的应用,如嫌疑犯识别[33],交叉视频的行人跟踪[38]和行人活动分析[23]。这个问题具有挑战性,因为人的姿势、摄像机的角度、光线和背景噪声等都会影响检测效果。所以近几年引起了研究者的广泛关注[4,19,21,24,35,43]

尽管已经提出了大量的行人重识别数据集和方法,但是还是很难应用到现实世界中。在大多数行人重识别[10,14,18,19,45]研究中,使用的数据集是手工标记的剪切过的图片(如图1a),在真实应用中,旨在从整个场景图片集中搜索到目标人物(如图1b),遵循这些基准的协议,大多数存在的行人重识别方法假设行人检测十分精确。然而这些手工裁剪的标注框在现实应用中是不存在的。现成的行人检测器不可避免的会造成错检、漏检、错位等问题,这些都会对行人检索的效果产生影响。

  1. 行人重识别:匹配手工剪裁的行人
  1. 行人检索:从整个场景图片中检索

图1 行人重识别和行人检索的比较

在2014年,Xu et al.[36]首次将行人检测和行人重识别结合起来,提出一种基于行人检测和人的匹配得分的滑动窗口方法来解决行人检索问题。但是手工设计特征和滑动窗口的自身存在的限制性因素越来越明显。

本文提出一个针对行人检索的新的深度学习框架,不同于传统的方法(将行人检索问题拆分为行人检测和行人重识别),我们将行人检测和行人重识别整个到单个卷积神经网络中。我们的CNN包括两个部分,给定整个图片集合作为输入,然后用行人候选网络来产生候选行人的标注框,接着将它们放到身份识别网络来提取特征,最后再和目标人物进行比较。行人候选网络和身份识别网络在整合优化中相互适应。例如,行人候选网络会更注重候选框的召回率(召回率高,那么假正例率也会变高)而不是精确率(精确率高那么假反例就会增多),因为这些假正例(非行人被误认为是行人的候选框)会在后面的特征匹配中被剔除掉。同时错位也能被接受,它们会在后面的身份识别网络中被调整。为了提高整个系统的可拓展性,受到近期目标检测[27]的启发,我们鼓励两个部分共享基本的卷积特征映射,加快推理过程。

传统的重识别特征学习主要采用pairwise或triplet损失函数[1,3,5,19]。然而它们都不是很有效,因为每次只有几个数据样本进行比较,并有O(N2)种输入组合,其中N代表图片数量,不同的抽样策略可能会显著影响收敛速率和质量,但随着N的增加,找到有效的采样策略变得更加困难。另一个方法是使用Softmax[35]损失函数对身份进行分类,这有效的同时将所有样本进行比较。但是随着训练类别的数量的增多,训练大的Softmax分类器矩阵变得慢很多甚至无法收敛。本文中,我们提出一种新颖的在线实例匹配损失函数来解决这些问题。我们维护所有标记身份的特征查询表,并比较小批量样本和所有注册表之间的距离。另一方面,许多未标记的身份可能出现在场景图像中,这可以作为标记身份的否定。因此我们利用循环队列来存储它们的特征以进行比较,这是行人检索设置带来的另外一个优点。在我们的试验中,所提出的无参数OIM损失函数比Softmax损失函数收敛得更快更好。

我们做了三方面工作。首先我们提出了一个新的深度学习框架,用于从整个场景图像库中搜索目标人物。我们不是简单的组合行人检测器和行人重识别方法,而是共同优化单个CNN中的两个目标,并且让它们更好的相互适应。其次,我们提出了一个在线实例匹配损失函数来更有效的学习识别特征,这使我们的框架可以扩展到具有多个身份的大型数据集。与快速推理速度相比,我们的框架更接近真实世界的应用程序需求。最后,我们收集并标注了一个用于行人检索的大规模基准数据集,涵盖了数百个场景街头和电影快照。数据集包含18184张图片,8432个识别框和96143个行人检测框。我们将我们的方法在此数据集上的训练效果和其他基准进行比较,验证了我们方法的有效性。数据集和代码公开,以便进一步研究。

相关工作

行人重识别。早期研究人员通过手动设计判别特征[12,34,42]、跨摄像头视角变换特征学习[25,26]和距离度量学习[11,22,24,26,46]来解决行人重识别问题。近年来,许多研究人员提出了各种基于深度学习的方法,联合处理所有方面的问题。Li et al.[19]和Ahmed et al.[1]等人针对行人重识别设计了特定的CNN模型。两个网络都使用了一对裁剪的行人图像作为输入,并采用二进制验证损失函数训练参数。Ding et al.[5] 和Cheng et al.[3]利用三重态样本训练CNN,以最小化同一个人之间的特征距离并最大化不同人之间的距离。除了使用成对或者三重损失函数,Xiao et al.[35]建议对身份进行分类来学习特征,结合多个数据集提出了一种主要域引导失活技术来提高特征学习效果。最近几年行人重识别的工作主要侧重于解决异常图像的处理,如低分辨率图像[20]、部分遮挡的图像[47]

在我们之前提交的arXiv的同时,Zheng et al.[44]也为行人检索提供了基准数据集。他们将行人重识别和行人检测分离开来,通过分数重新加权以解决问题。而在这项工作中,我们提出了一个深度学习框架来联合处理这两个方面的问题。

行人检测。DPM[7]、ACF[6]和Checkboards[41]是最常用的现成的行人检测器。他们依靠手动提取特征然后使用线性分类器来检测行人。近年来,基于CNN的行人检测器也得到了发展[37,40]。在文献[15]中,研究了各种因素,包括CNN模型结构,训练数据和不同的训练策略。Tian et al.[31]利用行人和场景属性标签采用多任务训练CNN行人检测器,Cai et al.[2]提出了一种用于学习CNN探测器的级联复杂性增强算法。

图2 本文提出的框架

方法

我们提出了一个新的深度学习框架,它共同处理单个卷积神经网络(CNN)中的行人检测和行人重识别,如图2所示,在给定整个场景的图像作为输入时,我们首先使用CNN将原始像素转化为卷积特征图,建立了一个行人区域建议网络来通过这些特征预测候选边界框,然后利用 Rol-Pooling[9]输入识别网来提取L2标准化的256维特征,在推理阶段,我们根据他们与目标人之间的距离对待检索的图片集中的行人特征进行排序。在训练阶段,我们提取在线实例匹配(OIM)损失函数,用于监督识别网络,以及用于以多任务方式训练建议网络的若干其它损失函数。下面我们将首先介绍CNN模型结构,然后详细说明OIM损失函数。

    1. 模型框架

我们采用ResNet-50[13]作为我们的基本CNN模型,它前面是一个卷积层(名为conv1),后面是四个块(名为conv2_x 到 conv5_x),每个包含3,4,6,3个剩余单元,我们利用conv1将conv4_3作为词干部分,给定输入图像,将产生1024个通道的特征图,其具有1/16个原始图像的分辨率。

在这些功能图之上,我们建立了一个行人区域建议网络来检测候选人,首先添加卷积层来转换行人特征,然后按照[27]在每个特征映射位置关联9个锚点框,并使用Softmax用于预测每个锚点框是否是行人的分类器,采用线性回归来调整其位置。我们将在非最大抑制之后保留前128个调整后的边界框作为我们的最终建议框。

为了在所有这些建议框中找到目标人物,我们建立了一个识别网络来提取每个建议框的特征,并与目标框进行比较。我们首先利用Rol-Pooling层[9]从每个建议框的词干特征映射到区域。然后他们通过ResNet-50中剩余的conv4_4到conv5_3,接着全局平均池化层来简化为2048维特征向量。一方面,由于行人建议框不可避免的包含了一些误检和错位,我们再次使用Softmax分类器和线性回归方法来筛掉非人建议框和改善位置精度,另一方面,我们将特征投影到L2标准化的256维子空间(id-feat)中,在推理的过程中,计算它们与目标人物之间的余弦相似度。在训练阶段,我们采用提出的OIM损失函数来监督id-feat。与其他用于检测的损失函数结合在一起,整个网络以多任务学习方式联合训练,而不是使用[27]中的可选择性优化。

    1. 在线实例匹配损失函数

建议框分为三种,分别为已标记的身份、未标记的身份和杂乱背景。假设训练集中有L个不同的目标行人,当建议框与目标行人匹配时,我们将其称为标记身份的实例,并相应的为其分配一个class-id(从1到L)。有很多正确预测的行人建议框,但是不属于任何目标行人。在这种情况下,我们将它们称之为未标记的身份。如图3,我们分别用蓝色和橙色边界框展示了标记和未标记身份的一些例子。其它建议框只是其它对象或背景区域的误报。在建议的损失函数中,我们只考虑标记和未标记的身份,同时保持其它建议不受影响。

图3 在线实例匹配

由于我们的目标是区分不同的人,因此自然的目标是尽量减少同一个人的实例之间的特征差异,同时最大化不同人之间的差异,为了实现这一目标,我们需要记住所有人的特征,这可以通过在所有的训练图像上向前进行前向网络来完成,但是当使用随机梯度下降(SGD)进行优化时这是不实际的。因此,在我们的方法中,我们使用在线近似来代替它。通过表示小批量内部的标记身份的特征,其中D表示特征维度,我们使用查找表(LUT)来存储所有标记身份的特征。如图3,在前向传播期间,我们通过计算小批量样本和所有标记身份之间的余弦相似性。在反向传播期间,如果目标class-id为t,那么我们将通过更新LUT的第t列,其中,然后缩放让其具有单元L2范数。

除了标记的身份之外,许多未标记的身份对学习特征表示也是有价值的,它们可以用作所有标记身份的否定类。我们使用循环队列来存储这些出现在最近的小批量中的未被标记的身份的特征,用表示这个循环队列中的特征,其中Q是队列的大小,我们也可以通过来计算它们与小批量样本的余弦相似性。同时弹出失效的特征向量以保持队列大小不变。

基于这两个数据结构,我们通过Softmax函数定义x被识别为具有class-id的标识的概率:

,(1)

其中较高的温度导致概率分布较软,同样,循环队列中被识别为第i个未标记的标识是:

,(2)

OIM的目标是最大化预期的对数似然:

(3)

并且其相对于x的梯度可以推导为:

(4)

可以看出,我们的OIM损失有效的进行了比较所有标记和未标记的小批量样本身份,使基础特征向量与目标相似,同时将其推离其它目标。

为什么不选择Softmax损失?为什么不使用Softmax损失预测class-id来学习传统的分类器矩阵?这是一个自然的问题。首先,大规模的行人检索数据集将具有大量的身份(我们的数据超过5000个训练集),而每个身份只有几个实例,每个图像只包含一些身份。我们需要学习超过5000个判别函数,但在每次SGD迭代期间,我们只有几十个类的正样本。即

资料编号:[4998]

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图