首页 > 其他 > 详细

BlazePose: On-device Real-time Body Pose tracking

时间:2021-01-04 22:57:39      阅读:78      评论:0      收藏:0      [点我收藏+]

BlazePose: On-device Real-time Body Pose tracking

一. 论文简介

主要做的贡献如下(可能之前有人已提出):

这里不说跟踪,仅关注关键点估计部分

  1. 通过关键点检测到人手大概位置,在做手回归,最后再做估计
  2. 通过heatmap辅助训练回归关键点

注意:Holistic mode 是这篇论文的一个整体应用,其中跟踪部分可以使用任何跟踪方法,注意创新点是关键点估计

技术分享图片

二. 模块详解

2.1 heatmap和直接回归同时使用

技术分享图片

论文使用的网络很清晰明了,类似hourglas结构

  • heatmap+offset

这部分是谷歌在2017年的论文:Towards Accurate Multi-person Pose Estimation in the Wild,使用了自家的方法,但是从现在的论文和开源代码来看,offset使用率基本没有。所以大家复现此论文都是直接使使用heatmap来替代heatmap+offset

  • 关于梯度传播问题

这部分真是一个创新点,虚线部分只进行前向传播,实线部分进行前向+反向。tensorflow的实现:tensorflow1tensorflow2,pytorch的实现如何?

其实实现很容易,就是直接把输入当做是一个值(requires_grad=False)即可,但是你得考虑不再下一层传播,但是在当前层传播。

# 这里给出笔者想法,未实际使用
# 方法一:
#直接创建一个新的值
input_public = Tensor([2,64,64,32])#公用的数据
data_forward = deepcopy(input_public)
data_forward.require_grad = False # 就是复制一份,然后将梯度去除即可


# 方法二:
#直接使用分离值

input_public = Tensor([2,64,64,32])#公用的数据
data_forward = input_public.detach()#直接将数据分离出来
  • 关于网络复现

完全按照论文去复现基本不可能,因为网络小模块未给出,skip-gate也未给出。这是是查看google-media 给出的模型进行构建。其实按照这种思路,直接使用shufflenet、mobilenet进行构建也完全可以,但是得有时间尝试模型的优劣。

2.4 总结

  • 挺好的一篇工业级论文,数据未开源、代码未开源,复现很难

BlazePose: On-device Real-time Body Pose tracking

原文:https://www.cnblogs.com/wjy-lulu/p/14231974.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!