PV-A
收藏资源简介:
# PV-A — Sim-Ready Articulated Asset Dataset **302,440** simulation-ready articulated assets across **531** generator classes. Every asset passed mechanical QC (URDF compile + kinematic chain checks) before inclusion. ## Layout ``` archives/<generator>.tar.zst # one archive per generator class manifest.csv # slug, stem, seed, asset_id, overrides_json (302,440 rows) library_snapshot.json # PBR material library snapshot identity (see below) ``` Each archive expands to one directory per asset: ``` <asset_id>/ ├── model.urdf # articulated model (links + joints, validated) ├── appearance.json # PBR material bindings + library receipts ├── physics.json # physics attributes └── assets/meshes/*.obj # visual/collision meshes ``` **Textures are NOT bundled** (they are 93% of the raw bytes). See below for restoring them from the shared PBR material library. ## Restoring textures from pbr_library Every asset was exported against the library snapshot recorded in `library_snapshot.json` (`snapshot_path = unified/snapshots/ab0fa589...`). For each material binding in `appearance.json`: 1. `bindings[].material.material_key` (== sha256 of `material_id`) 2. Texture maps live in the library at: `<library_root>/<snapshot_path>/textures/by-id/<material_key[:2]>/<material_key>/<map>.png` where `<map>` ∈ base_color / normal / metallic / roughness (only the channels whose `kind` is `"texture"` in `bindings[].appearance.channels`). 3. The asset-local path the binding expects is `assets/textures/mat_<material_key>/<map>.png` — copy or symlink the library file there. 4. Optional integrity check: per-channel `sha256` receipts are recorded in `appearance.json` (both `bindings[].appearance.channels.*.sha256` and `assets.textures[]`). ## Notes - Movable joints: revolute / prismatic / continuous; rest poses folded for long chains. - `manifest.csv` row → archive membership: `slug` names the archive, `asset_id` the directory inside it; `overrides_json` records the discrete configuration axes. - QC provenance: candidates swept per-seed (compile, overlap policy, rigid-seed check, disconnected-geometry check, motion coverage); only passing seeds were produced. ## Archive sharding Generators with more than 400 assets are split into shards of 400 assets: `archives/<slug>_part00.tar.zst`, `_part01`, ... A generator's full content is the concatenation of all its `archives/<slug>*.tar.zst` archives (most small generators have a single whole archive `archives/<slug>.tar.zst`). Every `asset_id` from `manifest.csv` appears in exactly one archive. Three early-uploaded large generators (Bathroom_Hair_dryer, Door_Other, Equipment_Control_panel) exist as single whole archives.



