allenai / procthor

🏘️ Scaling Embodied AI by Procedurally Generating Interactive 3D Houses
https://procthor.allenai.org/
Apache License 2.0
268 stars 23 forks source link

Customized Asset Placement in room generation: Selecting and Positioning specific items #38

Open Miitz opened 10 months ago

Miitz commented 10 months ago

Hello everyone, I have questions about placing assets during generation. Is there a method to include only a specific list of assets in a room or apartment? For instance, generating a kitchen with only ['fridge', 'diningTable']. If this is possible, can these assets be positioned next to each other?

mariiak2021 commented 10 months ago

I'm also interested in this! @Lucaweihs @mattdeitke, can you please help?

sarthakchittawar commented 8 months ago

Are there any updates in this thread? I'm also interested in choosing only a set of objects for my procthor generated scene.

Lucaweihs commented 8 months ago

Hi everyone, everything is customizable but it will require you "getting your hands dirty" by digging a bit into what ProcTHOR is doing and writing some code. If you want to generate a kitchen with only fridges/dining tables, then you'd want to change the add_floor_objects and add_small_objects functions that are being specified here. By default we use:

  1. default_add_floor_objects
  2. default_add_small_objects

In particular, for the kitchen example, you'd want to ensure that you exclude placing anything but fridges/dining tables when room.room_type is kitchen in the default_add_floor_objects function and, assuming you really want no other objects, you'd want to skip adding any objects to kitchens in the default_add_small_objects function.

Lucaweihs commented 8 months ago

I might also point you to Holodeck that would let you specify your constraints via language and, so long as you're willing to bear the cost of some GPT-4 queries (not too bad), should also give you some scenes that give you what you want.