基于部分亲和字段PAF(Part Affinity Field)的2D图像姿态估计
来源:互联网 发布:mac共享wifi 编辑:程序博客网 时间:2024/05/21 16:32
该文章出自2017年的CVPR,Realtime Multi-Person 2D Pose Estimation using Part Affinity Field,是CMU的工作,效果真的amazing。
也许这篇文章的亮点在于,融合了PCM和PAF的级联cascade形网络结构,网络设计思想和RefineNet的网络设计思想很像,以及相应条件约束的偶匹配(bipartite matchings)算法。
整个检测过程如上图所示,输入一幅图像,然后经过7个stage,得到PCM和PAF。然后根据PAF生成一系列的偶匹配,由于PAF自身的矢量性,使得生成的偶匹配很正确,最终合并为一个人的整体骨架。
在models/pose/mpi/下面有2个模型,pose_deploy_linevec.prototxt模型相对更准确一些,pose_deploy_linevec_faster_4_stages.prototxt模型精度稍微有所下降,大概2个点,但是速度提升有30%。
这2个模型的区别就是,后者去掉了stage5,stage6这2个卷积模块(如下图所示,每个stage由一系列的卷积层组成,其中Branch1由1个列组成,Branch2由2个列组成,在进入下一个stage前,上一个stage的3个列进行融合)。
models/pose/coco/pose_deploy_linevec.prototxt和models/pose/mpi/pose_deploy_linevec.prototxt网络结构一样,区别就是coco的卷基层滤波器数目更多点。这个模型是3个模型中最精确的一个。
模型的设置可以在,examples/openpose/openpose.cpp中设置,默认调用COCO的model
DEFINE_string(model_pose,"COCO","Modelto be used (e.g. COCO, MPI, MPI_4_layers).");
安装步骤(环境centos):
git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.gitcd 3rdparty/caffecp Makefile.config.Ubuntu14.example Makefile.config #修改其中的路径为自己计算机路径make all -j8cd ../../models/./getModels.sh cd ..cp Makefile.config.Ubuntu14.example Makefile.config #修改其中的路径为自己计算机路径make -j8
可能错误:
/tmp/cciLUahT.s:1660: Error: no suchinstruction: `vextracti128 $0x1,%ymm0,%xmm0'
make: ***[.build_release/src/openpose/gui/guiInfoAdder.o] 错误 1
make: *** 正在等待未完成的任务....
/tmp/ccpTDNgT.s:3892: Error: no suchinstruction: `vextracti128 $0x1,%ymm0,%xmm0'
make: ***[.build_release/src/openpose/gui/gui.o] 错误 1
解决方法:注释掉Makefile中的汇编优化,204行,CXXFLAGS += -march=native
可能错误:
ERROR: something wrong with flag'tab_completion_word' in file
解决方法:
去掉Makefile中144行,
LIBRARIES += glog gflags boost_systemboost_filesystem m hdf5_hl hdf5 caffe
中的gflags
测试:
跑视频:
./build/examples/openpose/openpose.bin--video examples/media/video.avi
跑摄像头:
./build/examples/openpose/openpose.bin
跑图片:
./build/examples/openpose/openpose.bin--image_dir examples/media/
pets数据集上的测试效果:
reference:
https://github.com/CMU-Perceptual-Computing-Lab/openpose
- 基于部分亲和字段PAF(Part Affinity Field)的2D图像姿态估计
- 行人姿态估计--Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
- 姿态估计论文思路整理 -- Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
- 基于深度图像的头部姿态估计
- Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields ∗ 实时多人人体姿态估计论文原理讲解
- 姿态论文整理--02-Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
- 基于特征匹配的摄像头姿态估计
- POSIT算法的原理--opencv 3D姿态估计
- POSIT算法的原理--opencv 3D姿态估计
- POSIT算法的原理--opencv 3D姿态估计
- Challenge_4: 基于特征匹配的摄像头姿态估计
- DeepCut及DeeperCut:基于Tensorflow的人体姿态估计
- 基于Dlib和OpenCV的人脸姿态估计(HeadPoseEstimation)
- DeepCut及DeeperCut:基于Tensorflow的人体姿态估计
- 在自遮挡下的单目图像3D姿态估计 Monocular Image 3D Human Pose Estimation under Self-Occlusion (ICCV 13)
- 利用二维图像进行头部姿态估计
- 简单头部姿态的估计
- pnp估计相机的姿态
- 我推荐阅读的微信公众号-IT类
- 向前光照和延后光照渲染器问题和原理
- npm 安装配置等
- 特长生模拟 Array(水)
- #游戏unity#AR中奇妙的虚拟按钮
- 基于部分亲和字段PAF(Part Affinity Field)的2D图像姿态估计
- 清空的回收站怎么恢复文件
- Spring这些的注入方式,你知道吗?
- NOI(1.11编程基础之二分查找-02:二分法求函数的零点)
- 第六次实验:项目二
- HTML 表单元素有哪些?
- C++第五次实验
- Timer控件使用(System.Timers.Timer)
- 特长生模拟 BIOtech(模拟)