人体姿态检测——CPN

论文:《Cascaded Pyramid Network for Multi-Person Pose Estimation》

1.概述:

论文提出级联金字塔网络(Cascaded Pyramid Network ,简称CPN),包含两个阶段:GlobalNet和RefineNet。GlobalNet是特征金字塔网络,可以定位简单的关键点,如眼睛和手,虽然无法识别被遮挡的关键点,但是可以提供上下文信息,用于推断被遮挡的关键点。RefineNet通过整合GlobalNet所有级别的特征来处理比较难识别的关键点。为了解决多人姿态估计,论文采用自上往下的方法,首先生成人体边界框,之后通过CPN实现关键点检测。

2.网络结构:

人体姿态检测——CPN_第1张图片
为了处理处理难的样本,作者在loss上面做了一定的处理,最后的L2 loss作者希望针对难的关键点进行监督,而不是针对所有关键点uniform的进行监督,所以作者提出了一个Hard keypoint mining的loss。

def ohkm(loss, batch_size,top_k):
    ohkm_loss = 0.
    for i in range(batch_size):
        sub_loss = loss[i]
        topk_val, topk_idx = tf.nn.top_k(sub_loss, k=top_k, sorted=False, name= 'ohkm{}'. format(i) )
        tmp_loss = tf.gather(sub_loss, topk_idx, name='ohkm_loss{}'.format(i))
        ohkm_loss += tf.reduce_sum(tmp_loss) / top_k
    ohkm_loss /= batch_size
    return ohkm_loss
3.参考:
https://zhuanlan.zhihu.com/p/85506259
https://github.com/Longqi-S/keras_cpn
https://github.com/chenyilun95/tf-cpn

你可能感兴趣的:(人体关键点检测)