Introduction

(1)Motivation:

当前采用CNN-RNN模型解决行人重识别问题仅仅提取单一视频序列的特征表示,而没有把视频序列匹配间的影响考虑在内,即在比较不同人的时候,根据不同的行人关注不同的部位,如下图:

(2)Contribution:

将注意力模型考虑进行人重识别中,提出了时空联合注意力池化网络(jointly Attentive Spatial-Temporal Pooling Networks,ASTPN).

The Proposed Model Architecture

(1)简述:

建立了时空注意力网络(a recurrent-convolutional network with jointly attentive spatial-temporal pooling,ASTPN),其工作原理是:将一对视频序列传入孪生神经网络,获得两者的特征表示,并生成它们的欧几里德距离。如图所示,每个输入(包含光流的视频帧)通过CNN网络,并从最后一个卷积层中提取出特征映射。然后将这些特征映射输入到空间池层中,每一个时间步获得一个图像表示。然后,我们把时间信息考虑在内,利用循环神经网络生成视频序列的特征集。最后,由循环神经网络产生的所有时间步被注意力时间池结合起来,形成序列特征表示。

(2)卷积层:

输入:网络的输入由三个彩色通道和两个光流组成。颜色通道提供服装和背景等空间信息,而光流通道提供时间运动信息。给定输入序列 v = {v1, …, vT},我们利用下表所示的卷积网络获得特征映射集 C = {C1,…,CT}。然后将每个 CiRc×w×h 输入空间池化层,得到图像级表示 ri

(3)空间池化层(Spatial Pooling Layer):

使用空间金字塔池化(SPP)层来组成空间注意力池,具体如下:

假设池化核大小集为{(mwj, mhj)| j = 1, …, n},则确定第 个池化核窗口大小:

第 个池化步长为:

然后通过公式得到结果向量 ri

其中 f表示采用窗口大小 win 和步长 str 的最大池化函数。f表示重构函数,将矩阵重构成一个向量。除此之外,⊕ 表示向量连接操作。

令一个序列表示为r = {riRL | i = 1, …, T},其中:

(4)注意力时间池化层(Attentive Temporal Pooling Layer)

将上一层得到的 r 输入到循环神经网络提取时间步信息,循环层可以计算表示为:

其中 st-1R是包含上一时间步信息的隐藏层结点,o是时间t的输出。全连接权重 U∈RL*N 将循环层输入 r从 R映射到 RN,全连接权重 WRN*N 将隐藏层结点 st-1 从 R映射到 R。注意到循环层通过矩阵U将特征向量嵌入到低维特征中。在第一个时间步中,隐藏层结点被初始化为0,隐藏层通过tanh函数激活传递。

定义矩阵 PRT*N 和 GRT*N,其第 行分别表示检测数据和对照数据在循环网络的第 个时间步的输出,我们计算注意力矩阵 ART*T

其中 URN*N 是网络学习的信息分享感知矩阵。

之后,对 分别应用列最大池化和行最大池化来获得时间权重向量 tpR和 tgRTt的第 个元素表示探测序列中第 i 帧的重要得分,t同理。再对时间权重向量 t和 t应用softmax函数,来生成注意力向量 apR和 agRTa的第 个元素可以计算为:

最后,应用 P和 apa之间的点乘来获得序列级表示 vpR和 vgRN,分别计算为:

(5)损失函数:思想与上篇论文类似【传送门

孪生神经网络的铰链损失:

将识别身份的损失考虑在内,训练目标为:

Experimental Results

(1)实验设置:

① 数据集:iLIDS-VID、PRID-2011、MARS

② 参数设置:截取的帧数 k = 18,孪生代价函数的边距 m = 3,特征空间维数为128,初始学习率0.001,批量设置为1.

③ 对比方法:RNN-CNN、RFA、VR、AFDA

(2)预处理:

① 裁剪、镜像来增强数据,裁剪后的子图像的宽度和长度都比原图像小8个像素,在整个序列随机使用镜像操作,概率 p=0.5。

② 将图像精确地转换为YUV颜色空间,并将每个颜色通道归一化为零均值和单位方差;使用Lucas-Kanade方法在每对相邻图像之间提取垂直和水平的光流,然后提取光流通道正规化为[-1, 1]

(3)实验结果:

① 与对比方法比较:

② 在MARS数据集上结果:

③ 不同池化策略的比较:

④ 交叉数据集上测试结果:

在ILIDS-VID数据集上进行训练,然后在PRID-2011数据集上进行测试。

论文阅读笔记(十一)【ICCV2017】:Jointly Attentive Spatial-Temporal Pooling Networks for Video-based Person Re-Identification的更多相关文章

  1. 论文阅读笔记二十五:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition(SPPNet CVPR2014)

    论文源址:https://arxiv.org/abs/1406.4729 tensorflow相关代码:https://github.com/peace195/sppnet 摘要 深度卷积网络需要输入 ...

  2. 论文阅读笔记十一:Rethinking Atrous Convolution for Semantic Image Segmentation(DeepLabv3)(CVPR2017)

    论文链接:https://blog.csdn.net/qq_34889607/article/details/8053642 摘要 该文重新窥探空洞卷积的神秘,在语义分割领域,空洞卷积是调整卷积核感受 ...

  3. 论文阅读 A Data-Driven Graph Generative Model for Temporal Interaction Networks

    13 A Data-Driven Graph Generative Model for Temporal Interaction Networks link:https://scholar.googl ...

  4. 论文阅读笔记十七:RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation(CVPR2017)

    论文源址:https://arxiv.org/abs/1611.06612 tensorflow代码:https://github.com/eragonruan/refinenet-image-seg ...

  5. 论文阅读笔记: Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks

    论文概况 Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks是处理比较两个句子相似度的问题, ...

  6. 论文阅读笔记二-ImageNet Classification with Deep Convolutional Neural Networks

    分类的数据大小:1.2million 张,包括1000个类别. 网络结构:60million个参数,650,000个神经元.网络由5层卷积层,其中由最大值池化层和三个1000输出的(与图片的类别数相同 ...

  7. 论文阅读笔记(十)【CVPR2016】:Recurrent Convolutional Network for Video-based Person Re-Identification

    Introduction 该文章首次采用深度学习方法来解决基于视频的行人重识别,创新点:提出了一个新的循环神经网络架构(recurrent DNN architecture),通过使用Siamese网 ...

  8. 论文阅读笔记(二十一)【CVPR2017】:Deep Spatial-Temporal Fusion Network for Video-Based Person Re-Identification

    Introduction (1)Motivation: 当前CNN无法提取图像序列的关系特征:RNN较为忽视视频序列前期的帧信息,也缺乏对于步态等具体信息的提取:Siamese损失和Triplet损失 ...

  9. 论文阅读笔记(十八)【ITIP2019】:Dynamic Graph Co-Matching for Unsupervised Video-Based Person Re-Identification

    论文阅读笔记(十七)ICCV2017的扩刊(会议论文[传送门]) 改进部分: (1)惩罚函数:原本由两部分组成的惩罚函数,改为只包含 Sequence Cost 函数: (2)对重新权重改进: ① P ...

  10. 论文阅读笔记 - YARN : Architecture of Next Generation Apache Hadoop MapReduceFramework

    作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...

随机推荐

  1. UNIX读书笔记----UNIX基础知识

    UNIX体系结构: 从严格意义上讲,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.我们通常将这种软件称为内核(Kernel),因为他相对较小,而且位于环境的核心.图片显示了UNI ...

  2. javascript Date对象 js全部的 时间属性 和 方法

    Date() 返回当日的日期和时间. getTime() 返回 1970 年 1 月 1 日至今的毫秒数. getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31).天 getDa ...

  3. pytorch -- CNN 文本分类 -- 《 Convolutional Neural Networks for Sentence Classification》

    论文  < Convolutional Neural Networks for Sentence Classification>通过CNN实现了文本分类. 论文地址: 666666 模型图 ...

  4. 领域驱动设计(DDD)实践之路(一)

    本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/gk-Hb84Dt7JqBRVkMqM7Eg  作者:张文博 领域驱动设计(Domain Dr ...

  5. pymongo(看后转载,在原基础上添加了类连接和简单调用)

    一.MongoDB 数据库操作 1. 连接数据库 import pymongo conn = pymongo.Connection() # 连接本机数据库 # conn = pymongo.Conne ...

  6. textarea 标签

    textarea 标签 -- 代表HTML表单多行输入域 textarea标签是成对出现的,以<textarea>开始,以</textarea>结束 属性: Common -- ...

  7. 基于 HTML5 和 Canvas 实现的 3D 垃圾分类系统

    前言 垃圾分类,一般是指按一定规定或标准将垃圾分类储存.分类投放和分类搬运,从而转变成公共资源的一系列活动的总称.分类的目的是提高垃圾的资源价值和经济价值,力争物尽其用.垃圾在分类储存阶段属于公众的私 ...

  8. 14.git的安装使用

    目录 一.版本控制器 二.git 简介 git与svn比较 git的工作流程 版本库间的通信 git分支管理 三.git使用 流程(核心总结) 安装 基础命令 将已有的文件夹 - 初始化为git仓库 ...

  9. 0x01 C语言-编写第一个hello world

    学习每一个编程语言都是从 "Hello world!" 开始的,这好像就是编程界一条不成文的规定一样. 在这篇文章中,我将教大家编写一个可以输出 "Hello world ...

  10. kthrotlds(WatchDogs变种)查杀方法

    病毒现象 服务器出现卡顿.CPU飙升 以下为WatchDogs的判断方式及其命令:存在恶意进程watchdogs: ps -ef | grep watchdogs存在恶意进程ksoftirqds: p ...