Github项目推荐 | Manopth - PyTorch的MANO层,生成手部网格作为可微分层

2019 年 3 月 20 日 AI研习社


PyTorch的MANO层(使用v0.4和v1.x进行测试)

ManoLayer是一个可微分的PyTorch层,可以确定地从姿势和形状参数映射到手部关节和顶点。 它可以作为可微分层集成到任何架构中以预测手部网格。


项目地址:(点击本链接可直接访问)

https://github.com/hassony2/manopth

致谢:感谢读者@朱小鹏 提供的工具 GitHub Trending Hub,现在可以直接在微信打开Github链接啦)

ManoLayer采用批量手部姿势和形状矢量并输出相应的手部关节和顶点。

代码主要是原始 MANO 模型从chumpy到 PyTorch的PyTorch端口。因此,它直接建立在Javier Romero,Dimitrios Tzionas和Michael J. Black的工作之上。

ManoLayer被开发并用于CVPR19的论文《学习手部和被操纵物体的关节重建》。可查看即将推出的代码。

如果你觉得本项目对你的研究有用,可以考虑引用:

  • 原版 MANO 文献:

@article{MANO:SIGGRAPHASIA:2017,  title = {Embodied Hands: Modeling and Capturing Hands and Bodies Together},  author = {Romero, Javier and Tzionas, Dimitrios and Black, Michael J.},  journal = {ACM Transactions on Graphics, (Proc. SIGGRAPH Asia)},  publisher = {ACM},  month = nov,  year = {2017},  url = {http://doi.acm.org/10.1145/3130800.3130883},  month_numeric = {11}}

出版这个PyTorch端口是为了:

@INPROCEEDINGS{hasson19_obman,  title     = {Learning joint reconstruction of hands and manipulated objects},  author    = {Hasson, Yana and Varol, G{\"u}l and Tzionas, Dimitris and Kalevatykh, Igor and Black, Michael J. and Laptev, Ivan and Schmid, Cordelia},  booktitle = {CVPR},  year      = {2019}}

安装

获取代码和依赖项

  • git clone https://github.com/hassony2/manopth

  • cd manopth

  • 安装  environment.yml 里列出的依赖库 

    • 在现有的conda环境中,请输入:conda env update -f environment.yml

    • 在一个全新的环境中,请输入:conda env create -f environment.yml ,将会创建一个 manopth 的conda环境


下载MANO pickle数据结构

  • 前往MANO的网站

  • 点击“Sign Up(注册)”创建帐户并提供你的相关信息

  • 下载模型和代码(下载的文件应该是 mano_v*_*.zip 格式)。 请注意,此下载中的所有代码和数据均归MANO许可。

  • models 文件夹解压并复制到 manopth/mano 文件夹中

  • 你的文件结构应该是这样的:

manopth/  mano/    models/      MANO_LEFT.pkl      MANO_RIGHT.pkl      ...  manopth/    __init__.py    ...

查看是否都就绪完毕,可以运行:python manopth/manopth_mindemo.py ,运行后会调用MANO层随机生成一个手部数据。

作为本地包安装

作为本地包安装以后,你能够在另一个项目中导入和使用ManoLayer

python setup.py install

cd /path/to/other/project

现在,你可以在另一个项目中使用:from manopth import ManoLayer 啦


使用

最少的使用脚本

查看 manopth_mindemo.py

通过MANO层简单地向前传递手部的随机姿势和形状参数

结果如下:

Demo

Demo具有更多选项,前向和后向传递,以及用于快速分析的循环,输入以下指令查看:

python manopth_demo.py

点击阅读原文,查看划线部分链接内容

登录查看更多
9

相关内容

CVPR 2020 最佳论文与最佳学生论文!
专知会员服务
34+阅读 · 2020年6月17日
必读的10篇 CVPR 2019【生成对抗网络】相关论文和代码
专知会员服务
31+阅读 · 2020年1月10日
【干货】用BRET进行多标签文本分类(附代码)
专知会员服务
84+阅读 · 2019年12月27日
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
35+阅读 · 2019年12月15日
Github项目推荐 | Pytorch TVM 扩展
AI研习社
11+阅读 · 2019年5月5日
干货 | Github项目推荐 : GANSynth: 用GANs创作音乐
AI科技评论
9+阅读 · 2019年3月2日
Github项目推荐 | RecQ - Python推荐系统框架
AI研习社
8+阅读 · 2019年1月23日
用PyTorch做物体检测和追踪
AI研习社
12+阅读 · 2019年1月6日
Github 项目推荐 | 用 PyTorch 0.4 实现的 YoloV3
AI研习社
9+阅读 · 2018年8月11日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Learning Implicit Fields for Generative Shape Modeling
Arxiv
10+阅读 · 2018年12月6日
Arxiv
8+阅读 · 2018年5月21日
Arxiv
4+阅读 · 2018年4月30日
Arxiv
3+阅读 · 2017年7月6日
VIP会员
Top
微信扫码咨询专知VIP会员