physical-ai-neural-reconstruction
NVIDIA/skills
Направляет запросы NuRec/Neural Reconstruction в соответствующий вышестоящий модуль NVIDIA (наборы данных, преобразование, обучение, рендеринг, извлечение объектов, очистка кадров).
...Расширить всеМаршрутизатор физической нейронной реконструкции искусственного интеллекта (NuRec)
Назначение
Это «тонкий» маршрутизатор для запросов NVIDIA Neural Reconstruction (NuRec)
. Он указывает на вышестоящий навык nurec-index по адресу
https://github.com/NVIDIA/nurec-skills и пять его родственных навыков
(physical-ai-datasets, ncore, nre, asset-harvester,
nurec-fixer). Используйте этот навык для:
- Определить, какой из вышестоящих родственных навыков отвечает на запрос NuRec.
- Найти, клонировать или обновить каноническую версию
nurec-skills. - Упорядочить многоэтапные рабочие процессы NuRec (данные → преобразование → обучение → рендеринг → очистка) перед открытием рецепта исходного проекта.
Канонические рецепты (обучение, визуализация, преобразование данных, загрузка наборов данных, сбор объектов, очистка кадров) находятся в вышестоящих родственных навыках. Ни в коем случае не копируйте и не воссоздавайте их команды здесь.
НЕ используйте этот навык для:
- пакетированию CAD-моделей или исходных сеток в формат SimReady → используйте
omniverse-cad-to-simready. - Общей настройки производительности USD, не связанной с NuRec → используйте
omniverse-usd-performance-tuning. - Настройки инфраструктуры AKS / OSMO / NIM Operator → используйте
physical-ai-infrastructure-setup-and-resilient-scaling.
Когда использовать
Сначала ознакомьтесь с этим навыком, если пользователь упоминает что-либо из следующего:
nurec, nurec router, nurec index, нейронная реконструкция,
движок нейронной реконструкции, NRE, 3DGUT, 3DGRT, USDZ,
NCore V4, симуляция датчиков, синтез новых видов,
PhysicalAI-Autonomous-Vehicles-NuRec, PhysicalAI-NuRec-PPISP,
Cosmos-Drive-Dreams, сборщик ресурсов, nurec fixer,
DiffusionHarmonizer, гармонизатор, difix, difix3d, serve-grpc,
render-grpc, warm serve-grpc, nre thin client, batch_render_rgb,
nurec teardown, «с чего начать работу с NuRec», «какой навык NuRec
мне следует использовать для X?».
Определите, какой из навыков верхнего уровня отвечает на этот вопрос, загрузите его (см. раздел «Поиск и загрузка навыков верхнего уровня»), затем следуйте инструкциям этого навыка.
Предварительные условия
Сам навык «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). - Ключ API NGC (
NGC_API_KEY) — для загрузки контейнеров NGC. - Токен Hugging Face (
HF_TOKEN) с лицензиямиnvidia/PhysicalAI-*,nvidia/DiffusionHarmonizerиnvidia/asset-harvester, предварительно одобренными на Hugging Face. - 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 Neural Reconstruction) принимает записи с камер, LiDAR, радаров или стереокамер — как правило, с беспилотного автомобиля или робота — и преобразует их в 3D-сцену, которую можно перерисовать с любой точки обзора. Часто встречающиеся названия:
- NRE — «Neural Reconstruction Engine» (нейронный движок реконструкции). NuRec — это продукт; NRE
— это движок, который осуществляет обучение и рендеринг. Оба ведут к вышестоящему
навыку
«nre». - USDZ — формат файла обученной сцены. ZIP-архив, который могут открывать Omniverse, Isaac Sim и CARLA.
- NCore V4 — формат входных данных, который использует NRE. Необработанные записи необходимо преобразовать в NCore V4 перед обучением.
- 3DGUT / 3DGRT — два варианта 3D-гауссового сплэттинга, используемые внутри NRE. Рецепт Hydra по умолчанию выбирает один из них; большинство пользователей никогда не настраивают его вручную.
Типичный проект NuRec состоит из трёх этапов:
- Получение входных данных — преобразование собственной записи в формат NCore V4
(
ncore) или загрузка предварительно преобразованного набора данных (physical-ai-datasets). - Обучение реконструкции — подачаданных в формате NCore V4 в NRE; в результате получается файл
USDZ (
nre). - Рендеринг новых ракурсов — рендеринг изображений, видео или LiDAR-сканирований из
файла USDZ (
nre).
Проекты, в которых необходимо просто использовать существующую сцену, опубликованную NVIDIA, пропускают шаг 2.
Выберите навык
Найдите в левом столбце цель пользователя и откройте соответствующий навык в правом столбце. Стрелки означают «выполняйте в указанном порядке».
| Я хочу… | Предшествующий навык |
|---|---|
| Найти или загрузить набор данных NuRec, опубликованный NVIDIA | physical-ai-datasets |
| Преобразовать собственные записи с камеры / LiDAR / радара / глубины / стерео в формат NCore V4 | ncore |
| Написать новый конвертер для неподдерживаемой конфигурации датчиков (дрон, RGB-D, ROS 2 bag, COLMAP, ScanNet++) | ncore |
| Обучить модель 3D-реконструкции на основе клипа NCore | ncore → nre |
| Сгенерировать дополнительные входные данные, необходимые NRE (маски сегментации, глубина, маска эго) | nre (использует контейнер nre-tools ) |
| Рендеринг файла USDZ с сохранением исходных положений камеры | nre |
| Рендеринг в полном разрешении / с максимальным качеством | nre (см. «Предустановки качества») |
| Рендеринг по смещённой траектории (например, автомобиль сместился на 3 м влево) | nre |
| Рендеринг через сервер, чтобы CARLA / Isaac Sim / AlpaSim / пользовательский симулятор могли запрашивать кадры | nre (serve-grpc) |
| Рендеринг одного и того же файла USDZ многократно подряд из Python с минимальной задержкой на каждый вызов | nre (warm serve-grpc + тонкий Python-клиент / batch_render_rgb) |
| Рендеринг LiDAR-сканирований (облаков точек) из файла USDZ | nre (render-grpc --lidar) |
| Пропустить обучение и просто выполнить рендеринг сцены NuRec, уже созданной NVIDIA | physical-ai-datasets → nre |
| Извлечение отдельных 3D-объектов (автомобили, пешеходы) из видеоролика с вождением | asset-harvester |
| Добавление, удаление или замена автомобилей/пешеходов в сцене NuRec | asset-harvester → nre |
| Очистка или гармонизация отрендеренных кадров (двойные изображения, плавающие объекты, мерцание, освещение/тени) | nurec-fixer или --enable-difix внутри nre для встроенного рендеринга |
| Экспорт сцены в формате PLY, сетки, карт глубины, маски «я» и т. д. | nre |
| Обновление старого файла USDZ, чтобы более новые версии NRE загружали его быстрее | nre (upgrade-artifact) |
| Откройте файл USDZ или PLY в браузерном просмотрщике | nre (viewer / ply_viewer) |
| Измерить качество рендеринга (PSNR, SSIM, LPIPS) по сравнению с эталонными данными | nre (eval-rendering-metrics) |
| Сравнить различные методы реконструкции на одних и тех же сценах | physical-ai-datasets (PhysicalAI-NuRec-PPISP) → nre |
| Обучение на нескольких графических процессорах или с использованием SLURM | nre (Рабочий процесс D) |
Типовые рабочие процессы
Шесть сквозных рабочих процессов описаны в файле
references/workflows.md:
- A. Создайте сцену NuRec на основе собственной записи.
- B. Использование сцены NuRec, уже обученной компанией NVIDIA.
- C. Добавление, удаление или замена 3D-объектов в сцене.
- D. Очистка отрендеренных кадров.
- E. Оценка качества реконструкции.
- F. Подключите NuRec к симулятору.
Открыть этот файл, если задача пользователя охватывает более одного родственного навыка.
Связанные навыки (предшествующие)
| Название | Папка вышестоящего уровня | Функции |
|---|---|---|
physical-ai-datasets |
.agents/skills/physical-ai-datasets/ |
Каталог и возможность скачивания рецептов для всех наборов данных NVIDIA Physical AI на Hugging Face (вождение, робототехника, манипуляции, сцены NuRec, тестовые наборы). |
ncore |
.agents/skills/ncore/ |
Преобразует любые записи с датчиков в формат NCore V4 (формат, необходимый для NRE). Также охватывает создание нового конвертера. |
nre |
.agents/skills/nre/ |
Сам движок нейронной реконструкции. Обучает, выполняет рендеринг (локально, через warm serve-grpc + тонкий Python-клиент / batch_render_rgb, или в внешний симулятор), экспортирует сетки / облака точек / глубину, редактирует объекты, оценивает качество. |
asset-harvester |
.agents/skills/asset-harvester/ |
Конвейер с открытым исходным кодом под лицензией Apache-2.0, который извлекает отдельные 3D-объекты из разреженных ракурсов в видеоролике с вождением и сохраняет их в формате .ply (гауссовых сплэтов) с метаданными. |
nurec-fixer |
.agents/skills/nurec-fixer/ |
Автономный рабочий процесс NVIDIA DiffusionHarmonizer — общедоступный преемник более старых рецептов Fixer / Difix3D+ — который очищает рендеренные кадры, гармонизирует вставленных актеров, оценивает показатели PSNR/LPIPS и, по желанию, проводит тонкую настройку модели. |
Что касается совпадений в именовании (NRE vs Fixer, ncore vs nre, AV-NuRec vs
Cosmos-Drive-Dreams, NuRec vs 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" # на одном уровне
Порядок локального поиска (попробуйте в указанном порядке перед клонированием из исходного репозитория):
.agents/skills/(Cursor, Codex, NemoClaw)/SKILL.md .claude/skills/(Claude Code)/SKILL.md .cursor/skills/(в рамках проекта)/SKILL.md ~/.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). Не сканируйте обширные рабочие пространства разработчиков, такие как~/Codes, и не используйте несвязанные старые клоны. physical-ai-datasetsохватывает наборы данных Hugging Face с ограниченным доступом. Не обходите условия лицензии наборов данных; пользователь должен принять лицензииPhysicalAI-*с ограниченным доступом на Hugging Face и предоставить токен перед загрузкой.- Asset Harvester запускается перед упаковкой в USDZ. Не вызывайте
команду`export-external-assets`nreдля ручно созданных файлов.ply, если пользователь явно не попросил пропустить Asset Harvester. - Для очистки артефактов предпочтительно использовать встроенный параметр
--enable-difixвnre. Используйте автономныйnurec-fixerтолько в том случае, если пользователю требуется открытая карта кода/модели, парная оценка, тонкая настройка или исправления ранее прорисованных кадров. - Не придумывайте команды NRE / NCore / DiffusionHarmonizer «на
лету». Перечитайте исходный код соответствующего навыка — версии быстро меняются
(NRE
release_26.04— текущий закреплённый тег). - Этот маршрутизатор не развертывает инфраструктуру. Перенаправляйте настройку AKS / OSMO /
NIM Operator на
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 ГБ
на диске. См.
файл references/teardown.md. - Стек, предназначенный исключительно для NVIDIA. Требуется графический процессор NVIDIA и NVIDIA Container Toolkit. AMD, Intel и Apple Silicon не поддерживаются.
- Не является конвейером SimReady. NuRec генерирует готовый к рендерингу файл USDZ на основе
записи; упаковка CAD-моделей или исходных сетки в формат SimReady представляет собой
отдельный конвейер (см.
omniverse-cad-to-simready).
Устранение неполадок
| Ошибка / симптом | Вероятная причина | Решение |
|---|---|---|
Клонnurec-skills отсутствует или пуст |
Исходный блок ещё не загружен | Запустите блок «клонировать» в разделе «Locate» и загрузите навыки из исходного репозитория |
Ошибка403/401 при извлечении nvidia/PhysicalAI-* из HF |
Лицензия с ограниченным доступом не принята, либо HF_TOKEN не установлен / неверная область действия |
Примите ограниченную лицензию на Hugging Face, затем войдите в систему Hugging Face с помощью токена, имеющего права на чтение |
Отказ: запрошенный доступ к ресурсу запрещен для nvcr.io/nvidia/nre/* |
Отсутствует или истек срок действия NGC_API_KEY |
Войдите в Docker на nvcr.io с помощью $oauthtoken / NGC_API_KEY; при необходимости обновите ключ на org.ngc.nvidia.com/setup/api-key |
| NRE отказывается загружать клип («неверная версия NCore V4») | Запись не была преобразована | Запустите навык ncore перед вызовом nre |
Задержка при холодном запуске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 ГБ в виде
образов контейнеров, весов моделей, клонов кода, сред conda и каталогов
вывода. Каждый родственный навык имеет свой собственный выделенный раздел «Teardown»
— ознакомьтесь с ними в порядке, указанном в
references/teardown.md, когда пользователю больше
не нужен этот рабочий процесс.
Поддержание актуальности этого маршрутизатора
Процедура добавления новых навыков одного уровня, переименования или изменения URL-адреса исходного проекта
описана в references/maintenance.md.
Считайте исходный nurec-index по адресу
https://github.com/NVIDIA/nurec-skills/blob/main/.agents/skills/SKILL.md
авторитетным источником; этот навык дублирует только таблицы выбора,
порядок рабочих процессов и исходный рецепт загрузки.
---
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
Копировать





Дом
