画形亦画骨,知面也知心,与 MMHuman3D 一道探索人体参数化模型

简介: 那有没有可能既对人体形状建模,同时掌握骨骼位置和旋转等重要信息呢?那就要用到人体参数化模型了。人体参数化模型仅需少量关键参数(如骨骼旋转、体态等)就能可微地生成网格模型。

人体在计算机视觉和计算机图像学都是重要的课题,不仅是研究的热点,在各行各业也有着广泛的用途。


人体建模有多种主流方式,近年常见的有:


· 关键点模型
,相对成熟的姿态建模方式,但是缺乏人体表面形状信息【有里无表】


· 利用隐函数生成网格模型对人体表面进行建模,但是缺乏姿态等语义信息【有表无里】


640.png

左:关键点模型   右:隐函数生成网格模型


俗话说,小孩子才做选择,成年人当然是全都要!那有没有可能既对人体形状建模,同时掌握骨骼位置和旋转等重要信息呢?


那就要用到人体参数化模型了。人体参数化模型仅需少量关键参数(如骨骼旋转、体态等)就能可微地生成网格模型。

640.png

使用人体参数化模型有以下优势


· 描述完整:人体参数化模型包括人体姿态(Pose)和形状(Shape);


· 强先验:仅需要少量参数就可描述高度复杂的人体网格模型( SMPL 最少仅需 72 + 10 个参数来描述 6890 个顶点的网格模型);


· 兼容性:人体参数化模型能够接入产业界的 3D 渲染管线。


尽管参数化模型有许多独特的优势,但长期以来,这方面的研究都有以下挑战


· 没有通用的算法库, SOTA 方法代码分散,复现耗时耗力;


· 数据集数量众多,且使用的规范 ( convention ) 都有所不同,很难对齐;


· 参数化模型与计算机图形学有很紧密的联系,需要一定建模与渲染的基础。


为了解决这些问题:


今天,OpenMMLab 隆重推出 MMHuman3D!


image.png

原文链接:https://mp.weixin.qq.com/s/FLdWA4H4x7cwEPl5T_43eA


作为我们新近开源的人体参数化模型库,MMHuman3D 有以下特点:


一键复现 SOTA 算法,统一的测试基准,助力人体参数化模型的研究;


统一数据结构 HumanData 支持 16 个常用数据集,再无规范对齐的烦恼;


轻松实现酷炫可微可视化,以及更多方便好用的工具箱。



目前,MMHuman3D 代码库已经全面开源


GitHub 链接:

https://github.com/open-mmlab/mmhuman3d


640.gif

一键复现SOTA算法



640.png MMHuman3D 的架构


上线的第一个版本( v0.3.0 )支持以下 5 种里程碑式算法,使用对应的配置文件一行命令就可运行训练或测试:


· SMPLify(-X) [2,3]:基于关键点配准的经典方法;


· HMR [4]:使用深度学习直接估计参数化模型参数的经典方法;


· SPIN [5]:结合深度学习和在线关键点配准;


· VIBE [6]:非常受欢迎的深度学习视频参数化模型估计方法;


· HybrIK [7]:设计了新颖的姿态参数化表达方式,结合深度学习3D关键点估计与参数估计;


更多方法将会在后续版本中加入~


和 OpenMMLab 其它代码库相同,MMHuman3D 也采用了高度抽象的模块化设计,具有很强的可拓展性。


模块化设计也方便用户使用集成的配置文件,在不修改代码的情况下改变模型参数甚至结构,大大加快实验节奏。

640.png

模块化架构



统一数据结构:

HumanData 支持 16 个常用数据集

640.png


MMHuman3D将数据预处理成统一的 HumanData 格式


人体相关的数据集众多且或多或少都有一些规范(相机、骨骼关键点、关节旋转)上的差异。MMHuman3D提供方便好用的规范工具箱,可在不同规范间轻松切换。


更重要的是,为了长远的可拓展性,MMHuman3D 设计了统一的数据存储格式HumanData(文件格式为 npz ),并且提供对应数据预处理工具箱,全面支持 16 个数据集。MMHuman3D 也提供预处理好的 npz 文件方便用户使用。


轻松实现酷炫可视化


对计算机图形学不了解?


完全没有问题!


MMHuman3D 提供的可视化工具箱支持参数化模型(包括分割、深度图、点云)以及传统的 2D / 3D 关键点的可视化。另外需要提到的是,所有的渲染工具都是可微的 [8]。


image.gif

我们的工具非常便于使用,例如只需一行代码就可渲染 SMPL 的姿态序列


无奖竞猜



欢迎在评论区猜猜都是谁呢

👇

640.gif

640.gif



文章来源:公众号【OpenMMLab】

2021-12-03 11:26

目录
打赏
0
0
0
0
42
分享
相关文章
零基础入门语义分割-地表建筑物识别 Task5 模型训练与验证-学习笔记
零基础入门语义分割-地表建筑物识别 Task5 模型训练与验证-学习笔记
546 2
结合DeepSeek-R1强化学习方法的视觉模型!VLM-R1:输入描述就能精确定位图像目标
VLM-R1 是基于强化学习技术的视觉语言模型,通过自然语言指令精确定位图像目标,支持复杂场景推理与高效训练。
250 0
语义分割笔记(二):DeepLab V3对图像进行分割(自定义数据集从零到一进行训练、验证和测试)
本文介绍了DeepLab V3在语义分割中的应用,包括数据集准备、模型训练、测试和评估,提供了代码和资源链接。
1244 0
语义分割笔记(二):DeepLab V3对图像进行分割(自定义数据集从零到一进行训练、验证和测试)
图像超分:真实感图像超分辨率的局部判别学习方法
图像超分:真实感图像超分辨率的局部判别学习方法
151 0
优化cv2.findContours()函数提取的目标边界点,使语义分割进行远监督辅助标注
可以看到cv2.findContours()函数可以将目标的所有边界点都进行导出来,但是他的点存在一个问题,太过密集,如果我们想将语义分割的结果重新导出成labelme格式的json文件进行修正时,这就会存在点太密集没有办法进行修改,这里展示一个示例:没有对导出的结果进行修正,在labelme中的效果图。
291 0
使用训练分类网络预处理多分辨率图像
说明如何准备用于读取和预处理可能不适合内存的多分辨率全玻片图像 (WSI) 的数据存储。肿瘤分类的深度学习方法依赖于数字病理学,其中整个组织切片被成像和数字化。生成的 WSI 具有高分辨率,大约为 200,000 x 100,000 像素。WSI 通常以多分辨率格式存储,以促进图像的高效显示、导航和处理。 读取和处理WSI数据。这些对象有助于使用多个分辨率级别,并且不需要将图像加载到核心内存中。此示例演示如何使用较低分辨率的图像数据从较精细的级别有效地准备数据。可以使用处理后的数据来训练分类深度学习网络。
475 0
一文尽览 | 首篇Transformer在3D点云中的应用综述(检测/跟踪/分割/降噪/补全)(下)
Transformer 一直是自然语言处理 (NLP) 和计算机视觉 (CV) 的核心。NLP 和 CV 的巨大成功激发了研究者对 Transformer 在点云处理中的使用的探索。但是,Transformer如何应对点云的不规则性和无序性?
一文尽览 | 首篇Transformer在3D点云中的应用综述(检测/跟踪/分割/降噪/补全)(下)