Nymeria数据集是目前世界上最大的野生环境下人类运动数据集,它捕捉了不同人群在不同地点进行的各种活动。这个数据集是首次使用多个自我中心的多模态设备记录身体运动,所有设备都精确同步并定位在一个统一的3D世界中。Nymeria还是世界上最大的带有自然语言描述的运动数据集。该数据集旨在加速自我中心人类运动理解的研究,并提出了挑战,以推进上下文化计算和未来AR/VR技术的发展。这个仓库托管了用于下载和可视化数据集的API。
Nymeria数据集亮点
- 全球最大:拥有超过1200个序列,每个序列包含由多个设备记录的数据/注释,总数据量约为70TB。
- 多模态设备:使用多个自我中心的多模态设备记录身体运动,包括运动捕捉、视频记录等。
- 自然语言描述:附带自然语言描述,为数据集增加了语义信息,有助于理解运动场景。
- 精确同步和定位:所有数据都精确同步并定位在一个统一的3D世界中,为研究提供了准确的空间和时间信息。
快速开始
安装
运行以下命令以创建一个名为pymeria
的conda环境,并使用pip安装此仓库:
bash
git clone git@github.com:facebookresearch/nymeria_dataset.git
cd nymeria_dataset
conda env create -f environment.yml
注意:目前仅支持Linux系统,因为我们需要安装pymoment
来加载身体运动的参数化网格模型。如果你的工作流程不需要这种模态,移除pymoment
应该足以让代码在Windows和MacOS上运行。
下载数据集
在开始之前,请查看数据集的LICENSE,确保你的用例被覆盖。
Nymeria数据集被分割成序列,序列又被分割成数据组,以便于访问。数据组是一组必须通过URL一起下载的文件。预定义的数据组在definition.py
中指定。每个序列都标记有一系列属性,这些属性在sequence_attributes.py
中描述。我们建立了基本的支持来根据它们的属性过滤序列。
选项1 - 下载样本文件
访问数据集探索器,点击任何序列以查看详细信息。在右侧面板中,找到一个列表,其中包含下载该序列特定数据组的链接。
选项2 - 批量下载多个序列
对于批量下载,你需要获得一个包含URLs的JSON文件。有两种方式可以实现这一点。首先,你可以访问项目页面,并在底部注册以获取数据集访问权限,然后被引导至下载页面。下载的文件将包含完整数据集的URLs。或者,你可以在数据集探索器上生成一个包含选定序列和模态的定制化JSON文件。无论哪种方式,JSON文件中提供的URLs有效期为14天。请在过期后获取新的JSON文件。
有了JSON文件,你可以访问URLs来下载数据。为了方便,我们提供了download.py
作为示例脚本来解析JSON文件,并将数据下载到格式化的目录中。运行脚本如下:
bash
conda activate pymeria
cd nymeria_dataset
python download.py -i <nymeria_download_urls.json> -o <output_path> [-k <partial_matching_key>]
下载脚本将在<output_path>
下产生一个download_summary.json
。要自定义要下载的数据组,请修改get_groups()
函数。可选参数-k
实现了部分关键字匹配以选择序列。Nymeria序列的命名约定如下:<date>_<session_id>_<fake_name>_<act_id>_<uid>
。以下是如何使用序列过滤器的一些示例。
加载Nymeria数据并可视化
要加载Nymeria序列,请参阅NymeriaDataProvider
类的实现。这个类期望格式化的序列目录,如前一节所下载的。它可以配置为加载不同的模态(参见NymeriaDataProviderConfig
)。目前,这个类实现了以下功能:
- 加载Vrs记录及其MPS位置输出。
- 加载身体运动作为XSens运动学骨架和Momentum参数化网格模型。
- 从多个源同步数据。
- 计算对齐,将身体运动注册到Aria设备的同一世界坐标中。
要可视化一个序列,运行以下查看器。请下载一个序列的所有模态,以确保代码按预期运行。
bash
python viewer.py -i <nymeria_sequence_path> [-s]
下面的两张图显示了查看器的外观。3D视图渲染身体运动、点云和设备轨迹。2D视图渲染参与者Aria眼镜和观察者Aria眼镜的同步RGB视频。代码使用rerun进行渲染。你可以切换查看器以显示不同的模态,并通过对NymeriaViewerConfig
进行配置。
结语
Nymeria数据集是一个宝贵的资源,可以帮助研究者理解人类动作,并推动增强现实和虚拟现实技术的发展。如果你对这个数据集感兴趣,可以访问其项目页面了解更多信息:
Nymeria Dataset - a massive collection of multimodal egocentric daily motion in the wild