Please provide all relevant details below before submitting your post. This will help the community provide more accurate and timely assistance. After submitting, you can check the appropriate boxes. Remember, you can always edit your post later to include additional information if needed.
Operating System
Ubuntu 24.04
GPU Information
Model: RTX 3060
Topic Description
Subject: Distance Measurement Issue with 3DGS-derived Assets (3DGUT/USDZ) in NVIDIA Omniverse
I am currently working on displaying 3D Gaussian Splatting (3DGS) results within NVIDIA Omniverse.
I successfully confirmed that assets processed using the
3DGUT approach (specifically, converting the 3DGS data to a USDZ file) can be imported into Omniverse.
However, when I attempt to perform a distance measurement directly on the imported 3DGS asset, the measurement fails or is not possible.
Conversely, when I create a mesh from the scene reconstruction and import that mesh, I am able to perform the distance measurement correctly.
My core question is this: Is it mandatory to convert the 3DGS representation into a traditional geometric mesh in order to enable distance measurement tools within Omniverse?
Any insights into the required data structure (e.g., volumetric particle vs. explicit surface) for enabling measurement capabilities in Omniverse would be greatly appreciated.
i presume it would affect the scale of your stage, along with the objects residing in the stage. the same cube will be off by 100 times if the MPU is incorrectly set up (especially so if you plan on referencing the stage without Metrics Assembler extension enabled). if you were to open up the USDZ and go to the Layer tab > LMB on the Root layer > and look at the MPU setting for the stage, what do you see?
I currently don’t have a Layer tab.
I cloned Omniverse from the official GitHub repository and built it myself.
I created and built the application using the following steps:
Select what you want to create with arrow keys ↑↓: Application
Select desired template with arrow keys ↑↓: Kit Base Editor
Enter name of application .kit file [name-spaced, lowercase, alphanumeric]: [set application name]
Enter application_display_name: [set application display name]
Enter version: [set application version]
Application [application name] created successfully in [path to project]/source/apps/[application name]
Do you want to add application layers? No
So, I chose Kit Base Editor as the template and answered No to “Do you want to add application layers?”.
That seems to have created an application without the Layer UI by default.
What I want to know is:
Do I need to build it in a different way to have the Layer tab available by default,
or can I add the Layer functionality later via an extension?
here’s another comparison. i created a cube prim in a stage where MPU = 1.0 (m). the resulting cube should have diagonal measurement of 1.4m on any given face.
i see. i installed as USD Composer instead of Kit Base Editor. if you are able to find Layer related extensions, i would probably go ahead and enable them. attached are some of the resulting extensions when searching for Layer (and you may need to wait for the registery to resync if you don’t see them which may take between 5 -10 minutes):
Thank you for your response. I agree with your point regarding the scaling issue.
Scale Information (MPU): We already use CCTAG (Circular Color Tag) markers to perform real-world scale calibration during the SfM (Structure from Motion) stage. Furthermore, the MPU (Meters Per Unit) is set to 1.0 (1.0m) when converting to USDZ. Therefore, I believe the issue is not with the scale itself.
Core Question Reconfirmation (Representation): My core question is this: Is it true that Omniverse’s default measurement tools cannot measure distance on the Gaussian Splatting (USDZ/3DGUT) representation because its fundamental data structure is not an Explicit Surface like a Mesh, but rather a point cloud (Gaussian particle)?
Alternative Question: Is converting the 3DGS data to a Mesh mandatory for measurement, or is there an alternative setting or extension within Omniverse that can enable measurement capabilities directly on the 3DGS data?