Hello,
I have bumped into this repo:

  
      
      GitHub
  
  
    

YeeCY/SMPLpp 7

C++ Implementation of SMPL: A Skinned Multi-Person Linear Model - YeeCY/SMPLpp


  
  
    
    
  
  


It uses xtensor for the dataflow from numpy to a C++ tensor to a libtorch tensor:

  
      github.com
  
  
    YeeCY/SMPLpp/blob/ab221f34957d5a6001bd29bba402ee2aa8e7d9ab/SMPL++/src/smpl/SMPL.cpp 16
/* ========================================================================= *
 *                                                                           *
 *                                 SMPL++                                    *
 *                    Copyright (c) 2018, Chongyi Zheng.                     *
 *                          All Rights reserved.                             *
 *                                                                           *
 * ------------------------------------------------------------------------- *
 *                                                                           *
 * This software implements a 3D human skinning model - SMPL: A Skinned      *
 * Multi-Person Linear Model with C++.                                       *
 *                                                                           *
 * For more detail, see the paper published by Max Planck Institute for      *
 * Intelligent Systems on SIGGRAPH ASIA 2015.                                *
 *                                                                           *
 * We provide this software for research purposes only.                      *
 * The original SMPL model is available at http://smpl.is.tue.mpg.           *
 *                                                                           *
 * ========================================================================= */

//=============================================================================


  This file has been truncated. show original

  
  
    
    
  
  


// transformer
        xt::xarray<int64_t> kinematicTree;
        xt::from_json(m__model["kinematic_tree"], kinematicTree);
        m__kinematicTree = torch::from_blob(kinematicTree.data(),
            {2, JOINT_NUM}, torch::kInt64).to(m__device);// (2, 24)