@@ -13,21 +13,106 @@ mkdir -p data/datasets
1313# Set environment variables for Habitat data paths
1414export HABITAT_DATA_PATH=" $( pwd) /data"
1515
16- echo " Downloading Habitat test scenes..."
17- python -m habitat_sim.utils.datasets_download --uids habitat_test_scenes --data-path data/
16+ # Note: Using manual downloads to avoid git-lfs prune issues with Habitat utility
1817
19- echo " Downloading ReplicaCAD scenes..."
20- python -m habitat_sim.utils.datasets_download --uids replica_cad --data-path data/
18+ # Function to download datasets manually (avoiding Habitat utility git-lfs issues)
19+ download_habitat_dataset () {
20+ local uid=$1
21+ local description=$2
22+
23+ echo " Downloading $description manually..."
24+
25+ case " $uid " in
26+ " habitat_test_scenes" )
27+ # Manual download for test scenes
28+ cd data/scene_datasets
29+ if [ ! -d " habitat_test_scenes" ]; then
30+ git clone https://github.com/facebookresearch/habitat-test-scenes.git habitat_test_scenes || {
31+ echo " Manual download failed for $description "
32+ return 1
33+ }
34+ else
35+ echo " habitat_test_scenes already exists, skipping download"
36+ fi
37+ cd ../..
38+ ;;
39+ " replica_cad" )
40+ # Manual download for ReplicaCAD
41+ cd data/scene_datasets
42+ if [ ! -d " replica_cad" ]; then
43+ git clone https://github.com/facebookresearch/replica-cad.git replica_cad || {
44+ echo " Manual download failed for $description "
45+ return 1
46+ }
47+ else
48+ echo " replica_cad already exists, skipping download"
49+ fi
50+ cd ../..
51+ ;;
52+ " habitat_test_pointnav_dataset" )
53+ # Manual download for pointnav dataset
54+ cd data/datasets
55+ if [ ! -d " habitat_test_pointnav_dataset" ]; then
56+ wget -O habitat_test_pointnav_dataset.zip https://dl.fbaipublicfiles.com/habitat/data/datasets/pointnav/habitat-test-scenes/v1/habitat-test-scenes-v1.zip || {
57+ echo " Manual download failed for $description "
58+ return 1
59+ }
60+ unzip -o habitat_test_pointnav_dataset.zip
61+ rm habitat_test_pointnav_dataset.zip
62+ else
63+ echo " habitat_test_pointnav_dataset already exists, skipping download"
64+ fi
65+ cd ../..
66+ ;;
67+ * )
68+ echo " Unknown dataset UID: $uid "
69+ return 1
70+ ;;
71+ esac
72+ echo " $description downloaded successfully!"
73+ }
74+
75+ # Download datasets with fallback
76+ download_habitat_dataset " habitat_test_scenes" " Habitat test scenes"
77+ download_habitat_dataset " replica_cad" " ReplicaCAD scenes"
2178
2279echo " Downloading rearrange pick dataset..."
2380cd data/datasets
24- wget -O rearrange_pick_replica_cad_v0.zip https://dl.fbaipublicfiles.com/habitat/data/datasets/rearrange_pick/replica_cad/v0/rearrange_pick_replica_cad_v0.zip
25- unzip -o rearrange_pick_replica_cad_v0.zip
26- rm rearrange_pick_replica_cad_v0.zip
81+ if [ ! -d " rearrange_pick_replica_cad_v0" ]; then
82+ wget -O rearrange_pick_replica_cad_v0.zip https://dl.fbaipublicfiles.com/habitat/data/datasets/rearrange_pick/replica_cad/v0/rearrange_pick_replica_cad_v0.zip
83+ unzip -o rearrange_pick_replica_cad_v0.zip
84+ rm rearrange_pick_replica_cad_v0.zip
85+ else
86+ echo " rearrange_pick_replica_cad_v0 already exists, skipping download"
87+ fi
2788cd ../..
2889
29- echo " Downloading point-goal navigation episodes for test scenes..."
30- python -m habitat_sim.utils.datasets_download --uids habitat_test_pointnav_dataset --data-path data/
90+ download_habitat_dataset " habitat_test_pointnav_dataset" " Point-goal navigation episodes for test scenes"
3191
3292echo " Datasets downloaded successfully!"
33- ls -la data/
93+
94+ # Final verification
95+ echo " Verifying downloaded datasets..."
96+ echo " Scene datasets:"
97+ ls -la data/scene_datasets/ 2> /dev/null || echo " No scene_datasets directory found"
98+ echo " Task datasets:"
99+ ls -la data/datasets/ 2> /dev/null || echo " No datasets directory found"
100+
101+ # Check for required datasets
102+ required_scenes=0
103+ if [ -d " data/scene_datasets/habitat_test_scenes" ] || [ -d " data/scene_datasets/replica_cad" ]; then
104+ required_scenes=1
105+ fi
106+
107+ if [ -d " data/datasets/rearrange_pick_replica_cad_v0" ]; then
108+ required_datasets=1
109+ else
110+ required_datasets=0
111+ fi
112+
113+ if [ $required_scenes -eq 1 ] && [ $required_datasets -eq 1 ]; then
114+ echo " All required datasets are present!"
115+ else
116+ echo " ERROR: Some required datasets are missing!"
117+ exit 1
118+ fi
0 commit comments