facebookresearch / habitat-sim

A flexible, high-performance 3D simulator for Embodied AI research.
https://aihabitat.org/
MIT License
2.45k stars 404 forks source link

SemanticScene-compatible HM3D semantics annotations missing #2346

Open SgtVincent opened 3 months ago

SgtVincent commented 3 months ago

Habitat-Sim version

v0.3.1

Are you using the bleeding edge version?

Yes.

❓ Questions and Help

I noticed that in the latest release v0.3.1, you have incorporated the new semantic annotations from PR #2307, which addressed issues mentioned in #1836 #2253 #2323.

However, with some efforts digging into the code, I found that the semantic annotations seemed to be loaded by a set of annotations as specified in config file

My questions is whether and when you are going to release these annotations for HM3D dataset including stages, regions, etc. If you are short-handed or this task is under-privileged, please give me some ideas about how to do this. I can create a PR for this later.

Context: I am working in my fork on a project about multi-agent system using environment 3D scene graph. Having GT semantic scene would help me a lot. FYR, https://github.com/SgtVincent/habitat-lab/tree/embodied_mas/habitat-mas/scene_graph

aclegg3 commented 3 months ago

Hey @SgtVincent,

HM3D Semantic annotations include the object and architecture categories painted on the scan meshes. There is a notion of region ids for each object, but they have not been annotated with region names. There are also no ground truth bounding volumes for the regions.

If you wanted to add these, we support 2D poly loops with floor base height and extruded ceiling height as an abstraction. You could, for example, annotate the existing scenes in blender and add the semantic regions configs to the dataset. We may release some intermediate code and process documentation to make that process more transparent, but it hasn't been a priority recently.

SgtVincent commented 3 months ago

Thanks for your quick response! 🚀

You could, for example, annotate the existing scenes in blender and add the semantic regions configs to the dataset.

Going to look into this. I could also try some auto-processing scripts as you mentioned in other threads.

We may release some intermediate code and process documentation to make that process more transparent, but it hasn't been a priority recently.

I understand you have quite much stuff on your list. Look forward to your update. :)

frank-gallagher commented 2 months ago

Hi @aclegg3 ,

we support 2D poly loops with floor base height and extruded ceiling height as an abstraction

How is this accessed?

I am getting an empty list and 0.0 when printing _region.poly_looppoints and _region.extrusionheight.

EDIT: I'm not sure if this is related but the _SemanticScene.get_regions_for_point()_ is also returning an empty list. Is there something in the config I need to change to get these to work?

ANOTHER EDIT: I have opened issue #2364 to address this question.