๐ŸŒŒ OS/Linux-๋ฆฌ๋ˆ…์Šค

[Ubuntu] Embodied AI Simulator ์„ค์น˜ - Habitat

mxnxeonx 2022. 7. 20. 13:27
728x90
728x90

 

Embodied AI Simulator์˜ 3๋ฒˆ์งธ, Habitat์„ ์„ค์น˜ํ•ด๋ณด์•˜๋‹ค.

 

Habitat-Sim์ด๋ž€?

๊ณ ์„ฑ๋Šฅ ๋ฌผ๋ฆฌ 3D ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ Habitat์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•œ๋‹ค.

  • ์‹ค๋‚ด/์™ธ ๊ณต๊ฐ„์˜ 3D ์Šค์บ” (HM3D, MatterPort3D, Gibson, Replica ๋“ฑ์˜ ๋ฐ์ดํ„ฐ์…‹์— ๋Œ€ํ•œ ๋‚ด์žฅ ์ง€์› ํฌํ•จ)
  • ๊ณต๊ฐ„ ๋ฐ ์˜ค๋ธŒ์ ํŠธ๋ณ„ ๊ฐ•์ฒด ๊ฐ์ฒด์˜ CAD ๋ชจ๋ธ (ReplicaCAD, YCB, Google Scanned Objects)
  • ๊ตฌ์„ฑ ๊ฐ€๋Šฅํ•œ ์„ผ์„œ (RGB-D cameras, egomotion sensing)
  • URDF๋กœ ์ž‘์„ฑ๋œ ๋กœ๋ด‡ (Fetch-๋ชจ๋ฐ”์ผ ์กฐ์ž‘๊ธฐ, Franka-๊ณ ์ •๋œ ํŒ”, AlienGo-์‚ฌ์กฑ๋ณดํ–‰ ๋กœ๋ด‡)
  • Bullet์„ ํ†ตํ•œ ๊ฐ•์ฒด์—ญํ•™

Habitat์˜ ์„ค๊ณ„ ์ฒ ํ•™์€ ๋‹ค์–‘ํ•œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๊ธฐ๋Šฅ๋ณด๋‹ค ์‹œ๋ฎฌ๋ ˆ์ด์…˜์˜ ์†๋„๋ฅผ ์šฐ์„ ์‹œํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Matterport3D ๋ฐ์ดํ„ฐ์…‹์—์„œ ์žฅ๋ฉด์„ ๋ Œ๋”๋งํ•  ๋•Œ ๋‹จ์ผ ์Šค๋ ˆ๋“œ์—์„œ ์ดˆ๋‹น ์ˆ˜์ฒœ ํ”„๋ ˆ์ž„(FPS)์„ ๋‹ฌ์„ฑํ•˜๊ณ , ๋‹จ์ผ GPU์—์„œ 10,000 ํ”„๋ ˆ์ž„(FPS) ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค์— ๋„๋‹ฌํ•œ๋‹ค. ์ดˆ๋‹น 8,000 ๋‹จ๊ณ„(SPS) ์ด์ƒ์˜ CAD ์žฅ๋ฉด์—์„œ ๊ฐ ๋‹จ๊ณ„๋Š” 1๊ฐœ์˜ RGB-D ๊ด€์ฐฐ(128*128 pixel)๊ณผ 1/30์ดˆ ๋™์•ˆ ๊ฐ•์ฒด์—ญํ•™์„ ๋ Œ๋”๋งํ•œ๋‹ค. Embodied AI์˜ end-to-end Task๋ฅผ ์œ„ํ•œ ๋ชจ๋“ˆ์‹ ๊ณ ๊ธ‰ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ Habitat-Lab๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋œ๋‹ค.

 


 

Habitat-Sim Installation

Habitat ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋Š” 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

  1. Conda : ๊ถŒ์žฅ ๋ฐฉ๋ฒ•์œผ๋กœ, ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์ฆˆ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  2. Docker : Habitat Challenge๋ฅผ ์œ„ํ•ด 1๋…„์— ํ•œ ๋ฒˆ ์—…๋ฐ์ดํŠธ ๋˜๋Š” ๋ฒ„์ „์ด๋‹ค.
  3. Source : ๋Šฅ๋™์ ์ธ ๊ฐœ๋ฐœ์šฉ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.
  4. [Veta] PIP : pip install์„ ํ†ตํ•ด Bullet์œผ๋กœ ์ปดํŒŒ์ผํ•œ๋‹ค.

 

๋‹ค์Œ ์ค‘ Conda๋ฅผ ์ด์šฉํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ Habitat์„ ์„ค์น˜ํ•  ๊ฒƒ์ด๋‹ค. Conda๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋‹ค๋Š” ๊ฐ€์ •ํ•˜์— Install์„ ์‹œ์ž‘ํ•œ๋‹ค.

 

 

1) ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์ƒ์„ฑํ•œ๋‹ค.

# We require python>=3.7 and cmake>=3.10
$ conda create -n habitat python=3.7 cmake=3.14.0
$ conda activate habitat

 

2) ์˜์กด ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•œ๋‹ค. ํ˜„์žฌ ๋ฆฌ๋ˆ…์Šค(์ฝ˜๋‹ค)์˜ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์•Œ๋งž์€ ๋ฒ„์ „์„ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ, ์•„๋ž˜์™€ ๊ฐ™์ด ์„ค์น˜ํ•˜๋ฉด ๋˜๋‚˜ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋”๋ณด๊ธฐ๋ž€์˜ ๊ณต์‹ ์‚ฌ์ดํŠธ์—์„œ ๋‹ค๋ฅธ ์„ค์น˜๋ฒ•์„ ์ฐธ์กฐํ•˜๋ฉด ๋œ๋‹ค.

$ conda install habitat-sim -c conda-forge -c aihabitat

 

3) ํ…Œ์ŠคํŒ…์„ ์œ„ํ•ด 3D ์žฅ๋ฉด๊ณผ Object๋ฅผ ๋‹ค์šด๋กœ๋“œํ•œ๋‹ค.

$ python -m habitat_sim.utils.datasets_download --uids habitat_test_scenes --data-path /path/to/data/
$ python -m habitat_sim.utils.datasets_download --uids habitat_example_objects --data-path /path/to/data/

 

4) ๋‹ค์šด๋กœ๋“œํ•œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์‹คํ–‰ํ•œ๋‹ค.

# C++
habitat-viewer /path/to/data/scene_datasets/habitat-test-scenes/skokloster-castle.glb

# Python
python examples/viewer.py --scene /path/to/data/scene_datasets/habitat-test-scenes/skokloster-castle.glb

 

 

728x90
320x100