目录
HigherHRNet(CVPR2020,MSRA微软亚洲研究院,bottom-up)
DarkPose(CVPR2020,2nd place entry of COCO Keypoints Challenge ICCV 2019,电子科大)
MSPN(CVPR2019,Face++,COCO2018关键点检测冠军)
SimpleBaselines(ECCV2018,MSRA)
CPN(CVPR2018,Face++,COCO2017关键点检测冠军)
3d_pose_baseline_pytorch(2018, ICCV2017)
RMPE、AlphaPose(ICCV2017,MVIG-SJTU)
OpenPose(CVPR2017、CMU、bottom-up)
Towards 3D Human Pose Estimation in the Wild: a Weakly-supervised Approach(ICCV2017、复旦)
Towards Accurate Multi-person Pose Estimation in the Wild(CVPR2017)
Realtime Multi-Person(CVPR2017,COCO2016关键点检测冠军)
pytorch_Realtime_Multi-Person_Pose_Estimation(参考上)
****https://github.com/cbsudux/awesome-human-pose-estimation/blob/master/README.md****
2020
HigherHRNet(CVPR2020,MSRA微软亚洲研究院,bottom-up)
HigherHRNet: Scale-Aware Representation Learning for Bottom-Up Human Pose Estimation
github:https://github.com/HRNet/HigherHRNet-Human-Pose-Estimation
文章介绍:1> A very nice blog
DarkPose(CVPR2020,2nd place entry of COCO Keypoints Challenge ICCV 2019,电子科大)
Distribution-Aware Coordinate Representation for Human Pose Estimation
主页:https://ilovepose.github.io/coco/
github:https://github.com/ilovepose/DarkPose(2020.6.17)
2019
HRNet(CVPR2019,MSRA微软亚洲研究院)
Deep High-Resolution Representation Learning for Human Pose Estimation
HRNet用于2D关键点检测,但其实HRNet本身是backbone和neck的创新(类似于VGG,ResNet等),作者也把HRNet应用到了识别、检测、分割、关键点等多项任务中,取得了很好的效果。HRNet的体系结构。它由并行的高到低分辨率子网组成,并在多分辨率子网之间进行重复的信息交换(多尺度融合)。即模型是通过在高分辨率特征图主网络中逐渐并行的加入低分辨率特征图子网络,不同网络实现多尺度融合与特征提取实现的。
github:https://github.com/leoxiaobin/deep-high-resolution-net.pytorch
文章介绍:1>https://jingdongwang2017.github.io/Projects/HRNet/index.html
翻译:https://zhuanlan.zhihu.com/p/102494979
MSPN(CVPR2019,Face++,COCO2018关键点检测冠军)
Rethinking on Multi-Stage Networks for Human Pose Estimation
提出了多阶段姿态估计网络(MSPN)有三个新的技术。首先,当前多阶段方法中的单级模块远非最优。例如,沙漏在所有块中使用相等宽度的通道用于向下和向下提取。这种设计与当前网络架构设计(ResNet)不一致。作者发现采用现有良好的网络结构进行下采样路径和简单的上采样路径要好很多。其次,由于重复的向下和向上采样步骤,信息更容易丢失,优化变得更加困难。作者建议在不同阶段汇总特征以加强信息流动并减轻培训的难度。最后,观察姿势定位精度逐渐提高。在多阶段,作者采取粗到细的多监督方式。
github:https://github.com/megvii-detection/MSPN
作者解读:1>https://zhuanlan.zhihu.com/p/54357376
2>https://m.sohu.com/a/345995744_99979179
2018
Lightweight OpenPose(2018)
Real-time 2D Multi-Person Pose Estimation on CPU: Lightweight OpenPose
github:https://github.com/Daniil-Osokin/lightweight-human-pose-estimation.pytorch
SimpleBaselines(ECCV2018,MSRA)
Simple Baselines for Human Pose Estimation and Tracking
github:https://github.com/Microsoft/human-pose-estimation.pytorch
PyTorch-Pose(参考上,单人)
github:https://github.com/bearpaw/pytorch-pose
CPN(CVPR2018,Face++,COCO2017关键点检测冠军)
Cascaded Pyramid Network for Multi-Person Pose Estimation
github:https://github.com/chenyilun95/tf-cpn
3d_pose_baseline_pytorch(2018, ICCV2017)
A simple yet effective baseline for 3d human pose estimation
github:https://github.com/weigq/3d_pose_baseline_pytorch
LSTM Pose Machines(CVPR2018)
github:https://github.com/lawy623/LSTM_Pose_Machines
2017
RMPE、AlphaPose(ICCV2017,MVIG-SJTU)
RMPE: Regional Multi-person Pose Estimation
本论文主要考虑的是自上而下的关键点检测算法在目标检测产生Proposals的过程中,可能会出现检测框定位误差、对同一个物体重复检测等问题。检测框定位误差,会出现裁剪出来的区域没有包含整个人活着目标人体在框内的比例较小,造成接下来的单人人体骨骼关键点检测错误;对同一个物体重复检测,虽然目标人体是一样的,但是由于裁剪区域的差异可能会造成对同一个人会生成不同的关键点定位结果。本文提出了一种方法来解决目标检测产生的Proposals所存在的问题,即通过空间变换网络将同一个人体的产生的不同裁剪区 (Proposals)都变换到一个较好的结果,如人体在裁剪区域的正中央,这样就不会产生对于一个人体的产生的不同Proposals有不同关键点检测效果。
github:1>https://github.com/MVIG-SJTU/AlphaPose
2>https://github.com/MVIG-SJTU/AlphaPose/tree/pytorch
3>https://github.com/Fang-Haoshu/RMPE
OpenPose(CVPR2017、CMU、bottom-up)
Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
github:1>https://github.com/CMU-Perceptual-Computing-Lab/openpose
2>https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
总结:https://zhuanlan.zhihu.com/p/102472863
Towards 3D Human Pose Estimation in the Wild: a Weakly-supervised Approach(ICCV2017、复旦)
https://arxiv.org/abs/1704.02447
github:https://github.com/xingyizhou/Pytorch-pose-hg-3d
Towards Accurate Multi-person Pose Estimation in the Wild(CVPR2017)
Towards Accurate Multi-person Pose Estimation in the Wild
github:https://github.com/hackiey/keypoints
Realtime Multi-Person(CVPR2017,COCO2016关键点检测冠军)
Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
github:https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
pytorch_Realtime_Multi-Person_Pose_Estimation(参考上)
github:https://github.com/tensorboy/pytorch_Realtime_Multi-Person_Pose_Estimation
2016
CPM(CVPR2016、CMU)
本论文将深度学习应用于人体姿态分析,同时用卷积图层表达纹理信息和空间信息。在2016年的MPII榜单中名列前茅。主要网络结构分为多个stage,各个阶段都有监督训练,避免过深网络难以优化的问题。通过改变卷积核大小来得到多个尺度输入的特征和响应,既能确保精度,又考虑了各个部件之间的远距离关系。其中第一个stage会产生初步的关键点的检测效果,接下来的几个stage均以前一个stage的预测输出和从原图提取的特征作为输入,进一步提高关键点的检测效果。
github:1>https://github.com/timctho/convolutional-pose-machines-tensorflow
2>https://github.com/JindongJiang/WeightedLoss_Convolutional_Pose_Machines_PyTorch
翻译:https://zhuanlan.zhihu.com/p/102468356
Hourglass(CVPR2016、密歇根大学)
Stacked Hourglass Networks for Human Pose Estimation
Hourglass模块设计的初衷就是为了捕捉每个尺度下的信息,因为捕捉像脸,手这些部分的时候需要局部的特征,而最后对人体姿态进行预测的时候又需要整体的信息。为了捕获图片在多个尺度下的特征,通常的做法是使用多个pipeline分别单独处理不同尺度下的信息,然后再网络的后面部分再组合这些特征,而作者使用的方法就是用带有skip layers的单个pipeline来保存每个尺度下的空间信息。
在Hourglass模块中,卷积和max pooling被用来将特征降到一个很低的分辨率,在每一个max pooling步骤中,网络产生分支并在原来提前池化的分辨率下使用更多的卷积,当到达最低的分辨率的时候,网络开始upsample并结合不同尺度下的特征。这里upsample(上采样)采用的方法是最近邻插值,之后再将两个特征集按元素位置相加。当到达输出分辨率的时候,再接两个1×1的卷积层来进行最后的预测,网络的输出是一组heatmap,对于给定的heatmap,网络预测在每个像素处存在关节的概率。
github:https://github.com/Naman-ntc/Pytorch-Human-Pose-Estimation