PTGAN:针对行人重识别的生成对抗网络 | PaperDaily #36

简介:

本文提出了一种针对于 ReID 的生成对抗网络 PTGAN,可以实现不同 ReID 数据集的行人图片迁移,在保证行人本体前景不变的情况下,将背景转换成期望的数据集 style。

另外本文还提出一个大型的 ReID 数据集 MSMT17,这个数据集包括多个时间段多个场景,包括室内和室外场景,是一个非常有挑战的数据集。

论文用 PTGAN 来缩小不同数据集间的 domain gap,并在新提出的 MSMT17 这个大数据集和其他一些公开的小数据集上做了实验。

MSMT17 数据集

MSMT17 是一个大型的 ReID 数据集,现在的一些公开数据集的准确度已经被刷得很高,这个数据集的提出进一步延续了 ReID 的发展。不过数据集目前还有公开,等待论文接收后数据集可以公开。 

MSMT17 数据集有以下几个特性: 

  • 数据采集时长约为 180 小时
  • 总共有 15 个相机,其中 12 个室外相机,3 个室内相机
  • 行人框由 Faster RCNN 机标完成
  • 最后总共有 4101 个行人的 126441 个 bounding boxes

5dad1e839a913ac11f9170aa070ba4b7e6d4d7e7

 MSMT17 数据集和已有 ReID 数据集的对比

da1263050b10e4a76d7fb3a1946fac0ac4bfc3dc

  MSMT17 数据集的图片和其他数据集的直观对比

PTGAN

Person Transfer GAN(PTGAN)是作者提出的一个针对于 ReID 问题的 GAN。这个 GAN 最大的特点就是在尽可能保证行人前景不变的前提下实现背景 domain 的迁移。 

首先 PTGAN 网络的损失函数包括两部分:

4391e1541a74a5891e8525a46490f560d36695ed

其中 LStyle 代表生成的风格损失,或者说 domain 损失,就是生成的图像是否像新的数据集风格。LID 代表生成图像的 ID 损失,就是生成的图像是否和原始图像是同一个人。λ1 是平衡两个损失的权重。下面的关键就是看这两个损失怎么定义。

首先 PTGAN 的基础是 CycleGAN,所以 loss 也和正常的 CycleGAN 的 loss 差不多。首先第一部分是 LStyle,这个就是标准的 CycleGAN 的判别 loss。

b1a9988b7fe26690078b1a80f5e13364bf987582

以上几部分都是正常的 CycleGAN 的损失,保证生成的图片和期望的数据集的 domain 是一样的。 

论文的另外一个改进的地方就是 LID。为了保证图片迁移过程中前景不变,先用 PSPNet 对图片进行了一个前景分割,得到一个 mask 区域。

传统的 CycleGAN 并不是用于 ReID 任务,因此也不需要保证前景物体的 ID 信息不变,这样的结果就是前景可能模糊之类的质量很差,更糟糕的现象是行人的外观可能改变,比如衣服颜色发生了改变,这是 ReID 任务非常不希望见到的。

为了解决这个问题,论文提出 LID 损失,用 PSPNet 提取的前景,这个前景就是一个 mask,最后 ID 损失为:

a96128a845386fdc87d1e660da647465ba1e76c1

其中 M(a) 和 M(b) 是两个分割出来的前景 mask,ID loss 将会约束行人前景在迁移过程中尽可能的保持不变。最后转换的效果如下图所示:

a7fb4a9fcc3547f629bb58bda2690ab71b20242f

可以看出,直观上和传统的 CycleGAN 相比能够更好的保证行人的 ID 信息。

结果

bfdfa5786984e8b1cf0fb8fc5fe933e00b947365

实验结果如上表,虽然论文没有用特别复杂的网络来训练,但是将另外一个数据集通过 PTGAN 迁移到 MSMT 上都能增加 MSMT17 数据集上的 performance。并且从准确度上看 MSMT17 还是一个非常难的数据集。


原文发布时间为:2018-01-22

本文作者:罗浩

本文来自云栖社区合作伙伴“PaperWeekly”,了解相关信息可以关注“PaperWeekly”微信公众号

相关文章
|
8月前
|
机器学习/深度学习 编解码 算法
检测并消除瑕疵,DeSRA让真实场景超分中的GAN更加完美
检测并消除瑕疵,DeSRA让真实场景超分中的GAN更加完美
293 0
|
11月前
|
机器学习/深度学习 传感器 算法
【图像检测-车辆检测】基于YOLO实现车辆目标检测附matlab代码
【图像检测-车辆检测】基于YOLO实现车辆目标检测附matlab代码
|
11月前
|
机器学习/深度学习 计算机视觉 Python
实时交通标志检测和分类(附代码)
实时交通标志检测和分类(附代码)
134 0
|
12月前
|
机器学习/深度学习 传感器 算法
【交通标志识别】基于RCNN实现交通标志识别附matlab代码
【交通标志识别】基于RCNN实现交通标志识别附matlab代码
|
开发工具 计算机视觉 git
yolov5_reid【附代码,行人重识别,可做跨视频人员检测】
该项目利用yolov5+reid实现的行人重识别功能,可做跨视频人员检测。 应用场景: 可根据行人的穿着、体貌等特征在视频中进行检索,可以把这个人在各个不同摄像头出现时检测出来。可应用于犯罪嫌疑人检索、寻找走失儿童等。
487 0
|
机器学习/深度学习 传感器 文字识别
【图像检测】基于计算机实现交通标志图像检测提取附matlab代码和报告
【图像检测】基于计算机实现交通标志图像检测提取附matlab代码和报告
|
机器学习/深度学习 人工智能 自然语言处理
一文尽览 | 首篇Transformer在3D点云中的应用综述(检测/跟踪/分割/降噪/补全)(下)
Transformer 一直是自然语言处理 (NLP) 和计算机视觉 (CV) 的核心。NLP 和 CV 的巨大成功激发了研究者对 Transformer 在点云处理中的使用的探索。但是,Transformer如何应对点云的不规则性和无序性?
一文尽览 | 首篇Transformer在3D点云中的应用综述(检测/跟踪/分割/降噪/补全)(下)
|
机器学习/深度学习 传感器 算法
【交通标志识别】基于BP神经网络实现交通标志识别系统(含语音报警)附matlab代码
【交通标志识别】基于BP神经网络实现交通标志识别系统(含语音报警)附matlab代码
|
机器学习/深度学习 传感器 算法
【图像检测-显著性检测】基于蚁群算法优化图像视觉显着性检测附matlab代码
【图像检测-显著性检测】基于蚁群算法优化图像视觉显着性检测附matlab代码

热门文章

最新文章