option
MaisonMaison Skill Science des données et ML physical-ai-neural-reconstruction

physical-ai-neural-reconstruction

NVIDIA/skills NVIDIA/skills

Achemine les requêtes NuRec/Neural Reconstruction vers la compétence NVIDIA en amont appropriée (ensembles de données, conversion, apprentissage, rendu, extraction d'objets, nettoyage des images).

...Développer tout
2
Heure mise à jour 28 septembre 2026

Routeur de reconstruction neuronale physique (NuRec)

Objectif

Il s'agit d'un routeur léger destiné aux requêtes NVIDIA Neural Reconstruction (NuRec). Il Il pointe vers la compétence en amont « nurec-index » disponible à l’adresse https://github.com/NVIDIA/nurec-skills et vers ses cinq compétences sœurs (physical-ai-datasets, ncore, nre, asset-harvester, nurec-fixer). Utilisez cette compétence pour :

  • Identifier quelle compétence sœur en amont répond à une question NuRec.
  • Localiser, cloner ou actualiser le checkout canonique de nurec-skills.
  • Organiser les workflows NuRec en plusieurs étapes (données → conversion → entraînement → rendu → nettoyage) avant d’ouvrir la recette en amont.

Les recettes canoniques (entraînement, rendu, conversion des données, téléchargement de jeux de données, collecte d’objets, nettoyage d’images) se trouvent dans les compétences sœurs en amont. Ne copiez ni ne reconstituez jamais leurs commandes ici.

N’utilisez PAS cette compétence pour :

  • le packaging SimReady de maillages CAO ou sources → utilisez omniverse-cad-to-simready.
  • Optimisation générique des performances USD sans rapport avec NuRec → utilisez omniverse-usd-performance-tuning.
  • Configuration de l’infrastructure des opérateurs AKS / OSMO / NIM → utilisez physical-ai-infrastructure-setup-and-resilient-scaling.

Quand l’utiliser

Consultez d’abord cette compétence dès qu’un utilisateur mentionne l’un des éléments suivants :

nurec, routeur nurec, index nurec, reconstruction neuronale, moteur de reconstruction neuronale, NRE, 3DGUT, 3DGRT, USDZ, NCore V4, simulation de capteurs, synthèse de vues innovante, PhysicalAI-Autonomous-Vehicles-NuRec, PhysicalAI-NuRec-PPISP, Cosmos-Drive-Dreams, collecteur de ressources, nurec fixer, DiffusionHarmonizer, harmonizer, difix, difix3d, serve-grpc, render-grpc, warm serve-grpc, client léger NRE, batch_render_rgb, nurec teardown, « par où commencer avec NuRec », « quelle compétence NuRec dois-je utiliser pour X ? ».

Déterminez quelle compétence sœur en amont répond à la question, récupérez-la (voir « Localiser et récupérer les compétences en amont »), puis suivez le corps de cette compétence.

Prérequis

La compétence « Router » elle-même n’a aucun prérequis d’exécution au-delà de Git pour récupérer les compétences en amont. Les compétences sœurs en aval nécessitent :

  • Docker + NVIDIA Container Toolkit + GPU — pour les conteneurs nre, nre-tools et nurec-fixer (nvcr.io/nvidia/nre/nre, nvcr.io/nvidia/nre/nre-tools, nvcr.io/nvidia/cosmos/cosmos-predict2-container:1.2).
  • Clé API NGC (NGC_API_KEY) — pour récupérer les conteneurs NGC.
  • Jeton Hugging Face (HF_TOKEN) avec les licences restreintesnvidia/PhysicalAI-*, nvidia/DiffusionHarmonizer et nvidia/asset-harvester acceptées au préalable sur Hugging Face.
  • Python 3.10+ avec huggingface_hub installé.
  • (Facultatif) CARLA, Isaac Sim 5.1 ou AlpaSim pour l'intégration d'un simulateur via serve-grpc.

Vérifiez les secrets en toute sécurité (n'affichez pas les valeurs) :

hf auth whoami
[ -n "${HF_TOKEN:-}" ]      && echo "Longueur de HF_TOKEN = ${#HF_TOKEN}"      || echo "HF_TOKEN non défini"
[ -n "${NGC_API_KEY:-}" ]   && echo "Longueur de NGC_API_KEY = ${#NGC_API_KEY}" || echo "NGC_API_KEY non défini"

Voir references/secrets-handling.md pour connaître les anti-modèles bash à éviter.

Qu'est-ce que NuRec ?

NuRec (NVIDIA Omniverse Neural Reconstruction) utilise des enregistrements provenant de caméras, de LiDAR, de radars ou de systèmes stéréoscopiques — généralement issus d’une voiture autonome ou d’un robot — et les transforme en une scène 3D que vous pouvez ré-afficher depuis n’importe quel point de vue. Termes fréquemment utilisés :

  • NRE — « Neural Reconstruction Engine ». NuRec est le produit ; NRE est le moteur qui s'occupe de l'entraînement et du rendu. Les deux renvoient à la compétencenre en amont.
  • USDZ — le format de fichier d’une scène entraînée. Une archive zip que Omniverse, Isaac Sim et CARLA peuvent ouvrir.
  • NCore V4 — le format d’entrée utilisé par NRE. Les enregistrements bruts doivent être convertis au format NCore V4 avant l’entraînement.
  • 3DGUT / 3DGRT — les deux variantes de « Gaussian Splatting » 3D utilisées en interne par NRE. La recette Hydra par défaut en choisit une ; la plupart des utilisateurs ne la configurent jamais manuellement.

Un projet NuRec type comporte trois étapes :

  1. Obtenir les données d’entrée — convertir votre propre enregistrement au format NCore V4 (ncore), ou télécharger un ensemble de données pré-converti (physical-ai-datasets).
  2. Entraînez la reconstruction — transmettez le fichier NCore V4 à NRE ; vous obtiendrez un fichier USDZ (nre).
  3. Rendu de nouvelles vues — effectuez le rendu d’images, de vidéos ou de balayages LiDAR à partir du fichier USDZ (nre).

Les projets qui souhaitent simplement utiliser une scène existante publiée par NVIDIA peuvent ignorer l’étape 2.

Choisissez une compétence

Faites correspondre l’objectif de l’utilisateur dans la colonne de gauche et ouvrez la compétence en amont correspondante dans la colonne de droite. Les flèches indiquent « effectuez ces étapes dans l’ordre ».

Je souhaite… Compétence en amont
Trouver ou télécharger un ensemble de données NuRec publié par NVIDIA physical-ai-datasets
Convertir mes propres enregistrements de caméra / LiDAR / radar / profondeur / stéréo au format NCore V4 ncore
Écrire un nouveau convertisseur pour une configuration de capteurs non prise en charge (drone, RGB-D, ROS 2 bag, COLMAP, ScanNet++) ncore
Entraîner une reconstruction 3D à partir d'un clip NCore ncore → nre
Générer les données d'entrée supplémentaires requises par NRE (masques de segmentation, profondeur, masque ego) nre (utilise le conteneur nre-tools )
Rendu d’un fichier USDZ en respectant les positions d’origine de la caméra nre
Rendu en pleine résolution / qualité maximale nre (voir « Préréglages de qualité »)
Rendu selon une trajectoire décalée (par exemple, voiture déplacée de 3 m vers la gauche) nre
Rendu via un serveur afin que CARLA / Isaac Sim / AlpaSim / un simulateur personnalisé puisse demander des images nre (serve-grpc)
Rendu du même fichier USDZ plusieurs fois à la suite depuis Python avec une latence minimale par appel nre ( serve-grpc en mode « warm » + client Python léger / batch_render_rgb)
Rendu de balayages LiDAR (nuages de points) à partir d’un fichier USDZ nre (render-grpc --lidar)
Ignorer l'entraînement et se contenter de rendre une scène NuRec déjà créée par NVIDIA physical-ai-datasets → nre
Extraire des objets 3D individuels (voitures, piétons) d’un clip de conduite asset-harvester
Ajouter, supprimer ou remplacer des voitures / piétons dans une scène NuRec asset-harvester → nre
Nettoyer ou harmoniser les images rendues (effets fantômes, flottements, scintillements, éclairage/ombres) nurec-fixer, ou --enable-difix dans nre pour un rendu en ligne
Exporter la scène au format PLY, maillage, cartes de profondeur, masque « ego », etc. nre
Mettre à niveau un ancien fichier USDZ afin que les versions plus récentes de NRE le chargent plus rapidement nre (upgrade-artifact)
Ouvrir un fichier USDZ ou PLY dans une visionneuse de navigateur nre (viewer / ply_viewer)
Mesurer la qualité de rendu (PSNR, SSIM, LPIPS) par rapport à la référence nre (eval-rendering-metrics)
Comparer différentes méthodes de reconstruction sur les mêmes scènes physical-ai-datasets (PhysicalAI-NuRec-PPISP) → nre
Entraînement sur plusieurs GPU ou sur SLURM nre (Workflow D)

Workflows courants

Six workflows de bout en bout sont documentés dans references/workflows.md:

  • A. Créez une scène NuRec à partir de votre propre enregistrement.
  • B. Utilisez une scène NuRec déjà entraînée par NVIDIA.
  • C. Ajouter, supprimer ou remplacer des objets 3D dans une scène.
  • D. Nettoyer les images rendues.
  • E. Évaluer la qualité de la reconstruction.
  • F. Connectez NuRec à un simulateur.

Ouvrir ce fichier lorsque la tâche de l’utilisateur recouvre plusieurs compétences apparentées.

Compétences apparentées (en amont)

Nom Dossier en amont Fonction
physical-ai-datasets .agents/skills/physical-ai-datasets/ Répertorie et permet de télécharger les recettes pour chaque ensemble de données NVIDIA Physical AI disponibles sur Hugging Face (conduite, robotique, manipulation, scènes NuRec, benchmarks).
ncore .agents/skills/ncore/ Convertit tout enregistrement de capteur au format NCore V4 (le format requis par NRE). Couvre également la création d'un nouveau convertisseur.
nre .agents/skills/nre/ Le moteur de reconstruction neuronale lui-même. Il entraîne, effectue le rendu (en local, via warm serve-grpc + client Python léger / batch_render_rgb, ou vers un simulateur externe), exporte des maillages / nuages de points / données de profondeur, modifie les acteurs et évalue la qualité.
asset-harvester .agents/skills/asset-harvester/ Pipeline open source sous licence Apache 2.0 qui extrait des objets 3D individuels à partir de vues clairsemées dans un clip de conduite et les enregistre au format .ply ( Gaussian splats) avec des métadonnées.
nurec-fixer .agents/skills/nurec-fixer/ Workflow autonome NVIDIA DiffusionHarmonizer — successeur public des anciennes recettes Fixer / Difix3D+ — qui nettoie les images rendues, harmonise les acteurs insérés, évalue les scores PSNR/LPIPS et, en option, affine le modèle.

Pour les chevauchements de noms (NRE vs Fixer, ncore vs nre, AV-NuRec vs Cosmos-Drive-Dreams, NuRec vs SimReady), voir references/mix-ups.md.

Localisez et récupérez les compétences en amont

Recette rapide (version complète dans references/upstream-fetch.md) :

UPSTREAM_ROOT="${NUREC_SKILLS_UPSTREAM_ROOT:-${PHYSICAL_AI_SKILL_HUB_UPSTREAM_ROOT:-$HOME/.physical-ai-skill-hub/upstreams}}"
mkdir -p "$UPSTREAM_ROOT"
if [ -d "$UPSTREAM_ROOT/nurec-skills/.git" ]; then
  git -C "$UPSTREAM_ROOT/nurec-skills" fetch --tags
  git -C "$UPSTREAM_ROOT/nurec-skills" checkout main
  git -C "$UPSTREAM_ROOT/nurec-skills" pull --ff-only
else
  git clone --depth 1 https://github.com/NVIDIA/nurec-skills.git \
    "$UPSTREAM_ROOT/nurec-skills"
fi
test -f "$UPSTREAM_ROOT/nurec-skills/.agents/skills/SKILL.md"

Lisez ensuite la compétence en amont avant d'exécuter toute commande modifiant le contenu :

cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills/SKILL.md"          # routeur
cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills//SKILL.md" # frère

Ordre de recherche local (à essayer dans cet ordre avant le clone en amont) :

  1. .agents/skills//SKILL.md (Cursor, Codex, NemoClaw)
  2. .claude/skills//SKILL.md (Claude Code)
  3. .cursor/skills//SKILL.md (au niveau du projet)
  4. ~/.cursor/skills//SKILL.md (compétences personnelles)

Règles strictes

  • Routeur uniquement — ne dupliquez pas ici les recettes NuRec en amont. Lisez le corps de la compétence sœur en amont avant d'exécuter toute commande modifiante.
  • Faites référence aux compétences sœurs par leur nom : (par ex. nre), et non par le chemin du dépôt . La structure des dossiers peut changer ; le nom, lui, est portable.
  • Clonez ou actualisez https://github.com/NVIDIA/nurec-skills sous la racine partagée en amont (${NUREC_SKILLS_UPSTREAM_ROOT:-${PHYSICAL_AI_SKILL_HUB_UPSTREAM_ROOT:-$HOME/.physical-ai-skill-hub/upstreams}}/nurec-skills). Ne parcourez pas les espaces de travail généraux des développeurs tels que ~/Codes et ne réutilisez pas d’anciens clones sans rapport.
  • physical-ai-datasets couvre les jeux de données à accès restreint de Hugging Face. Ne contournez pas les conditions de licence des jeux de données ; l’utilisateur doit accepter les licences restreintesPhysicalAI-* sur Hugging Face et fournir un jeton avant le téléchargement.
  • Asset Harvester s’exécute avant le packaging en USDZ. N’appelez pas la commande ` export-external-assets`de `nre` sur des fichiers .ply créés manuellement, sauf si l’utilisateur demande explicitement de ne pas lancer Asset Harvester.
  • Pour le nettoyage des artefacts, privilégiez la commande intégrée --enable-difix dans nre. N’utilisez l’outil autonome nurec-fixer que lorsque l’utilisateur a besoin de la fiche publique du code/modèle, d’une évaluation par paires, d’un réglage fin, ou de corrections sur des images déjà rendues.
  • N’inventez pas de commandes NRE / NCore / DiffusionHarmonizer de votre propre chef. Relisez la skill sœur en amont — les versions évoluent rapidement (NRE release_26.04 est la balise épinglée actuelle).
  • Ce routeur ne déploie pas d’infrastructure. Redirigez la configuration des opérateurs AKS / OSMO / NIM vers physical-ai-infrastructure-setup-and-resilient-scaling.

Limitations

  • Routeur uniquement. Cette compétence n’exécute jamais de commandes NuRec modifiant les données. L’ensemble de l’entraînement, du rendu, de la conversion et de l’harmonisation s’effectue dans les compétences sœurs en amont.
  • Épinglé en amont. Les recettes se trouvent dans https://github.com/NVIDIA/nurec-skills, qui évolue en dehors de ce dépôt. Les clones obsolètes peuvent présenter des divergences ; effectuez toujours un `git pull` de l’amont avant de vous fier à une compétence sœur.
  • Contenu soumis à des restrictions d’accès. nvidia/PhysicalAI-*, nvidia/DiffusionHarmonizer, et nvidia/asset-harvester exigent que l’utilisateur accepte au préalable les conditions de licence sur Hugging Face. Le routeur ne peut pas contourner cette étape.
  • Empreinte importante. Un workflow NuRec complet peut occuper plus de 150 Go sur le disque. Voir references/teardown.md.
  • Pile réservée à NVIDIA. Nécessite un GPU NVIDIA ainsi que le NVIDIA Container Toolkit. Les processeurs AMD, Intel et Apple Silicon ne sont pas pris en charge.
  • Ce n’est pas un pipeline SimReady. NuRec produit un fichier USDZ rendable à partir d’un enregistrement ; le packaging SimReady de maillages CAO ou sources relève d’un pipeline différent (voir omniverse-cad-to-simready).

Dépannage

Erreur / symptôme Cause probable Solution
Clonede nurec-skills manquant ou vide Le clone en amont n'a pas encore été récupéré Exécutez le bloc « clone » dans « Locate » et récupérez les compétences en amont
Erreur403/401 lors de la récupération de nvidia/PhysicalAI-* depuis HF Licence restreinte non acceptée, ou HF_TOKEN non défini / portée incorrecte Acceptez la licence restreinte sur Hugging Face, puis connectez-vous à hf auth avec un jeton disposant d’un accès en lecture
Accès refusé : l'accès demandé à la ressource est refusé depuis nvcr.io/nvidia/nre/* NGC_API_KEY manquante ou expirée Connectez-vous à nvcr.io via Docker avec $oauthtoken / NGC_API_KEY; renouvelez la clé sur org.ngc.nvidia.com/setup/api-key si nécessaire
NRE refuse de charger un clip (« NCore V4 non valide ») L'enregistrement n'a pas été converti Exécutez la compétence ncore avant d'appeler nre
La latence au démarrage à froidde serve-grpc domine une boucle Python Appel Docker unique par rendu Utilisez la recette « nre warm serve-grpc + client Python léger » (batch_render_rgb)
Les fichiers de sortie appartiennent à root après une exécution Docker -u $(id -u):$(id -g) manquait sudo chown -R "$(id -u):$(id -g)" ; ajouter le drapeau -u la prochaine fois
Les images présentent des effets de rémanence, des artefacts flottants ou des scintillements après le rendu Le nettoyage en ligne n'est pas activé Effectuez un nouveau rendu avec nre --enable-difix, ou procédez à un post-traitement avec nurec-fixer (DiffusionHarmonizer)
Noms de compétences obsolètes (ncore-data-conversion, ancien nvidia/Fixer) dans la sortie de l'agent Compétence mise en cache obsolète Mettez à jour les références à ncore et nurec-fixer (DiffusionHarmonizer) ; voir references/maintenance.md
Anti-modèle Bash ${HF_TOKEN:+yes}${HF_TOKEN:-no}: la valeur du jeton est reproduite Mauvaise utilisation de l’expansion des paramètres Bash Faire tourner le jeton ; utiliser hf auth whoami ou des vérifications de longueur uniquement (voir references/secrets-handling.md)

Démantèlement inter-compétences

Un workflow NuRec complet peut occuper plus de 150 Go sur le disque entre les images de conteneurs, les poids de modèles, les clones de code, les environnements conda et les répertoires de sortie. Chaque compétence sœur dispose de sa propre section de démontagedédiée — lisez-les dans l’ordre indiqué dans references/teardown.md lorsque l’utilisateur n’a plus besoin du workflow.

Maintenir ce routeur à jour

La procédure pour ajouter de nouvelles compétences sœurs, effectuer des changements de nom ou modifier l'URL en amont se trouve dans references/maintenance.md. Considérez l’index nurec en amont à l’adresse https://github.com/NVIDIA/nurec-skills/blob/main/.agents/skills/SKILL.md comme faisant autorité ; cette compétence ne reflète que les tables de sélection, l’ ordre du flux de travail et la recette de récupération en amont.

Voir sur GitHub
---
name: physical-ai-neural-reconstruction
description: Routes NuRec/Neural Reconstruction requests to the correct upstream NVIDIA skill (datasets, conversion, training, rendering, object harvesting, frame cleanup).
license: Apache-2.0
---

# Physical AI Neural Reconstruction (NuRec) Router

## Purpose

This is a **thin router** for NVIDIA Neural Reconstruction (NuRec)
requests. It points at the upstream `nurec-index` skill at
`https://github.com/NVIDIA/nurec-skills` and its five sibling skills
(`physical-ai-datasets`, `ncore`, `nre`, `asset-harvester`,
`nurec-fixer`). Use this skill to:

- Identify which upstream sibling skill answers a NuRec question.
- Locate, clone, or refresh the canonical `nurec-skills` checkout.
- Order multi-step NuRec workflows (data → conversion → train →
  render → cleanup) before opening the upstream recipe.

The canonical recipes (training, rendering, data conversion, dataset
downloads, object harvesting, frame cleanup) live in the upstream
sibling skills. **Never copy or reconstruct their commands here.**

**Do NOT use this skill for:**

- SimReady packaging of CAD or source meshes → use
  `omniverse-cad-to-simready`.
- Generic USD performance tuning unrelated to NuRec → use
  `omniverse-usd-performance-tuning`.
- AKS / OSMO / NIM Operator infrastructure setup → use
  `physical-ai-infrastructure-setup-and-resilient-scaling`.

## When to Use

Read this skill **first** whenever a user mentions any of:

`nurec`, `nurec router`, `nurec index`, `neural reconstruction`,
`neural reconstruction engine`, `NRE`, `3DGUT`, `3DGRT`, `USDZ`,
`NCore V4`, `sensor sim`, `novel view synthesis`,
`PhysicalAI-Autonomous-Vehicles-NuRec`, `PhysicalAI-NuRec-PPISP`,
`Cosmos-Drive-Dreams`, `asset harvester`, `nurec fixer`,
`DiffusionHarmonizer`, `harmonizer`, `difix`, `difix3d`, `serve-grpc`,
`render-grpc`, `warm serve-grpc`, `nre thin client`, `batch_render_rgb`,
`nurec teardown`, "where do I start with NuRec", "which NuRec skill
should I use for X?".

Decide which upstream sibling skill answers the question, fetch it
(see [Locate and fetch the upstream skills](#locate-and-fetch-the-upstream-skills)),
then follow that skill's body.

## Prerequisites

Router skill itself has no runtime prerequisites beyond `git` for
fetching the upstream. Downstream sibling skills require:

- **Docker + NVIDIA Container Toolkit + GPU** — for `nre`, `nre-tools`,
  and `nurec-fixer` containers
  (`nvcr.io/nvidia/nre/nre`, `nvcr.io/nvidia/nre/nre-tools`,
  `nvcr.io/nvidia/cosmos/cosmos-predict2-container:1.2`).
- **NGC API key** (`NGC_API_KEY`) — for pulling NGC containers.
- **Hugging Face token** (`HF_TOKEN`) with the
  `nvidia/PhysicalAI-*`, `nvidia/DiffusionHarmonizer`, and
  `nvidia/asset-harvester` gated licenses **accepted in advance** on
  Hugging Face.
- **Python 3.10+** with `huggingface_hub` installed.
- **(Optional)** CARLA, Isaac Sim 5.1, or AlpaSim for simulator
  integration over `serve-grpc`.

Verify secrets safely (do not echo values):

```bash
hf auth whoami
[ -n "${HF_TOKEN:-}" ]      && echo "HF_TOKEN length=${#HF_TOKEN}"      || echo "HF_TOKEN unset"
[ -n "${NGC_API_KEY:-}" ]   && echo "NGC_API_KEY length=${#NGC_API_KEY}" || echo "NGC_API_KEY unset"
```

See [`references/secrets-handling.md`](references/secrets-handling.md)
for the bash anti-patterns to avoid.

## What is NuRec?

**NuRec** (NVIDIA Omniverse Neural Reconstruction) takes camera, LiDAR,
radar, or stereo recordings — typically from a self-driving car or a
robot — and turns them into a 3D scene you can re-render from any
viewpoint. Names that come up a lot:

- **NRE** — "Neural Reconstruction Engine". NuRec is the product; NRE
  is the engine that trains and renders. Both route to the upstream
  `nre` skill.
- **USDZ** — the file format of a trained scene. A zip archive that
  Omniverse, Isaac Sim, and CARLA can open.
- **NCore V4** — the input format NRE consumes. Raw recordings must be
  converted to NCore V4 before training.
- **3DGUT / 3DGRT** — the two 3D Gaussian Splatting flavours used
  internally by NRE. The default Hydra recipe picks one; most users
  never set it manually.

A typical NuRec project has three stages:

1. **Get the input** — convert your own recording to NCore V4
   (`ncore`), or download a pre-converted dataset
   (`physical-ai-datasets`).
2. **Train the reconstruction** — feed NCore V4 to NRE; out comes a
   USDZ (`nre`).
3. **Render new views** — render images, videos, or LiDAR sweeps from
   the USDZ (`nre`).

Projects that just want to *use* an existing NVIDIA-published scene
skip step 2.

## Pick a skill

Match the user's goal in the left column and open the named upstream
skill on the right. Arrows mean "do these in order".

| I want to… | Upstream skill |
|------------|----------------|
| Find or download a NuRec dataset NVIDIA has published | `physical-ai-datasets` |
| Convert my own camera / LiDAR / radar / depth / stereo recording into NCore V4 | `ncore` |
| Write a new converter for an unsupported sensor setup (drone, RGB-D, ROS 2 bag, COLMAP, ScanNet++) | `ncore` |
| Train a 3D reconstruction from an NCore clip | `ncore` → `nre` |
| Generate the extra inputs NRE needs (segmentation masks, depth, ego mask) | `nre` (uses the `nre-tools` container) |
| Render a USDZ along the original camera positions | `nre` |
| Render at full resolution / highest quality | `nre` (see "Quality presets") |
| Render along a shifted trajectory (e.g. car moved 3 m left) | `nre` |
| Render through a server so CARLA / Isaac Sim / AlpaSim / a custom simulator can ask for frames | `nre` (`serve-grpc`) |
| Render the same USDZ many times back-to-back from Python with minimal per-call latency | `nre` (warm `serve-grpc` + thin Python client / `batch_render_rgb`) |
| Render LiDAR sweeps (point clouds) from a USDZ | `nre` (`render-grpc --lidar`) |
| Skip training and just render a NuRec scene NVIDIA already built | `physical-ai-datasets` → `nre` |
| Extract individual 3D objects (cars, pedestrians) from a driving clip | `asset-harvester` |
| Add, remove, or replace cars / pedestrians in a NuRec scene | `asset-harvester` → `nre` |
| Clean up or harmonize rendered frames (ghosting, floaters, flicker, lighting/shadows) | `nurec-fixer`, **or** `--enable-difix` inside `nre` for inline rendering |
| Export the scene as a PLY, mesh, depth maps, ego mask, etc. | `nre` |
| Upgrade an old USDZ so newer NRE versions load it faster | `nre` (`upgrade-artifact`) |
| Open a USDZ or PLY in a browser viewer | `nre` (`viewer` / `ply_viewer`) |
| Measure rendering quality (PSNR, SSIM, LPIPS) against ground truth | `nre` (`eval-rendering-metrics`) |
| Benchmark different reconstruction methods on the same scenes | `physical-ai-datasets` (`PhysicalAI-NuRec-PPISP`) → `nre` |
| Train on multiple GPUs or on SLURM | `nre` (Workflow D) |

## Common workflows

Six end-to-end workflows are documented in
[`references/workflows.md`](references/workflows.md):

- **A.** Make a NuRec scene from your own recording.
- **B.** Use a NuRec scene NVIDIA has already trained.
- **C.** Add, remove, or replace 3D objects in a scene.
- **D.** Clean up rendered frames.
- **E.** Benchmark reconstruction quality.
- **F.** Connect NuRec to a simulator.

Open that file when the user's task spans more than one sibling skill.

## Sibling skills (upstream)

| Name | Upstream folder | What it does |
|------|-----------------|--------------|
| `physical-ai-datasets` | `.agents/skills/physical-ai-datasets/` | Catalog and download recipes for every NVIDIA Physical AI dataset on Hugging Face (driving, robotics, manipulation, NuRec scenes, benchmarks). |
| `ncore` | `.agents/skills/ncore/` | Converts any sensor recording to NCore V4 (the format NRE needs). Also covers writing a new converter. |
| `nre` | `.agents/skills/nre/` | The Neural Reconstruction Engine itself. Trains, renders (locally, via warm `serve-grpc` + thin Python client / `batch_render_rgb`, or to an external simulator), exports meshes / point clouds / depth, edits actors, evaluates quality. |
| `asset-harvester` | `.agents/skills/asset-harvester/` | Open-source Apache-2.0 pipeline that extracts individual 3D objects from sparse views in a driving clip and saves them as `.ply` Gaussian splats with metadata. |
| `nurec-fixer` | `.agents/skills/nurec-fixer/` | Standalone NVIDIA **DiffusionHarmonizer** workflow — public successor to the older Fixer / Difix3D+ recipes — that cleans rendered frames, harmonizes inserted actors, evaluates PSNR/LPIPS, and optionally fine-tunes the model. |

For naming overlaps (NRE vs Fixer, ncore vs nre, AV-NuRec vs
Cosmos-Drive-Dreams, NuRec vs SimReady) see
[`references/mix-ups.md`](references/mix-ups.md).

## Locate and fetch the upstream skills

Quick recipe (full version in
[`references/upstream-fetch.md`](references/upstream-fetch.md)):

```bash
UPSTREAM_ROOT="${NUREC_SKILLS_UPSTREAM_ROOT:-${PHYSICAL_AI_SKILL_HUB_UPSTREAM_ROOT:-$HOME/.physical-ai-skill-hub/upstreams}}"
mkdir -p "$UPSTREAM_ROOT"
if [ -d "$UPSTREAM_ROOT/nurec-skills/.git" ]; then
  git -C "$UPSTREAM_ROOT/nurec-skills" fetch --tags
  git -C "$UPSTREAM_ROOT/nurec-skills" checkout main
  git -C "$UPSTREAM_ROOT/nurec-skills" pull --ff-only
else
  git clone --depth 1 https://github.com/NVIDIA/nurec-skills.git \
    "$UPSTREAM_ROOT/nurec-skills"
fi
test -f "$UPSTREAM_ROOT/nurec-skills/.agents/skills/SKILL.md"
```

Then read the upstream skill before running any mutating command:

```bash
cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills/SKILL.md"          # router
cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills/<folder>/SKILL.md" # sibling
```

Local lookup order (try in order before the upstream clone):

1. `.agents/skills/<name>/SKILL.md` (Cursor, Codex, NemoClaw)
2. `.claude/skills/<name>/SKILL.md` (Claude Code)
3. `.cursor/skills/<name>/SKILL.md` (project-scoped)
4. `~/.cursor/skills/<name>/SKILL.md` (personal skills)

## Hard Rules

- Router only — do not duplicate upstream NuRec recipes here. Read
  the upstream sibling skill body before running any mutating command.
- Refer to sibling skills by their `name:` (e.g. `nre`), not by repo
  path. Folder layouts can change; the name is portable.
- Clone or refresh `https://github.com/NVIDIA/nurec-skills` under the
  shared upstream root
  (`${NUREC_SKILLS_UPSTREAM_ROOT:-${PHYSICAL_AI_SKILL_HUB_UPSTREAM_ROOT:-$HOME/.physical-ai-skill-hub/upstreams}}/nurec-skills`).
  Do not scan broad developer workspaces such as `~/Codes` or reuse
  unrelated old clones.
- `physical-ai-datasets` covers gated Hugging Face datasets. Do not
  bypass dataset license terms; the user must accept the
  `PhysicalAI-*` gated licenses on Hugging Face and provide a token
  before downloading.
- Asset Harvester runs **before** packaging into a USDZ. Do not call
  `nre`'s `export-external-assets` on hand-rolled `.ply` files unless
  the user explicitly asks to skip Asset Harvester.
- For artifact cleanup, prefer the built-in `--enable-difix` path in
  `nre`. Route to the standalone `nurec-fixer` only when the user
  needs the public code/model card, paired evaluation, fine-tuning,
  or fixes on previously rendered frames.
- Do not invent NRE / NCore / DiffusionHarmonizer commands from
  memory. Re-read the upstream sibling skill — versions move fast
  (NRE `release_26.04` is the current pinned tag).
- This router does not deploy infrastructure. Route AKS / OSMO /
  NIM Operator setup to
  `physical-ai-infrastructure-setup-and-resilient-scaling`.

## Limitations

- **Router only.** This skill never executes mutating NuRec commands.
  All training, rendering, conversion, and harmonization happens in
  upstream sibling skills.
- **Upstream-pinned.** Recipes live in
  `https://github.com/NVIDIA/nurec-skills`, which evolves outside
  this repo. Stale clones can drift; always `git pull` the upstream
  before relying on a sibling skill.
- **Gated content.** `nvidia/PhysicalAI-*`, `nvidia/DiffusionHarmonizer`,
  and `nvidia/asset-harvester` require the user to accept license
  terms on Hugging Face first. The router cannot bypass this.
- **Heavy footprint.** A complete NuRec workflow can leave 150 GB+
  on disk. See [`references/teardown.md`](references/teardown.md).
- **NVIDIA-only stack.** Requires an NVIDIA GPU plus the NVIDIA
  Container Toolkit. AMD / Intel / Apple Silicon are not supported.
- **Not a SimReady pipeline.** NuRec produces a renderable USDZ from
  a recording; SimReady packaging of CAD or source meshes is a
  different pipeline (see `omniverse-cad-to-simready`).

## Troubleshooting

| Error / symptom | Likely cause | Solution |
|-----------------|--------------|----------|
| `nurec-skills` clone missing or empty | Upstream not fetched yet | Run the clone block in [Locate and fetch the upstream skills](#locate-and-fetch-the-upstream-skills) |
| `403`/`401` pulling `nvidia/PhysicalAI-*` from HF | Gated license not accepted, or `HF_TOKEN` unset / wrong scope | Accept the gated license on Hugging Face, then `hf auth login` with a token that has `read` access |
| `denied: requested access to the resource is denied` from `nvcr.io/nvidia/nre/*` | Missing or expired `NGC_API_KEY` | `docker login nvcr.io` with `$oauthtoken` / `NGC_API_KEY`; rotate the key at `org.ngc.nvidia.com/setup/api-key` if needed |
| NRE refuses to load a clip ("not valid NCore V4") | Recording was not converted | Run the `ncore` skill before invoking `nre` |
| `serve-grpc` cold-start latency dominates a Python loop | One-shot Docker invocation per render | Use the `nre` warm `serve-grpc` + thin Python client (`batch_render_rgb`) recipe |
| Output files are owned by `root` after a `docker run` | `-u $(id -u):$(id -g)` was missing | `sudo chown -R "$(id -u):$(id -g)" <output_dir>`; add the `-u` flag next time |
| Frames have ghosting / floaters / flicker after rendering | Inline cleanup not enabled | Re-render with `nre --enable-difix`, or post-process with `nurec-fixer` (DiffusionHarmonizer) |
| Stale skill names (`ncore-data-conversion`, old `nvidia/Fixer`) in agent output | Out-of-date cached skill | Update references to `ncore` and `nurec-fixer` (DiffusionHarmonizer); see [`references/maintenance.md`](references/maintenance.md) |
| Bash anti-pattern `${HF_TOKEN:+yes}${HF_TOKEN:-no}` echoed token value | Misuse of bash parameter expansion | Rotate the token; use `hf auth whoami` or length-only checks (see [`references/secrets-handling.md`](references/secrets-handling.md)) |

## Cross-skill teardown

A complete NuRec workflow can leave **150 GB+** on disk between
container images, model weights, code clones, conda envs, and output
directories. Each sibling skill has its own dedicated `Teardown`
section — read them in the order documented in
[`references/teardown.md`](references/teardown.md) when the user no
longer needs the workflow.

## Keeping this router up to date

Procedure for adding new sibling skills, renames, or upstream URL
changes lives in [`references/maintenance.md`](references/maintenance.md).
Treat the upstream `nurec-index` at
<https://github.com/NVIDIA/nurec-skills/blob/main/.agents/skills/SKILL.md>
as authoritative; this skill mirrors only the picker tables, the
workflow ordering, and the upstream fetch recipe.

Tous les fichiers

1 fichiers

Installer physical-ai-neural-reconstruction

Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.

Télécharger le ZIP

Clonez le dépôt et copiez les fichiers de compétence dans votre projet.

git clone https://github.com/NVIDIA/skills/tree/main/skills/physical-ai-neural-reconstruction # Copy SKILL.md to your .claude/skills/ directory

Copier Copier
Configuration rapide: Copiez le dossier de la compétence dans .claude/skills/ Claude détectera et utilisera automatiquement la compétence
Dépôt NVIDIA/skills

Compétences similaires

web-search
Heure mise à jour 29 juin 2026
webapp-testing
Heure mise à jour 29 juin 2026
lark-base
Heure mise à jour 5 juillet 2026
agentmail
Heure mise à jour 29 juin 2026
OR