
HSSD: Habitat Synthetic Scenes Dataset
==================================

The [Habitat Synthetic Scenes Dataset (HSSD)](https://3dlg-hcvc.github.io/hssd/) is a human-authored 3D scene dataset that more closely mirrors real scenes than prior datasets.
Our dataset represents real interiors and contains a diverse set of 211 scenes and more than 18000 models of real-world objects.

<img src="https://i.imgur.com/XEkLxNs.png" width=50%>

This repository provides a Habitat consumption-ready compressed version of HSSD.
See [this repository](https://huggingface.co/datasets/hssd/hssd-models) for corresponding uncompressed assets.

## Dataset Structure

```
├── objects
│   ├── */*.glb
│   ├── */*.collider.glb
│   ├── */*.filteredSupportSurface(.ply|.glb)
│   ├── */*.object_config.json
├── stages
│   ├── *.glb
│   ├── *.stage_config.json
├── scenes
│   ├── *.scene_instance.json
├── scenes_uncluttered
│   ├── *.scene_instance.json
├── scene_filter_files
│   ├── *.rec_filter.json
└── hssd-hab.scene_dataset_config.json
└── hssd-hab-uncluttered.scene_dataset_config.json
```

- `hssd-hab.scene_dataset_config.json`: This SceneDataset config file aggregates the assets and metadata necessary to fully describe the set of stages, objects, and scenes constituting the dataset.
- `objects`: 3D models representing distinct objects that are used to compose scenes. Contains configuration files, render assets, collider assets, and Receptacle mesh assets.
- `stages`: A stage in Habitat is the set of static mesh components which make up the backdrop of a scene (e.g. floor, walls, stairs, etc.).
- `scenes`: A scene is a single 3D world composed of a static stage and a variable number of objects.

### Rearrange-ready assets:
Supporting Habitat 3.0 embodied rearrangement tasks with updated colliders, adjusted and de-cluttered scene contents, receptacle meshes, and receptacle filter files. See [aihabitat.org/habitat3/](aihabitat.org/habitat3/) for more details.
- `hssd-hab-uncluttered.scene_dataset_config.json`: This SceneDataset config file aggregates adds the adjusted and uncluttered scenes for rearrangement tasks.
- `scenes_uncluttered`: Contains the adjusted scene instance configuration files.
- `scene_filter_files`: A scene filter file organizes available Receptacle instances in a scene into active and inactive groups based on simualtion heuristics and manual edits. It is consumed by the RearrangeEpisodeGenerator to construct valid RearrangeEpisodeDatasets.

## Getting Started

To load HSSD scenes into the Habitat simulator, you can start by installing [habitat-sim](https://github.com/facebookresearch/habitat-sim) using instructions specified [here](https://github.com/facebookresearch/habitat-sim#installation).

Once installed, you can run the interactive Habitat viewer to load a scene:

```
habitat-viewer --dataset /path/to/hssd-hab/hssd-hab.scene_dataset_config.json -- 102344280
# or ./build/viewer if compiling from source
```

You can find more information about using the interactive viewer [here](https://github.com/facebookresearch/habitat-sim#testing:~:text=path/to/data/-,Interactive%20testing,-%3A%20Use%20the%20interactive).

Habitat-Sim is typically used with [Habitat-Lab](https://github.com/facebookresearch/habitat-lab), a modular high-level library for end-to-end experiments in embodied AI.
To define embodied AI tasks (e.g. navigation, instruction following, question answering), train agents, and benchmark their performance using standard metrics, you can download habitat-lab using the instructions provided [here](https://github.com/facebookresearch/habitat-lab#installation).

## Changelog
 - `v0.2.5`: **Rearrange-ready HSSD**
   - Note: this is a checkpoint. Known issues exist and continued polish is ongoing.
   - Adds Receptacle meshes describing support surfaces for small objects (e.g. table or shelf surfaces).
   - Adds collider meshes (.collider.glb) for assets with Receptacle meshes to support simulation.
   - Adds new scenes 'scenes_uncluttered' and new SceneDataset 'hssd-hab-uncluttered' containing adjusted and de-cluttered versions of the scenes for use in embodied rearrangement tasks.
   - Adds 'scene_filter_files' which sort Receptacles in each scene into active and inactive groups for RearrangeEpisode generation.
 - `v0.2.4`: 
   - Recompresses several object GLBs to preserve PBR material status. 
   - Adds CSV with object metadata and semantic lexicon files for Habitat.
   - Adds train/val scene splits file.
- `v0.2.3`: First release.


language:en license:cc-by-nc-4.0 3D scenes Embodied AI region:us
{"language": ["en"], "license": "cc-by-nc-4.0", "pretty_name": "HSSD", "tags": ["3D scenes", "Embodied AI"], "extra_gated_heading": "Acknowledge license to accept the repository", "extra_gated_prompt": "You agree to use this dataset under the [CC BY-NC 4.0 license](https://creativecommons.org/licenses/by-nc/4.0/) terms", "viewer": false}
TAGS
#language-English #license-cc-by-nc-4.0 #3D scenes #Embodied AI #region-us 


HSSD: Habitat Synthetic Scenes Dataset
==================================

The Habitat Synthetic Scenes Dataset (HSSD) is a human-authored 3D scene dataset that more closely mirrors real scenes than prior datasets.
Our dataset represents real interiors and contains a diverse set of 211 scenes and more than 18000 models of real-world objects.

<img src="https://i.URL width=50%>

This repository provides a Habitat consumption-ready compressed version of HSSD.
See this repository for corresponding uncompressed assets.

## Dataset Structure



- 'hssd-hab.scene_dataset_config.json': This SceneDataset config file aggregates the assets and metadata necessary to fully describe the set of stages, objects, and scenes constituting the dataset.
- 'objects': 3D models representing distinct objects that are used to compose scenes. Contains configuration files, render assets, collider assets, and Receptacle mesh assets.
- 'stages': A stage in Habitat is the set of static mesh components which make up the backdrop of a scene (e.g. floor, walls, stairs, etc.).
- 'scenes': A scene is a single 3D world composed of a static stage and a variable number of objects.

### Rearrange-ready assets:
Supporting Habitat 3.0 embodied rearrangement tasks with updated colliders, adjusted and de-cluttered scene contents, receptacle meshes, and receptacle filter files. See URL for more details.
- 'hssd-hab-uncluttered.scene_dataset_config.json': This SceneDataset config file aggregates adds the adjusted and uncluttered scenes for rearrangement tasks.
- 'scenes_uncluttered': Contains the adjusted scene instance configuration files.
- 'scene_filter_files': A scene filter file organizes available Receptacle instances in a scene into active and inactive groups based on simualtion heuristics and manual edits. It is consumed by the RearrangeEpisodeGenerator to construct valid RearrangeEpisodeDatasets.

## Getting Started

To load HSSD scenes into the Habitat simulator, you can start by installing habitat-sim using instructions specified here.

Once installed, you can run the interactive Habitat viewer to load a scene:



You can find more information about using the interactive viewer here.

Habitat-Sim is typically used with Habitat-Lab, a modular high-level library for end-to-end experiments in embodied AI.
To define embodied AI tasks (e.g. navigation, instruction following, question answering), train agents, and benchmark their performance using standard metrics, you can download habitat-lab using the instructions provided here.

## Changelog
 - 'v0.2.5': Rearrange-ready HSSD
   - Note: this is a checkpoint. Known issues exist and continued polish is ongoing.
   - Adds Receptacle meshes describing support surfaces for small objects (e.g. table or shelf surfaces).
   - Adds collider meshes (.URL) for assets with Receptacle meshes to support simulation.
   - Adds new scenes 'scenes_uncluttered' and new SceneDataset 'hssd-hab-uncluttered' containing adjusted and de-cluttered versions of the scenes for use in embodied rearrangement tasks.
   - Adds 'scene_filter_files' which sort Receptacles in each scene into active and inactive groups for RearrangeEpisode generation.
 - 'v0.2.4': 
   - Recompresses several object GLBs to preserve PBR material status. 
   - Adds CSV with object metadata and semantic lexicon files for Habitat.
   - Adds train/val scene splits file.
- 'v0.2.3': First release.


## Dataset Structure



- 'hssd-hab.scene_dataset_config.json': This SceneDataset config file aggregates the assets and metadata necessary to fully describe the set of stages, objects, and scenes constituting the dataset.
- 'objects': 3D models representing distinct objects that are used to compose scenes. Contains configuration files, render assets, collider assets, and Receptacle mesh assets.
- 'stages': A stage in Habitat is the set of static mesh components which make up the backdrop of a scene (e.g. floor, walls, stairs, etc.).
- 'scenes': A scene is a single 3D world composed of a static stage and a variable number of objects. ### Rearrange-ready assets:
Supporting Habitat 3.0 embodied rearrangement tasks with updated colliders, adjusted and de-cluttered scene contents, receptacle meshes, and receptacle filter files. See URL for more details.
- 'hssd-hab-uncluttered.scene_dataset_config.json': This SceneDataset config file aggregates adds the adjusted and uncluttered scenes for rearrangement tasks.
- 'scenes_uncluttered': Contains the adjusted scene instance configuration files.
- 'scene_filter_files': A scene filter file organizes available Receptacle instances in a scene into active and inactive groups based on simualtion heuristics and manual edits. It is consumed by the RearrangeEpisodeGenerator to construct valid RearrangeEpisodeDatasets. ## Getting Started

To load HSSD scenes into the Habitat simulator, you can start by installing habitat-sim using instructions specified here.

Once installed, you can run the interactive Habitat viewer to load a scene:



You can find more information about using the interactive viewer here.

Habitat-Sim is typically used with Habitat-Lab, a modular high-level library for end-to-end experiments in embodied AI.
To define embodied AI tasks (e.g. navigation, instruction following, question answering), train agents, and benchmark their performance using standard metrics, you can download habitat-lab using the instructions provided here. ## Changelog
 - 'v0.2.5': Rearrange-ready HSSD
   - Note: this is a checkpoint. Known issues exist and continued polish is ongoing.
   - Adds Receptacle meshes describing support surfaces for small objects (e.g. table or shelf surfaces).
   - Adds collider meshes (.URL) for assets with Receptacle meshes to support simulation.
   - Adds new scenes 'scenes_uncluttered' and new SceneDataset 'hssd-hab-uncluttered' containing adjusted and de-cluttered versions of the scenes for use in embodied rearrangement tasks.
   - Adds 'scene_filter_files' which sort Receptacles in each scene into active and inactive groups for RearrangeEpisode generation.
 - 'v0.2.4': 
   - Recompresses several object GLBs to preserve PBR material status. 
   - Adds CSV with object metadata and semantic lexicon files for Habitat.
   - Adds train/val scene splits file.
- 'v0.2.3': First release.
TAGS
#language-English #license-cc-by-nc-4.0 #3D scenes #Embodied AI #region-us 
 ## Dataset Structure



- 'hssd-hab.scene_dataset_config.json': This SceneDataset config file aggregates the assets and metadata necessary to fully describe the set of stages, objects, and scenes constituting the dataset.
- 'objects': 3D models representing distinct objects that are used to compose scenes. Contains configuration files, render assets, collider assets, and Receptacle mesh assets.
- 'stages': A stage in Habitat is the set of static mesh components which make up the backdrop of a scene (e.g. floor, walls, stairs, etc.).
- 'scenes': A scene is a single 3D world composed of a static stage and a variable number of objects. ### Rearrange-ready assets:
Supporting Habitat 3.0 embodied rearrangement tasks with updated colliders, adjusted and de-cluttered scene contents, receptacle meshes, and receptacle filter files. See URL for more details.
- 'hssd-hab-uncluttered.scene_dataset_config.json': This SceneDataset config file aggregates adds the adjusted and uncluttered scenes for rearrangement tasks.
- 'scenes_uncluttered': Contains the adjusted scene instance configuration files.
- 'scene_filter_files': A scene filter file organizes available Receptacle instances in a scene into active and inactive groups based on simualtion heuristics and manual edits. It is consumed by the RearrangeEpisodeGenerator to construct valid RearrangeEpisodeDatasets. ## Getting Started

To load HSSD scenes into the Habitat simulator, you can start by installing habitat-sim using instructions specified here.

Once installed, you can run the interactive Habitat viewer to load a scene:



You can find more information about using the interactive viewer here.

Habitat-Sim is typically used with Habitat-Lab, a modular high-level library for end-to-end experiments in embodied AI.
To define embodied AI tasks (e.g. navigation, instruction following, question answering), train agents, and benchmark their performance using standard metrics, you can download habitat-lab using the instructions provided here. ## Changelog
 - 'v0.2.5': Rearrange-ready HSSD
   - Note: this is a checkpoint. Known issues exist and continued polish is ongoing.
   - Adds Receptacle meshes describing support surfaces for small objects (e.g. table or shelf surfaces).
   - Adds collider meshes (.URL) for assets with Receptacle meshes to support simulation.
   - Adds new scenes 'scenes_uncluttered' and new SceneDataset 'hssd-hab-uncluttered' containing adjusted and de-cluttered versions of the scenes for use in embodied rearrangement tasks.
   - Adds 'scene_filter_files' which sort Receptacles in each scene into active and inactive groups for RearrangeEpisode generation.
 - 'v0.2.4': 
   - Recompresses several object GLBs to preserve PBR material status. 
   - Adds CSV with object metadata and semantic lexicon files for Habitat.
   - Adds train/val scene splits file.
- 'v0.2.3': First release.