[论文阅读] Beyond part models: Person retrieval with refined part pooling
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(P_i|f)=softmax(W_i^Tf)=\frac{exp(W_i^Tf)}{\sum_{j=1}^pexp(W_j^Tf)}
每个part P的则被重新划分。
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相关推荐
- [论文笔记]Beyond Part Models: Person Retrieval with Refined Part Pooling(PCB)
Beyond Part Models: Person Retrieval with Refined Part Pooling(阅读) 几个关于这篇文章的博客 http://www.mclover.cn ...
- 【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 ...
- 行人重识别论文(五)Beyond Part Models: Person Retrieval with Refined Part Pooling
论文地址 代码实现:Pytorch 摘要 作者主要的目标是学习描述局部信息特征.并且做出了以下两点贡献: 1. 提出了 Part-based ConvolutionalBaseline (PCB),给 ...
- 论文阅读:Pre-trained Models for Natural Language Processing: A Survey 综述:自然语言处理的预训练模型
Pre-trained Models for Natural Language Processing: A Survey 综述:自然语言处理的预训练模型 目录 Pre-trained Models f ...
- 论文阅读之 Diffusion Models Beat GANs on Image Synthesis
扩散首次打败gan 来源 OpenAI 无条件图像合成 条件图像合成 背景 目标函数和参数化方式的来源 Alex Nichol and Prafulla Dhariwal. Improved deno ...
- 【论文阅读】Diffusion Models for Imperceptible and Transferable Adversarial Attack
论文地址:https://arxiv.org/abs/2305.08192 代码地址:https://github.com/WindVChen/DiffAttack 目录 Abstract Intro ...
- 行人重识别论文阅读(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. ...
- SimCLR v2 论文阅读
SimCLR v2 论文阅读 Big Self-Supervised Models are Strong Semi-Supervised Learners 前言:这篇文章通过把NLP领域上的 大规模数 ...
- 论文阅读: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 ...
- 论文阅读: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 ...
最新文章
- DAC7612的使用
- vbs修改office设置_E002 Ruby 写入数据 【 =gt; Office 】
- 离散对数(Baby Step Giant Step)
- 蓝牙打印和网口打印的实现
- mysql gtid配置_mysql 5.7 GTID主从配置
- 错误:'BasicLSTMCell' object has no attribute '_kernel'
- Emmet 简写语法
- 湖北省软件行业协会会员单位全名录(2014年的信息)
- 史上最著名的电脑病毒
- matlab2016以上进行多体动力学不能用joint actuator驱动旋转关节,要用simulink-PS converter
- ps里面怎么插入流程图_教你如何正确画工艺流程图
- 破解闪讯,让你的笔记本变成wifi基站
- python做正态分布的例子_python 绘制正态曲线的示例
- 2016年轻人消费洞察
- UVA - 10041 Vito's Family (中位数)
- 阿里云的核心技术要点
- Oauth2 存储 token 到Redis 报错:READONLY You can‘t write against a read only slave
- 2022帆软BI数据分析大赛他来了!
- [问题/解决]Could not chdir to home directory /home/zwj: Permission denied
- java使用代理ip爬取网站内容
热门文章
- CentOS7精简版基本配置
- gz是什么意思饭圈_网络语BE是什么意思 饭圈用GE含义出处是哪里还有哪些类似表达...
- ArcGIS基础:面数据空洞填充的方法
- 电脑待办事项桌面_电脑上有没有治拖延症的软件?怎么在办公电脑上添加一款提醒便签软件...
- Win7+Ubuntu 16.04LTS 双系统安装
- java程序员怎么创建自己的网站:第一章:总体流程,我崩溃了
- hadoop是什么?
- 开放式经济系统设计[转载]
- Java 程序员月薪3.8万,需要技术达到什么水平?
- 程序员月薪过3万,却感叹活得不如狗,北漂压力太大又不敢辞职