Digital Twins + Simulation

Real-to-Sim Pipeline

An automated pipeline converting real-world facility scans into semantic, physics-enabled simulation environments (USD) for high-fidelity robot validation.

Demo clip available on request. Visuals shown are AI-generated stand-ins because I can't share the original customer assets.

Role Simulation Engineer
Timeline 2024
Stack Python · OpenUSD · Isaac Sim
Impact 80% Faster Env Generation

Overview

Developed a toolchain to ingest LiDAR/RGB scans of customer facilities, segment them semantically, and auto-generate USD (Universal Scene Description) assets for NVIDIA Isaac Sim.

Problem

Manually recreating customer environments in 3D tools took 2-3 weeks per site. This bottleneck prevented site-specific validation before deployment, leading to costly on-site debugging.

Pipeline Architecture

End-to-end flow from raw scan data to simulation-ready USD stage.

Raw Scan(.e57/.ply) Clean/Decimate(CloudCompare) Semantic Seg(Wall/Floor) USD Gen(Python API) Physics/Nav(Isaac Sim) Sim Ready

Code Snippet: USD Mesh Generation

Python script using the Pixar USD API to define mesh topology and apply physics colliders programmatically.

generate_usd.py

from pxr import Usd, UsdGeom, UsdPhysics, Sdf

def create_wall_mesh(stage, path, points, normals):
    # Define mesh prim
    mesh = UsdGeom.Mesh.Define(stage, path)
    
    # Set vertex data
    mesh.CreatePointsAttr(points)
    mesh.CreateNormalsAttr(normals)
    
    # Add collision API
    UsdPhysics.CollisionAPI.Apply(mesh.GetPrim())
    
    # Define material binding
    UsdShade.MaterialBindingAPI.Apply(mesh.GetPrim())
    
    return mesh

# Batch process segmented point clouds
for segment in segments:
    create_wall_mesh(stage, f"/World/Walls/{segment.id}", segment.points, segment.normals)
                    

Approach

  • Decimation: Automated downsampling of dense point clouds (50M+ points) to manageable meshes while preserving geometric fidelity for Nav2.
  • Semantic Labeling: Used plane fitting (RANSAC) to extract floors and walls, separating them into distinct USD layers.
  • Physics Integration: Automatically applied rigid body colliders and friction materials to floor surfaces.

Media & Artifacts

Raw point cloud scan of a warehouse facility
Input: Raw LiDAR scan.
Final physics-enabled USD environment in Isaac Sim
Output: Physics-enabled Digital Twin.

Results

  • Reduced environment generation time from 2 weeks to 3 days.
  • Enabled site-specific validation of navigation parameters before the robot arrived on site.
  • Found 3 critical navigation failures in narrow corridors using the digital twin prior to deployment.
← Back to Projects