選項
首頁首頁 Skill 數據科學與機器學習 physical-ai-neural-reconstruction

physical-ai-neural-reconstruction

NVIDIA/skills NVIDIA/skills

將 NuRec/神經重建請求路由至正確的上游 NVIDIA 技能(資料集、轉換、訓練、渲染、物件萃取、幀清理)。

...展開全部
2
更新時間 2026-09-28

物理人工智慧神經重構(NuRec)路由器

目的

這是一個專為 NVIDIA 神經重建(NuRec) 請求設計的輕量級路由器。 它指向位於 https://github.com/NVIDIA/nurec-skills 的上游nurec-index技能,以及其五個同級技能 (physical-ai-datasets、ncore、nre、asset-harvester、 nurec-fixer)。使用此技能可:

  • 識別哪個上游同級技能會回應 NuRec 問題。
  • 定位、克隆或更新標準的nurec-skills代碼庫。
  • 在開啟上游配方前,安排多步驟的 NuRec 工作流程(資料 → 轉換 → 訓練 → 渲染 → 清理)。

標準流程(訓練、渲染、資料轉換、資料集 下載、物件蒐集、幀清理)位於上游 姊妹技能中。切勿在此處複製或重建其指令。

請勿將此技能用於:

  • CAD 或原始網格的 SimReady 封裝 → 請使用 omniverse-cad-to-simready。
  • 與 NuRec 無關的一般 USD 效能調校 → 請使用 omniverse-usd-performance-tuning。
  • AKS / OSMO / NIM 運算員基礎架構設定 → 請使用 physical-ai-infrastructure-setup-and-resilient-scaling。

何時使用

每當使用者提及以下任何項目時,請先閱讀此技能說明:

nurec、nurec 路由器、nurec 索引、神經重建、 神經重建引擎、NRE、3DGUT、3DGRT、USDZ、 NCore V4、感測器模擬、創新視角合成、 PhysicalAI-Autonomous-Vehicles-NuRec、PhysicalAI-NuRec-PPISP、 Cosmos-Drive-Dreams、資產採集器、nurec 修復器、 DiffusionHarmonizer、調和器、difix、difix3d、serve-grpc、 渲染-GRPC、預熱服務-GRPC、NRE 輕量級客戶端、批次渲染-RGB、 NuRec 清理工具、「該如何開始使用 NuRec」、「對於 X 該使用哪個 NuRec 技能 ?」。

決定哪個上游同級技能能解答該問題,並取得該技能 (參見「定位並取得上游技能」), 接著遵循該技能的主體內容。

先決條件

Router 技能本身除了需要git來 擷取上游技能外,沒有其他執行時先決條件。下游同級技能則需要:

  • Docker + NVIDIA Container Toolkit + GPU— 用於nre、nre-tools 及nurec-fixer容器 (nvcr.io/nvidia/nre/nre、nvcr.io/nvidia/nre/nre-tools、 nvcr.io/nvidia/cosmos/cosmos-predict2-container:1.2)。
  • NGC API 金鑰(NGC_API_KEY) — 用於拉取 NGC 容器。
  • Hugging Face 憑證(HF_TOKEN),且須事先在 Hugging Face 上獲得 nvidia/PhysicalAI-*、nvidia/DiffusionHarmonizer 及 nvidia/asset-harvester等受限授權的核准。
  • Python 3.10 以上版本,並已安裝huggingface_hub。
  • (可選)CARLA、Isaac Sim 5.1 或 AlpaSim,用於透過 serve-grpc 進行模擬器整合。

請安全地驗證密鑰(切勿輸出值):

hf auth whoami
[ -n "${HF_TOKEN:-}" ]      && echo "HF_TOKEN 長度=${#HF_TOKEN}"      || echo "HF_TOKEN 未設定"
[ -n "${NGC_API_KEY:-}" ]   && echo "NGC_API_KEY 長度=${#NGC_API_KEY}" || echo "NGC_API_KEY 未設定"

請參閱references/secrets-handling.md 以了解應避免的 bash 反模式。

什麼是 NuRec?

NuRec(NVIDIA Omniverse 神經重建)會將攝影機、LiDAR、 雷達或立體影像記錄——通常來自自動駕駛汽車或 機器人——轉化為 3D 場景,讓您能從任何 視角重新渲染。常見的名稱包括:

  • NRE—— 「神經重建引擎」。NuRec 是產品;NRE 則是負責訓練與渲染的引擎。兩者皆指向上游的 nre技能。
  • USDZ—— 已訓練場景的檔案格式。這是一種 ZIP 壓縮檔, Omniverse、Isaac Sim 及 CARLA 皆可開啟。
  • NCore V4—— NRE 所使用的輸入格式。原始錄製資料必須在 訓練前轉換為 NCore V4 格式。
  • 3DGUT / 3DGRT—— NRE 內部使用的兩種 3D 高斯噴灑(Gaussian Splatting)變體。 預設的 Hydra 配方會自動選擇其中一種;多數使用者 從未手動設定過此參數。

典型的 NuRec 專案包含三個階段:

  1. 取得輸入資料— 將您自己的錄製資料轉換為 NCore V4 (ncore),或下載已轉換的資料集 (physical-ai-datasets)。
  2. 訓練重建— 將 NCore V4 饋入 NRE;輸出為 USDZ 檔案 (nre)。
  3. 渲染新視角— 從 USDZ (nre) 渲染圖像、影片或 LiDAR 掃描資料。

若專案僅需使用NVIDIA 已發布的現有場景, 則可跳過步驟 2。

選擇一項技能

在左欄中找到與使用者目標相符的項目,並開啟右側對應的 上游技能。箭頭表示「依序執行」。

我想…… 上游技能
尋找或下載 NVIDIA 已發布的 NuRec 資料集 physical-ai-datasets
將我自己的相機/LiDAR/雷達/深度/立體影像記錄轉換為 NCore V4 ncore
為未受支援的感測器配置(無人機、RGB-D、ROS 2 bag、COLMAP、ScanNet++)編寫新的轉換器 ncore
根據 NCore 片段訓練 3D 重建模型 ncore→nre
產生 NRE 所需的額外輸入(分割遮罩、深度、自我遮罩) nre(使用nre-tools容器)
根據原始相機位置渲染 USDZ 檔案 nre
以全解析度/最高品質進行渲染 nre(參見「品質預設」),
沿偏移軌跡渲染(例如:汽車向左移動 3 公尺) nre
透過伺服器進行渲染,以便 CARLA / Isaac Sim / AlpaSim / 自訂模擬器能請求幀資料 nre(serve-grpc)
透過 Python 連續多次渲染同一 USDZ 檔案,並將每次呼叫的延遲降至最低 nre(預熱serve-grpc+ 輕量級 Python 客戶端 /batch_render_rgb)
從 USDZ 渲染 LiDAR 掃描資料(點雲) nre(render-grpc --lidar)
跳過訓練步驟,直接渲染 NVIDIA 已預先建置的 NuRec 場景 physical-ai-datasets→nre
從駕駛影片片段中擷取個別 3D 物件(車輛、行人) asset-harvester
在 NuRec 場景中新增、移除或替換車輛/行人 asset-harvester→nre
清理或調整渲染幀(重影、浮點物、閃爍、光照/陰影) nurec-fixer,或在 nre中使用--enable-difix進行內嵌渲染
將場景匯出為 PLY、網格、深度圖、第一人稱遮罩等格式 nre
升級舊版 USDZ 檔案,使較新版本的 NRE 能更快載入 nre(upgrade-artifact)
在瀏覽器檢視器中開啟 USDZ 或 PLY 檔案 nre(檢視器/ply_viewer)
根據真實參考資料測量渲染品質(PSNR、SSIM、LPIPS) nre(eval-rendering-metrics)
針對相同場景對不同重建方法進行基準測試 physical-ai-datasets(PhysicalAI-NuRec-PPISP) →nre
在多張 GPU 或 SLURM 環境上進行訓練 nre(工作流程 D)

常見工作流程

六種端到端工作流程已記錄於 references/workflows.md 中:

  • A.根據您自己的錄製內容建立 NuRec 場景。
  • B.使用 NVIDIA 已預先訓練好的 NuRec 場景。
  • C.在場景中新增、移除或替換 3D 物件。
  • D.清理渲染後的幀。
  • E.評估重建品質。
  • F.將 NuRec 連接至模擬器。

當使用者的任務橫跨多個同級技能時,開啟該檔案。

同級技能(上游)

名稱 上游資料夾 功能說明
physical-ai-datasets .agents/skills/physical-ai-datasets/ 彙整並提供 Hugging Face 上所有 NVIDIA 物理 AI 資料集(駕駛、機器人、操作、NuRec 場景、基準測試)的食譜下載。
ncore .agents/skills/ncore/ 將任何感測器記錄轉換為 NCore V4(NRE 所需的格式)。亦涵蓋撰寫新轉換器的相關內容。
nre .agents/skills/nre/ 神經重建引擎(Neural Reconstruction Engine)本身。負責訓練、渲染(可透過 warmserve-grpc搭配輕量 Python 客戶端 /batch_render_rgb 進行本地渲染,或輸出至外部模擬器)、匯出網格/點雲/深度資料、編輯角色,以及評估品質。
asset-harvester .agents/skills/asset-harvester/ 基於 Apache-2.0 開源授權的處理流程,能從駕駛影片中的稀疏視角中提取個別 3D 物件,並將其儲存為附帶元資料的.ply高斯散佈格式檔案。
nurec-fixer .agents/skills/nurec-fixer/ 獨立的 NVIDIADiffusionHarmonizer工作流程——舊版 Fixer / Difix3D+ 配方之公開繼任者——用於清理渲染畫面、調和插入的角色、評估 PSNR/LPIPS,並可選擇性地對模型進行微調。

關於名稱重疊(NRE 與 Fixer、ncore 與 nre、AV-NuRec 與 Cosmos-Drive-Dreams、NuRec 與 SimReady)請參閱 references/mix-ups.md。

定位並取得上游技能

快速配方(完整版本請參閱 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"

接著在執行任何會變更資料的指令之前,先讀取上游技能:

cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills/SKILL.md"          # 路由器
cat "$UPSTREAM_ROOT/nurec-skills/.agents/skills//SKILL.md" # 同級

本機查詢順序(在執行上游克隆之前依序嘗試):

  1. .agents/skills//SKILL.md(Cursor、Codex、NemoClaw)
  2. .claude/skills//SKILL.md(Claude Code)
  3. .cursor/skills//SKILL.md(專案範圍內)
  4. ~/.cursor/skills//SKILL.md(個人技能)

硬性規則

  • 僅限路由器使用 — 請勿在此處重複上游 NuRec 配方。執行任何會變更資料的指令前,請先閱讀 上游同級技能的主體內容。
  • 請以名稱(例如nre)而非儲存庫 路徑來引用同級技能。資料夾結構可能變更;名稱則具可移植性。
  • 在 上游共用根目錄下克隆或刷新https://github.com/NVIDIA/nurec-skills (${NUREC_SKILLS_UPSTREAM_ROOT:-${PHYSICAL_AI_SKILL_HUB_UPSTREAM_ROOT:-$HOME/.physical-ai-skill-hub/upstreams}}/nurec-skills) 下克隆或刷新 https://github.com/NVIDIA/nurec-skills。 請勿掃描~/Codes等廣泛的開發者工作區,亦請勿重複使用 無關的舊克隆。
  • physical-ai-datasets涵蓋 Hugging Face 上的受限資料集。請勿 繞過資料集授權條款;使用者必須在 Hugging Face 上接受 PhysicalAI-*受限授權,並提供代幣 後才能下載。
  • Asset Harvester會在打包成 USDZ之前執行。請勿對 手動製作的.ply檔案呼叫nre 的 export-external-assets功能,除非 使用者明確要求跳過 Asset Harvester。
  • 關於產出檔案的清理,請優先使用nre 內建的--enable-difix路徑。 僅當使用者 需要公開的程式碼/模型卡、配對評估、微調, 或針對先前渲染的幀進行修正時,才應導向獨立運作的nurec-fixer。
  • 切勿憑記憶 自行編造 NRE / NCore / DiffusionHarmonizer 指令。請重新閱讀上游同級技能——版本更新迅速 (NRErelease_26.04是當前固定標籤)。
  • 此路由器不負責部署基礎架構。請將 AKS / OSMO / NIM 操作員設定轉介至 physical-ai-infrastructure-setup-and-resilient-scaling。

限制

  • 僅限路由器。此技能絕不執行會變更資料的 NuRec 指令。 所有訓練、渲染、轉換及調和作業皆在 上游同級技能中進行。
  • 上游固定。配方位於 https://github.com/NVIDIA/nurec-skills,該倉庫的更新 不在此儲存庫內進行。過期的克隆版本可能產生偏差;在依賴姊妹技能之前,請務必先執行 git pull更新上游 版本。
  • 受限內容。 nvidia/PhysicalAI-*、nvidia/DiffusionHarmonizer 以及nvidia/asset-harvester要求使用者必須先在 Hugging Face 上接受授權條款。路由器無法繞過此步驟。
  • 資源佔用龐大。完整的 NuRec 工作流程可能在磁碟上佔用 150 GB 以上 空間。請參閱references/teardown.md。
  • 僅限 NVIDIA 平台。需配備 NVIDIA GPU 以及 NVIDIA Container Toolkit。不支援 AMD / Intel / Apple Silicon。
  • 非 SimReady 管線。NuRec 會從 錄製檔產生可渲染的 USDZ 檔案;而 CAD 或原始網格的 SimReady 封裝則是 另一條管線(請參閱omniverse-cad-to-simready)。

疑難排解

錯誤/症狀 可能原因 解決方案
nurec-skills複製本遺失或為空 尚未擷取上游資料 在「定位」中執行複製區塊,並擷取上游技能
從 HF 拉取nvidia/PhysicalAI-*時發生403/401錯誤 未接受受限授權,或HF_TOKEN未設定/範圍錯誤 請在 Hugging Face 上接受受限授權,然後使用具備讀取權限的令牌透過hf auth 登入
被拒絕:來自nvcr.io/nvidia/nre/*的資源存取請求遭拒絕 NGC_API_KEY缺失或已過期 使用$oauthtoken/NGC_API_KEY 執行 `docker login nvcr.io`;如有需要,請至org.ngc.nvidia.com/setup/api-key輪替金鑰
NRE 無法載入片段(「非有效的 NCore V4」) 錄影尚未轉換 在呼叫nre之前,請先執行ncore技能
serve-grpc的冷啟動延遲佔據了 Python 迴圈的大部分時間 每次渲染僅執行一次 Docker 呼叫 使用nre預熱serve-grpc搭配輕量級 Python 客戶端(batch_render_rgb)的方案
執行 Docker後,輸出檔案的所有權歸屬root 缺少-u $(id -u):$(id -g)參數 sudo chown -R "$(id -u):$(id -g)" ;下次請加上-u參數
渲染後畫面出現殘影/浮點/閃爍 未啟用內建清理功能 請使用nre --enable-difix 重新渲染,或透過nurec-fixer(DiffusionHarmonizer)進行後製處理
代理程式輸出中出現過時的技能名稱(ncore-data-conversion、舊版nvidia/Fixer) 快取技能已過時 請更新對ncore和nurec-fixer(DiffusionHarmonizer)的引用;詳見references/maintenance.md
Bash 反模式${HF_TOKEN:+yes}${HF_TOKEN:-no}會回顯標記值 錯誤使用 Bash 參數擴展 旋轉令牌;使用hf auth whoami或僅檢查長度的驗證方式(參見references/secrets-handling.md)

跨技能清理

完整的 NuRec 工作流程可能會在磁碟上留下150 GB 以上的空間, 包含容器映像檔、模型權重、程式碼複製本、conda 環境及輸出 目錄。 每個同級技能皆有其專屬的「Teardown」 區段 — 當使用者不再 需要此工作流程時,請依照 references/teardown.md中記載的順序閱讀這些內容。

保持此路由器最新

新增同級技能、更名或上游 URL 變更的程序詳見references/maintenance.md。 請將上游的nurec-index(位於 https://github.com/NVIDIA/nurec-skills/blob/main/.agents/skills/SKILL.md) 視為權威來源;此技能僅鏡像選擇器表格、 工作流程順序以及上游的擷取配方。

在 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.

所有檔案

1 個檔案

安裝 physical-ai-neural-reconstruction

請將技能檔案下載並解壓縮至您的 .claude/skills/ 目錄中。

下載 ZIP

複製儲存庫並將技能檔案複製到您的專案中。

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

複製 複製
快速設定: 將技能資料夾複製到 .claude/skills/ Claude 會自動偵測並使用該技能
儲存庫 NVIDIA/skills

相關技能

web-search
更新時間 2026-06-29
webapp-testing
更新時間 2026-06-29
lark-base
更新時間 2026-07-05
agentmail
更新時間 2026-06-29
OR