A Comprehensive Study on Cross-View Gait Based Human Identification with Deep CNNs

  • 摘要
  • Intro
  • Related Work
  • Method
    • Gait Recognition
    • Network Structure
    • Temporal Information
  • 实验
  • Discussion

论文信息:

作者:Zifeng Wu, Yongzhen Huang, Liang Wang, Xiaogang Wang, and Tieniu Tan

TPAMI 2017

这也是一篇较早将深度学习应用于步态识别的文章,结果上也有飞跃。


摘要

基于步态的行人识别:通过深度卷积神经网络学习相似性。通过一小组标记过的多角度行人走路视频,可以训练深度神经网络去识别不同的人最显著的步态模式的改变,从而识别出人的身份。

这是第一项将使用深度学习进行步态识别的工作。文章使用不同的预处理方法和网络结构基于不同场景(cross-view & cross-walking)提供了大量的实验评估。

这个方法首先在CASIA-B数据集进行评估,做了基于cross-view的步态识别,比之前最好的方法拥有很大的提升。这个方法表明在cross-view角度较大(不小于36°)时,平均识别率可以达到94.1%(之前的结果低于65%)。

之后把这个方法应用在OU-ISIR更大的步态数据集上去测试其泛化能力,OU-ISIR是当前文献中最大的步态识别数据集,有4007个主体。这个数据集在特定视角上的平均准确率超过了98%。cross-view场景下的识别准确率超过了91%。

此外,在USF步态数据集(户外场景的步态序列)上,也展现出了最好的效果。


Intro

步态识别最大的挑战是找到与行人识别无关的因素:

  • 与受试者相关的因素:步行速度、穿着、携带物品
  • 与设备相关的因素:帧速度、拍摄分辨率
  • 环境因素:照明条件、相机视角

最近,cross-view成为了视频相关任务的关键性问题,当视角改变时,有可能会导致类内之间的差别大于类间的差别。对于基于步态能量图(通过平均步态序列中对齐的人的轮廓)的步态识别方法也同样如此。

关于cross-view的步态识别大概可以被分为三类:

第一类是重建人体的3D结构,能够通过投影产生任意的2D视角,这类方法可以拥有非常好的前景,但他们通常需要多角度的相机视角和能够完全控制共合作的环境;

第二类是使用手工选择的多视角特征用于步态识别,这类方法通常在特定场景下有很好的表现,但通常难以泛化到别的场景。

第三类是学习cross-view投影,能够把步态特征从一个视角标准化到另一个视角,这样就可以从两个视频中对比归一化的步态特征去计算相似度。但这种方法是当cross-view的角度很小时可以,当角度增长到36°左右时,性能就会急剧下降。

步态有视频中的时间序列,这是与其它生物特征识别最大的不同。这里我们提出一个新的方法:通过cross-view的步态视频序列进行人的识别, 在某种意义上它利用了加标签的cross-view对(第三类方法)。这个方法是以一种端到端的方式直接预测已给的一对样本的相似度。 考虑到步态序列cross-view的多样性,步态识别应该会非常适合于非线性深度模型。

本文工作:

  • 提出基于CNN的步态识别方法,网络可以自动识别出步态特征中最有区分度的改变;
  • 在预处理方法和网络结构不同时在多种任务(cross-view & cross-walking-condition)上提供了丰富的评估;
  • 大幅提高了三个数据集(CASIA-B, OU-ISIR and USF)上的准确率。

Related Work

基于步态识别的近期文献大概可以被分为两类:一个是建模人体的底层结构,另一个是直接从视频中提取步态表示。这篇文章是基于后者的研究。


Method

Gait Recognition

  • 目标

    给予已有的步态样本组成的gallery,预测probe sample的身份。

    数学表示:给定一个probe sample x\mathbf xx 和 NgN_gNg​ 同属于一个gallery {(xi,yi=i)∣i=1,…,Ng}\{(\mathbf x_i,y_i=i)|i=1,…,N_g\}{(xi​,yi​=i)∣i=1,…,Ng​} ,人的身份 y(x)y(x)y(x) 需要被预测出来。

  • 这篇文章针对两种更难处理的情况:

    ①cross-view(视角不同);
    ②cross-walking-condition(给定的样本能量图行人有大衣或背包,而预测的能量图是正常的走路条件)

  • 基于能量图的步态识别的pipline:

    使用一些背景分离法从原始视频序列中提取轮廓序列;然后沿着时间序列将轮廓图进行对齐和平均以得到能量图;之后给定一个能量图和其它gallery中的能量图,计算两两之间的相似度(可以直接通过欧氏距离计算);最后得出给定能量图的身份,通常使用最近邻分类器。

Network Structure

整个网络结构可以被描述为如下公式:
si=η(ψ(ϕ(x),ϕ(xi)))s_i=\eta(\psi(\phi(\mathbf x),\phi(\mathbf x_i))) si​=η(ψ(ϕ(x),ϕ(xi​)))
x\mathbf xx 是给定样本能量图, xi\mathbf x_ixi​ 是其它的能量图集合,ϕ\phiϕ 把 x\mathbf xx 和 xi\mathbf x_ixi​ 投影到公共空间里,ψ\psiψ 有两个输入,可以是一个卷积层或者全连接层,η\etaη 为预测器,为二分类,包括一个全连接层和softmax层,这里事实上也可以堆叠更多的卷积层或者全连接层。

下图所示是文章所研究的三种网络结构,关键的区别在于从哪里开始匹配能量图对的特征,在底层还是顶层,是局部特征还是全局特征。

在整个网络里,所有的卷积核都是7*7大小,步幅为1;所有的空间池化都是2*2大小,步幅为2;所有的神经元都使用ReLU除了最后一层是softmax。

  • Matching Local Features at the Bottom Layer (LB)

    在计算能量图对的差别之前只用了线性层,是由最底层的16个卷积核实现的。对于两个输入,首先对两个输入的局部区域进行重新加权,再对加权后的结果求和。

    目的是基于cross-view的步态识别模拟线性归一化,几乎等价于intro中所述的第三类方法,但这里在做了matching之后还有两个卷积层,是为了从能量图对中学习更复杂的模式。

  • Matching Mid-Level Features at the Top Layer (MT)

    在计算差别之前经过了两个非线性通道。核心是用深层的非线性正则化的能量图对差别取代了LB中浅层的线性差别。这里的C3层并不是严格意义上的全局特征,而是中间层特征的相加。

    LB和MT的区别:LB是在底层有局部特征时直接计算权重差别,然后利用这个差别在后两个卷积层中学习模式;而MT是先学习中间层的特征,再计算差别。这两个网络的复杂度几乎是相同的,只是顺序不同。

  • Matching Global Features at the Top Layer (GT)

    能量图对通过学习到的全局特征来计算差别。相比于MT多了两个全连接层。F4和F4‘进行了参数共享。因为全连接层的关系,GT网络的复杂度要比前两种高很多,很有可能会因为数据量从而导致过拟合。但优点是网络很紧凑,可以提高计算效率。

    对于LB和MT,每次计算都需把一个probe和N个gallery通过整个网络,但这里GT可以提前存储所有gallery在F4’层的输出(为啥这儿能保存呢,我的理解是,神经网络在卷积层学到的模式是局部特征,而全连接层是全局特征,局部特征的学习到的模式可能对于gallery的每一个能量图对都有所不同,所以能够保存的只能是全局特征)

  • 此外还有一些更浅层的网络(更简单更局部的特征)和一些更深层的网络(更复杂更全局的特征):

Temporal Information

  1. 训练了一个叫做”双流网络“的东西:左边是和上文中和LB相同的结构与输入;而右侧输入是时序步态图像(CGI,通过颜色映射的方式携带时序信息),是处理视觉流相应的部分。

  2. 把视频的各个帧作为输入,并对输出进行平均,下图中的输入为9个帧,在第一层和第二层训练三维卷积网络,在C3和C3’层对计算出的网络特征做平均。


实验

(今天一个朋友说 调参调到宇宙尽头,精辟极了hh,调得越多考虑得越多实验就能看起来越完备…

A. 数据集:CASIA-B、OU-ISIR、USF

B. 训练细节:没有细看,大概有一些GEI、Mixed-GEI提取方法,logistic回归,训练集的样本划分,评估等。

C. 网络结构的影响:

  • 实验过程中GT过拟合较为严重(文中提到原因可能是数据过小)。但又想试试它在保存参数之后强大的计算效率,搞了一个Compact Mid-Level & Top (CMT),在卷积层中使用了更大的步幅。
  • 一些实验结果…

D. 网络稀疏程度的影响:稀疏可以改善MT网络性能,可能是通过抑制过拟合实现的。

E. 网络深度的影响:网络变深或者变浅都不能改善性能。

F. 输入能量图大小的影响:做了下采样的实验,结果差了一些,但不论怎么改变效果都比baseline好。所以如果想要高一点的计算效率,可以用下采样。

G. 输入的特征对模型的影响:为了评估混合能量图对齐的重要性,在混合之前移动了一些轮廓,发现CNN对此有很好的鲁棒性。

H. 数据增强:与没有经过数据增强的网络相比,结果变差了。

I. 时序信息的影响:“双流网络”的效果要更好一些。对于3D卷积层网络来说,当3D卷积层从0增加到2时,效果有明显的提高,并且3帧的输入效果更好。

之后是三个数据集上的对比效果。


Discussion

  1. 需要一个无需配合的步态识别数据集。
  2. 我们可以有更好的预处理,比如像素级标记、行人检测等等。

【论文阅读】A Comprehensive Study on Cross-View Gait Based Human Identification with Deep CNNs相关推荐

  1. 论文阅读——A Comprehensive Study on Deep Learning-Based 3D Hand Pose Estimation Methods综述阅读2

    3D手势姿态估计综述   本文通过对大量有代表性的论文研究,提出一种基于输入数据模式的新分类法,即RGB.深度或多模态信息.最后,我们展示了在最流行的RGB和基于深度的数据集上的结果,并讨论了这一快速 ...

  2. 论文阅读 [TPAMI-2022] On Learning Disentangled Representations for Gait Recognition

    论文阅读 [TPAMI-2022] On Learning Disentangled Representations for Gait Recognition 论文搜索(studyai.com) 搜索 ...

  3. 论文阅读:Saliency-Guided Region Proposal Network for CNN Based Object Detection

    论文阅读:Saliency-Guided Region Proposal Network for CNN Based Object Detection (1)Author (2)Abstract (3 ...

  4. 【论文阅读】Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs

    [论文阅读]Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs 1.摘要 2.通过ViTs审视CNN 3. ...

  5. 综述论文阅读”A comprehensive survey on graph neural networks“(TNNLS2020)

    论文标题 A comprehensive survey on graph neural networks 论文作者.链接 作者:Wu, Zonghan and Pan, Shirui and Chen ...

  6. 【论文阅读】(2009)A dynamic programming based heuristic for the assembly line balancing problem

    文章目录 一.摘要 二.SALBP-1 的模型和公式 2.1 SALBP-1 的公式 2.2 动态规划模型 2.2.1 构建状态空间的过程 2.2.2 最大站负荷规则 2.2.3 边界的使用 三.算法 ...

  7. ChatGPT 拓展资料:论文阅读A Comprehensive Survey on Pretrained Foundation Models: A History from BERT to Chat

    ChatGPT 拓展资料:A Comprehensive Survey on Pretrained Foundation Models: A History from BERT to ChatGPT ...

  8. 论文阅读:BEVSegFormer: Bird’s Eye View Semantic Segmentation FromArbitrary Camera Rigs

    题目:BEVSegFormer: Bird's Eye View Semantic Segmentation FromArbitrary Camera Rigs 中文:BEVSegFormer基于任意 ...

  9. 三维目标检测论文阅读:VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection

    VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection 理解了PointPillars这篇文章后,看这篇文章就清 ...

最新文章

  1. 如何在python中显示电脑中的图片-python在终端里面显示一张图片
  2. Python 3.x 引入了函数注释
  3. The 2016 ACM-ICPC Asia China-Final Contest Promblem D
  4. Nginx Rewrite规则初探
  5. linux 脚本学习--细节问题
  6. 友元关系可以继承_私生子也有继承权!非婚生子女的继承关系如何认定?
  7. 恒大汽车:仍在就出售新能源汽车生活项目等资产进行磋商
  8. Oracle透明网关 for SQL Server
  9. python3 print
  10. 雷电网络更新:迈向 Ithaca
  11. Android 实现禁用中文键盘
  12. linux查看指定目录下各个文件大小以及总体大小
  13. 静态网页如何上传附件
  14. 上海的大学计算机专业高考分数线公布,2020上海高考提前批分数线出炉,普通批分数线会涨?附2019高校普通批分数线...
  15. 嵌入式系统导论(彭蔓蔓等·人民邮电出版社)课后习题答案
  16. java循环队列入队出队算法_循环队列实现
  17. android 定时更新banner图片,Android 用banner简单实现图片无限循环
  18. PKI基础知识,及PKI流程
  19. 递增的三元子序列(来源力扣)
  20. 如何使用NE555产生方波

热门文章

  1. springboot学生信息管理的设计与实现毕业设计源码191219
  2. 打谱软件java版_finale打谱软件下载
  3. 如何通过储蓄USD获得100%+年化收益
  4. 关于金融区块链,这是我们和趣链科技的一场对谈
  5. STM32CubeMX——LED定时闪烁和输出PWM波
  6. 20194307肖江宇exp-1
  7. VMware虚拟机更改Mac系统的屏幕分辨率
  8. 2009年三季度上市公司报表4
  9. Springboot集成thymeleaf报此应用程序没有/error的显式映射,因此您将其视为回退。This application has no explicit mapping for /err
  10. PHP电商运费模板,电商系统设计之运费模板(下)