0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

仅使用智能手机在NVIDIA Isaac Sim中重建场景

NVIDIA英伟达企业解决方案 来源:NVIDIA英伟达企业解决方案 2025-11-10 14:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

机器人仿真构建逼真的 3D 环境可能是一项耗时且劳动密集型的任务。现在,借助NVIDIA Omniverse NuRec,您只需使用智能手机即可完成整个流程。本文将逐步介绍操作方法:从使用 iPhone 拍摄照片,到利用3DGUT进行 3D 场景重建,再到将重建的场景导入NVIDIA Isaac Sim并添加机器人。若要跳过重建步骤(步骤 1–3),直接在 Isaac Sim(步骤 4)中探索该场景,可前往NVIDIA Physical AI上的 Hugging Face 获取相关资源。

第 1 步:捕捉真实场景

第一步是拍摄需要重建的真实环境的照片。如今已无需特殊硬件,使用普通的智能手机摄像头即可完成。

当您在场景中移动时,可以使用手机进行拍摄。以下是一些摄影测量的实用建议:

照明和焦点应准确且稳定。避免画面快速移动或出现模糊。若条件允许,建议使用更快的快门速度(例如 1/100 秒或更快)。

在内置相机应用中,您无法直接设置快门速度,但可以采取以下措施进行优化:

锁定对焦与曝光:长按画面主体可启用 AE/AF 锁定,随后轻微向下拖动曝光滑块(+0.3 至 +0.7 EV),有助于保留高光细节。

保持稳定:建议使用三脚架或将设备靠在稳固表面上;每一帧越清晰,COLMAP 在特征追踪时的表现就越出色。

避免自动切换微距模式:若使用 iPhone Pro 机型,为防止镜头间焦距突然切换,请前往“设置” →“相机” → 关闭“自动微距”功能。

如需手动控制快门速度和 ISO,可选用以下支持固定快门与 ISO 的 iOS 应用程序:Lumina:手动相机、Halide、ProCamera、ProCam 8、Moment Pro Camera、Lightroom Mobile。

建议快门速度设置为:户外 1/120 至 1/250 秒,室内 1/100 秒。ISO 值应尽量调低,以在保证合理曝光的同时减少噪点。

同时建议锁定白平衡,避免不同帧之间出现色彩偏移。

为实现遮挡效果,请围绕该区域进行缓慢环绕,并从多个高度和角度进行捕捉。建议保持 60% 的重叠率以确保安全。

提示:COLMAP 需要标准图像格式。如果您的 iPhone 保存的是 HEIC 格式,请前往“Settings” (设置) + “Camera” (相机) + “Formats” (格式),然后选择“Most Compatible” (兼容性优先),以拍摄 JPEG 格式;或者在使用 COLMAP 前,将图像导出或转换为 JPG 格式。

第 2 步:利用 COLMAP 生成稀疏重建

当您拥有照片后,下一步是从这些图像中恢复出三维结构并确定相机的位置。本示例采用流行的开源运动恢复结构(Structure-from-Motion,SfM)与多视角立体匹配(Multi-View Stereo)工作流COLMAP来实现这一目标。COLMAP 将生成场景的稀疏点云,并估算每张照片对应的相机参数。

COLMAP 还提供了以下命令行路径。但请注意,使用 GUI 进行自动重建是更简便的入门方式。为了与 3DGUT 兼容,请选择针孔或简单针孔相机模型。

# Feature detection & extraction

$ colmap feature_extractor \

--database_path ./colmap/database.db \

--image_path ./images/ \

--ImageReader


# Feature detection & extraction
$ colmap feature_extractor \
    --database_path ./colmap/database.db \
    --image_path    ./images/ \
    --ImageReader.single_camera 1 \
    --ImageReader.camera_model   PINHOLE \
    --SiftExtraction.max_image_size 2000 \
    --SiftExtraction.estimate_affine_shape 1 \
    --SiftExtraction.domain_size_pooling 1

# Feature matching
$ colmap exhaustive_matcher \
    --database_path ./colmap/database.db \
    --SiftMatching.use_gpu 1

# Global SFM
$ colmap mapper \
    --database_path ./colmap/database.db \
    --image_path    ./images/ \
    --output_path   ./colmap/sparse

# Visualize for verification
$ colmap gui --import_path ./colmap/sparse/0 \
    --database_path ./colmap/database.db \
    --image_path    ./images/

COLMAP 将输出项目文件夹(通常包含 database.db、images/ 文件夹,以及存放重建数据的稀疏/ 目录)。完成 COLMAP 处理后,您将获得:

稀疏点云场景

所有图像的相机位姿数据

这是使用 3DGUT 进行 3D 重建所需输入的信息(第 3 步)。

第 3 步:使用 3DGUT 进行密集 3D 重建的训练,并将结果导出为 USD

现在来看看效果。下一步,利用 3DGUT 算法将稀疏模型和图像转换为更加逼真的密集 3D 场景:

设置 3DGUT 环境:3DGUT 存储库需要在配备 CUDA 11.8、GCC ≤ 11 和 NVIDIA GPU 的 Linux 系统上运行。如需查看官方 3DGUT 代码,请访问nv-tlabs/3dgrut仓库,并按照说明安装所需的依赖库。

克隆 3DGUT 存储库: 使用指定命令克隆并安装 3DGUT 存储库。为确保克隆成功,在继续操作前,请使用存储库中的示例数据集运行测试重建,以验证其功能是否正常。


git clone --recursive https://github.com/nv-tlabs/3dgrut.git
cd 3dgrut
chmod +x install_env.sh
./install_env.sh 3dgrut
conda activate 3dgrut

准备 COLMAP 输出:请确认您已知晓第 2 步中生成的 COLMAP 输出目录的路径。本示例采用apps/colmap_3dgut_mcmc.yaml配置,该配置将 3DGUT 与MCMC(Markov Chain Monte Carlo)密集化策略相结合。在实际应用中,该方法能够对重建过程中存在不确定性的高斯进行采样与密集化处理,有效增强薄结构和边缘的清晰度,提升整体重建保真度,同时相较于基准配置,训练耗时更少。

运行 3DGUT 训练脚本并导出 USDZ:在激活当前环境后,您可通过执行提供的 train.py 脚本并指定 COLMAP 配置来启动训练。例如,命令可能类似于以下形式:

$ conda activate 3dgrut
$ python train.py --config-name apps/colmap_3dgut_mcmc.yaml \
path=/path/to/colmap/ \
out_dir=/path/to/out/ \
experiment_name=3dgut_mcmc \
export_usdz.enabled=true \
export_usdz.apply_normalizing_transform=true

运行命令后,3DGUT 将开始训练,读取您的图像和 COLMAP 数据,并对 3D 表征进行优化。所需时间取决于场景的复杂程度和 GPU 性能,小型场景可能只需几分钟,而细节丰富的场景则可能需要数小时。

此过程完成后,应对场景进行密集重建,输出结果包含一个含有模型检查点的目录。设置export_usdz.enabled=true和export_usdz.apply_normalizaing_transform=true标志还会生成 USDZ 文件。

export_usdz.enabled=truewrites a USDZ of your reconstructed scene, so you can load it straight into Isaac Sim.

export_usdz.apply_normalizing_transform=trueapplies a primitive normalization (centers/scales the scene near the origin). It does not guarantee the floor is exactly atz = 0. In Isaac Sim, you can add a Ground Plane or nudge the scene root (translate/rotate) for alignment.

将重建的场景导出为 USD 格式后,即可在 Isaac Sim 中使用。生成的 USDZ 文件采用自定义 USD 模式,本质上是一个打包的 USD 场景,包含 3D 重建中的全部高斯拼接数据。需要注意的是,AOUSD 正在讨论该模式的标准化。

第 4 步:在 Isaac Sim 中部署重建的场景,并添加机器人

有趣的是,随着现实世界场景在 USD 中被完整重建,它们便可在 Isaac Sim 中用于虚拟机器人的训练与测试。

要加载场景并插入机器人,请按以下步骤操作:

1. 启动支持 NuRec/3DGUT 功能的 Isaac Sim 5.0 或更高版本。打开 Isaac Sim 后,从空阶段开始(文件 > 新建)。

2. 导入 USD 场景: 从菜单中选择“File” (文件) > “Import” (导入),然后定位到场景的 USDZ 文件。 alternatively,也可将 USDZ 文件从 Isaac Sim 内容浏览器直接拖拽至场景中。当 Isaac Sim 加载该文件时,您将在视口中看到重建的环境,呈现为彩色点云或高斯点的集合。通过相机视角观察时,其效果近乎一张逼真的 3D 图像。

提示:您可以通过 Isaac Sim 导航功能使用 WASD 键,或右键单击并拖动,在场景中自由移动,从不同角度进行查看和检查。

3. 为物理效果添加地平面: 您重建的场景仅包含视觉几何图形(来自 3DGUT 的点或体素),不具备固有的碰撞属性。为了让机器人能够在场景中移动,需要添加一个地面,使其有可支撑的表面。在 Isaac Sim 中,此操作非常简便:点击“Create”(创建)>“Physics”(物理效果)>“Ground Plane”(地面平面)。此时会生成一个平面(通常位于z = 0),覆盖场景的占地面积。您可能需要调整其缩放比例(例如,将 x 和 y 均设为 100,如视频 1 所示)。请进一步调节该平面的位置、旋转和缩放,使其与重建的地板对齐。

接下来,连接代理网格以接收阴影。代理网格是一种简单的支撑结构,通过提供可投射阴影的表面,使场景中的物体在视觉上更好地与地面衔接。您已经创建了一个网格,即地平面。要将其设置为代理网格,请执行以下步骤:

选择 NuRec Prim(位于全局 xform 下的体积 Prim)。在“Raw USD Properties”(原始 USD 属性)面板中,找到 NuRec/Volume 部分,并定位到“Proxy”(代理)字段。

点击以添加您的代理网格基元。

再次选择您的地平面,确保“Geometry”(几何图形)>“Matte Object”(哑光对象)属性已启用。

4. 从 Isaac Sim 资产中插入机器人: Isaac Sim 提供了多种 SimReady 机器人模型。要在场景中添加机器人,请前往顶部菜单栏,选择“Create” (创建) > “Robots” (机器人),然后从列表中选取所需的机器人。例如,可选择广受好评的 Franka Emika Panda 机械臂,也可根据 Isaac Sim 库中的可用资源,选择 LeatherBack、Carter 或 TurtleBot 等移动机器人,甚至人形机器人。

单击您选择的机器人素材后,该素材将被添加到场景中。请使用“Move/ Rotate” (移动/ 旋转) 工具,将机器人调整至重建场景中的合适位置。

5. 按下“Play”(播放)并观看: 此时,机器人应位于逼真的 3D 场景中,可以坐姿或站姿呈现。如果是机械臂,您还可以为其添加动画,甚至运行强化学习,具体取决于您的应用场景。现在,现实世界环境已导入 Isaac Sim,您可以像操作其他仿真环境一样对其进行处理。

在 NVIDIA Isaac Sim 中开始重建场景

这个简洁而真实感十足的仿真工作流,可将日常的 iPhone 拍摄照片转化为交互式、机器人就绪的场景。整个流程就像在 NVIDIA Isaac Sim 中完成图像采集、COLMAP 处理、3DGUT 重建、USDZ 导出并加载使用一样简单。该工作流用一种简单且可复现的数字孪生路径,取代了传统耗时的摄影测量流程,让你能够快速进行驱动、路径规划与测试。准备好开始体验了吗?

准备好开始体验了吗?

打开现成场景:从 Hugging Face 的NVIDIA 物理 AI集合中获取 NuRec 样本,并在 Isaac Sim 中加载运行。

试用真实到仿真的参考工作流:基于 Isaac Sim、Isaac ROS、3DGUT、cuSFM、nvBlox 和 FoundationStereo,按照从立体摄像头数据重建场景的流程,为机器人开发构建高保真的 3D 环境,请遵循从立体摄像头数据重建场景的步骤。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能手机
    +关注

    关注

    66

    文章

    18672

    浏览量

    185572
  • 机器人
    +关注

    关注

    213

    文章

    30612

    浏览量

    219671
  • NVIDIA
    +关注

    关注

    14

    文章

    5496

    浏览量

    109110

原文标题:仅使用智能手机在 NVIDIA Isaac Sim 中重建场景

文章出处:【微信号:NVIDIA-Enterprise,微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    智能手机+平板电脑,商机?!

    地觉察到这事值得玩味、推敲!5.3英寸屏幕,智能手机算是巨无霸了,从最初的推广噱头“Is it a tablet or smart phone?”,Galaxy Note 介于平板和手机
    发表于 01-06 17:46

    FPGA智能手机设计的应用

    ` 本帖最后由 eehome 于 2013-1-5 09:44 编辑 FPGA智能手机设计的应用,欢迎下载`
    发表于 12-27 12:26

    智能手机

    智能手机图纸谁有呢能看清
    发表于 06-23 19:55

    智能手机如何判断人脸的贴近

    智能手机应用了很多的传感器,每个传感器的作用,都是为了提高或改善用户的体验,让手机更加智能化、更加人性化。
    发表于 09-30 16:03

    智能手机加平板

    怎样把智能手机的蓝牙和GPS.sim通讯硬件和软件移植到平板电脑里、望高手赐教、给个思路
    发表于 10-15 18:20

    OCR智能手机的应用

    此外, 如手机开发商将 API 提供给第三方 APP 开发商, 一系列新的APP将会出现, 并只会出现在附有OCR 功能的智能手机
    发表于 01-16 14:31

    模拟智能手机

    STM32单片机模拟智能手机
    发表于 09-26 10:19

    你怎么定义智能手机壳,觉得高科技+手机壳=智能手机壳吗?!

    ,它就是一个3D视频播放器!是的,你没有听错,它就是能让手机上的视频显出立体效果的播放屏,相当于我们电影院戴的3D眼镜。是不是特别神奇?反正我是第一次见到这样的宝贝,看到它才知道智能手机壳真的是有
    发表于 01-05 09:56

    智能手机智能调整

    新的运营商要求和消费者期望,RF调谐智能手机设计变得至关重要。传统的调谐解决方案称为“开环”,使设备能够更好地支持多个LTE / HSPA +频段并提高天线性能,但不适应可变的工作条件或用例。当前
    发表于 10-16 09:24

    多模LTE智能手机评估的问题

    等。因此,LTE 和2G/3G 移动系统之间实现InterRAT Handover和互通是LTE 智能手机研发的一项关键技术,且Cell间移动时的连接可靠性和稳定性测试同时也是
    发表于 06-05 07:16

    自动对焦智能手机的应用

    作者:高级产品营销经理Jason Whetstone当今最想要的智能手机特性对于许多用户,相机性能已成为一台智能手机最重要的方面。社交媒体和线上业务使每个人都成为摄影师或影片导演,辅以几百万像素
    发表于 07-16 08:50

    智能手机怎么才能更加智能

    很明显,智能手机不仅融入了我们的日常商业活动,而且融入了我们的日常生活。过去,智能手机被定义为采用专用操作系统(OS)的蜂窝电话。这意味着智能手机可以增加或安装/删除应用软件,虽然这种定义稍嫌简单了点。今天的
    发表于 08-20 08:32

    如何设计智能手机省电系统?

    智能手机包含了很多耗能设备, 诸如MP3、MPEG- 4、Wi-Fi、数码相机、3D 游戏等等。在手机电池容量还没有实现质的飞跃的前提下, 我们不得不考虑手机电源节能的问题。我主要通
    发表于 11-05 08:03

    NVIDIA AI机器人开发— NVIDIA Isaac Sim入门

    NVIDIA 最新公开课来了,本次将围绕用于开发和训练智能机器人的模拟平台—— NVIDIA Isaac Sim
    的头像 发表于 10-19 15:58 2747次阅读

    NVIDIA Isaac SimNVIDIA Isaac Lab的更新

    COMPUTEX 2025 上,NVIDIA 宣布了机器人仿真参考应用 NVIDIA Isaac Sim 和机器人学习框架
    的头像 发表于 05-28 10:06 1757次阅读