2D关键点检测模型: CPM < DeeperCut < CMU OpenPose
VGG16
VGG由5层卷积层、3层全连接层、softmax输出层构成,层与层之间使用max-pooling(最大化池)分开,所有隐层的激活单元都采用ReLU函数
一、CPM
stage1: 输入是原图,经过VGG提取图像卷积特征X,后接两个1×1卷积输出heatmaps(shape为h'×w'×(P+1)),P+1通道表示heatmaps上每个像素位置是P个关键点(关节)+1个背景的得分socre。
stage2: 输入包含三部分,(1)原图(2)stage1输出的heatmap(3)每个目标的中心约束map(见下图中的small center map); 输出的是P+1通道的heatmaps。
stage3: 重复stage2 stage n.....:
二、CMU OpenPose (Part Affinity Fields )
两条线,经过卷积网络提取特征,得到一组特征图,然后分成两个岔路,分别使用CNN网络提取Part Confidence Maps和Part Affinity Fields,得到这两个信息后,我们使用图论中的Bipartite Matching将同一个人的关节点连接起来得到最终的结果。
PAF标签
三、DeeperCut(自顶向下)
首先使用CNN提取body part candidates,每一个候选区域对应的是一个关节点, 每一个关节点作为图中的一个节点,所有的这些候选关节点组成代表的节点组成一副完整的图,正如上图dense graph所示。节点之间的关联性作为图中的节点之间的权重。这时,可以将其看作是一个优化问题,将属于同一个人的关节点(图中的节点)归为一类,每一个人作为一个单独的类。同时,另一条分支,需要对检测出来的节点进行标记,确定他们属于人体的哪一个部分。最后,使用分类的人结合标记的部分构成最终的每个人的姿态估计。