zoukankan      html  css  js  c++  java
  • BlazePose: On-device Real-time Body Pose tracking

    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 总结

    • 挺好的一篇工业级论文,数据未开源、代码未开源,复现很难
  • 相关阅读:
    由ping百度引发的思考
    操作系统 | 概述
    操作系统导论第四章 | 抽象:进程
    汇编语言 | 定制键盘输入的处理过程
    细数 TS 中那些奇怪的符号
    vue 各种 import 引入
    display:table-cell实现水平垂直居中
    Jquery判断单选框是否选中和获取选中的值
    css整理 -- 右箭头,上下箭头,三角形、超出省略号代替
    JQuery操作select下拉框
  • 原文地址:https://www.cnblogs.com/wjy-lulu/p/14231974.html
Copyright © 2011-2022 走看看