Beyond part models: Person retrieval with refined part pooling

Introduction

在行人重识别这个问题上,从人的不同身体部位提取得到的特征比全局特征更加精细,这些细粒度的特征对于行人的判断往往是更具决定性的。有的方法采用已有的人体姿态估计的方法,识别出人的部位,进而去分别提取特征。 虽然这样的行人分割特征提取方法可行,但是效用并不高。首先是由于两个任务的数据集是不同的,也就意味着人体姿态估计的泛化效果未必理想。所以,构建一个这样的数据库(既有行人id,又有行人关节点)还是很有意义的一项工作。所以在目前的一些工作来看,一种水平分割的方式得到的结果更加优异。

本文展示了一种分割的baseline,即统一将人水平分割成6部分;并且针对这样统一的分割方式,采用一种refined part pooling 的方式优化每一部分,使每一部分之内更加相似,保证一致性,排除离群点。

算法介绍

基本框架

下图是模型的基本框架:

首先输入图片(规定的大小为384*128,长宽比3:1)经过一个backbone network提取特征。这个backbone network可以是Google Inception或者ResNet,得到一个C*M*N(2048*24*8)的特征图。将特征图水平分为6块,也就是每块4*8,对每一块单独进行average pooling,得到g,再通过一个核为1的全卷积层,将特征降维成256维,得到h,分别用这6组特征进行分类。

以上的算法流程有两个变体,一是对6组h特征取平均,再进行分类,二是六个分类器一同优化,分享参数。但这两个变体的效果都不佳。另外使用高维的g特征去分类比低维的h特征效果好一点,但计算成本更高。

上述基本流程,在Market-1501数据集上rank-1为92.3%(g)和92.4%(h)。而加上RPP的优化提高了1.5%和0.7%的,感觉优化地并无多大差。但是mAP从77.3%提升到81.6%,有了一个较大的提升。

Refined Part Pooling

在计算出g之后,作者计算了下每个g和得到g的各个区域的f的距离,观察是否每个g只和他们各自区域内的f相似。发现并不然。下图可以看出,每个区域内都有一定的离群点。这些离群点表示这个f和另一个区域更相似。部位划分不应该是个“hard”的,而是边界曲折的。

所以可以计算出每个f得到其属于part P的概率。

P(Pi|f)=softmax(WTif)=exp(WTif)∑pj=1exp(WTjf)P(Pi|f)=softmax(WiTf)=exp(WiTf)∑j=1pexp(WjTf)

P(P_i|f)=softmax(W_i^Tf)=\frac{exp(W_i^Tf)}{\sum_{j=1}^pexp(W_j^Tf)}

每个part P的则被重新划分。

Pi={P(Pi|×f)f,∀f∈F}Pi={P(Pi|×f)f,∀f∈F}

P_i=\{P(P_i|\times f)f,\forall f \in F\}

在原来算法流程的基础上加上了part classifier模块。

训练

这个模块的训练如下:

先训练一个基本的PCB模型,将其他参数固定,加入part classifier模块训练,单独训练这个模块的参数,模型收敛后,再将所有的参数一起训练。

总结

由于人体基本直立的经验先验,水平分割是可行的,但是是基于两个图片中的人对齐的前提。本文对于单个人的部位分割是有较好的约束的,即不必使用其他算法来进行精准的分割。由于检测人体的问题,人体对不齐,则分割后提取的特征不能对应,所以可以进一步思考一下人体对齐的问题。

[论文阅读] Beyond part models: Person retrieval with refined part pooling相关推荐

  1. [论文笔记]Beyond Part Models: Person Retrieval with Refined Part Pooling(PCB)

    Beyond Part Models: Person Retrieval with Refined Part Pooling(阅读) 几个关于这篇文章的博客 http://www.mclover.cn ...

  2. 【ReID】Beyond Part Models: Person Retrieval with Refined Part Pooling (and A Strong Convolutional...

    [ReID]Beyond Part Models: Person Retrieval with Refined Part Pooling (and A Strong Convolutional Bas ...

  3. 行人重识别论文(五)Beyond Part Models: Person Retrieval with Refined Part Pooling

    论文地址 代码实现:Pytorch 摘要 作者主要的目标是学习描述局部信息特征.并且做出了以下两点贡献: 1. 提出了 Part-based ConvolutionalBaseline (PCB),给 ...

  4. 论文阅读:Pre-trained Models for Natural Language Processing: A Survey 综述:自然语言处理的预训练模型

    Pre-trained Models for Natural Language Processing: A Survey 综述:自然语言处理的预训练模型 目录 Pre-trained Models f ...

  5. 论文阅读之 Diffusion Models Beat GANs on Image Synthesis

    扩散首次打败gan 来源 OpenAI 无条件图像合成 条件图像合成 背景 目标函数和参数化方式的来源 Alex Nichol and Prafulla Dhariwal. Improved deno ...

  6. 【论文阅读】Diffusion Models for Imperceptible and Transferable Adversarial Attack

    论文地址:https://arxiv.org/abs/2305.08192 代码地址:https://github.com/WindVChen/DiffAttack 目录 Abstract Intro ...

  7. 行人重识别论文阅读(2021.7.3-7.11)

    一 各种方法性能比较 Method Key Market  r1 Market mAP Duke r1 Duke mAP (1)BOT global+BNNeck 94.5 84.5 86.4 76. ...

  8. SimCLR v2 论文阅读

    SimCLR v2 论文阅读 Big Self-Supervised Models are Strong Semi-Supervised Learners 前言:这篇文章通过把NLP领域上的 大规模数 ...

  9. 论文阅读:Can Generative Pre-trained Language Models Serve As Knowledge Bases for Closed-book QA

    论文阅读:Can Generative Pre-trained Language Models Serve As Knowledge Bases for Closed-book QA 来源:ACL 2 ...

  10. 论文阅读:In the Eye of the Beholder: A Survey of Models for Eyes and Gaze

    In the Eye of the Beholder: A Survey of Models for Eyes and Gaze 第二篇EGT的论文阅读,同样是review性质的一篇论文 In the ...

最新文章

  1. DAC7612的使用
  2. vbs修改office设置_E002 Ruby 写入数据 【 =gt; Office 】
  3. 离散对数(Baby Step Giant Step)
  4. 蓝牙打印和网口打印的实现
  5. mysql gtid配置_mysql 5.7 GTID主从配置
  6. 错误:'BasicLSTMCell' object has no attribute '_kernel'
  7. Emmet 简写语法
  8. 湖北省软件行业协会会员单位全名录(2014年的信息)
  9. 史上最著名的电脑病毒
  10. matlab2016以上进行多体动力学不能用joint actuator驱动旋转关节,要用simulink-PS converter
  11. ps里面怎么插入流程图_教你如何正确画工艺流程图
  12. 破解闪讯,让你的笔记本变成wifi基站
  13. python做正态分布的例子_python 绘制正态曲线的示例
  14. 2016年轻人消费洞察
  15. UVA - 10041 Vito's Family (中位数)
  16. 阿里云的核心技术要点
  17. Oauth2 存储 token 到Redis 报错:READONLY You can‘t write against a read only slave
  18. 2022帆软BI数据分析大赛他来了!
  19. [问题/解决]Could not chdir to home directory /home/zwj: Permission denied
  20. java使用代理ip爬取网站内容

热门文章

  1. CentOS7精简版基本配置
  2. gz是什么意思饭圈_网络语BE是什么意思 饭圈用GE含义出处是哪里还有哪些类似表达...
  3. ArcGIS基础:面数据空洞填充的方法
  4. 电脑待办事项桌面_电脑上有没有治拖延症的软件?怎么在办公电脑上添加一款提醒便签软件...
  5. Win7+Ubuntu 16.04LTS 双系统安装
  6. java程序员怎么创建自己的网站:第一章:总体流程,我崩溃了
  7. hadoop是什么?
  8. 开放式经济系统设计[转载]
  9. Java 程序员月薪3.8万,需要技术达到什么水平?
  10. 程序员月薪过3万,却感叹活得不如狗,北漂压力太大又不敢辞职