Skip to content

Commit 35f9c5b

Browse files
committed
Checkpoint link update + minor changes
Minor typo fix Minor fix
1 parent b8c98ab commit 35f9c5b

File tree

6 files changed

+30
-33
lines changed

6 files changed

+30
-33
lines changed

README.md

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@ assume complete data availability across all modalities. We present **CrossOver*
6868

6969

7070
# :newspaper: News
71-
<!-- > 📡 Stay tuned for stronger checkpoint release trained on many more datasets! -->
7271
- ![](https://img.shields.io/badge/New!-8A2BE2) **Version 1.0** - **CrossOver is now stronger than ever**. We recommend updating to this version; changes include:
7372
- More powerful pre-trained checkpoints; now available on Huggingface 👉 [here](https://huggingface.co/gradient-spaces/CrossOver/tree/main).
7473
- Support for 2 additional datasets - ARKitScenes & MultiScan
@@ -132,26 +131,6 @@ See [DATA.MD](DATA.md) for detailed instructions on data download, preparation a
132131
133132
# :film_projector: Demo
134133

135-
## Scene Retrieval Demo
136-
137-
This demo script allows users to process a custom scene and retrieve the closest match from the supported datasets using different modalities. Detailed usage can be found inside the script. Example usage below:
138-
139-
```bash
140-
$ python demo/demo_scene_retrieval.py
141-
```
142-
143-
Various configurable parameters:
144-
145-
- `--query_path`: Path to the query scene file (eg: `./example_data/dining_room/scene_cropped.ply`).
146-
- `--database_path`: Path to the precomputed embeddings of the database scenes downloaded before (eg: `./release_data/embed_scannet.pt`).
147-
- `--query_modality`: Modality of the query scene, Options: `point`, `rgb`, `floorplan`, `referral`
148-
- `--database_modality`: Modality used for retrieval. Same options as above.
149-
- `--ckpt`: Path to the pre-trained scene crossover model checkpoint (details [here](#checkpoints)), example_path: `./checkpoints/scene_crossover_scannet+scan3r.pth/`).
150-
151-
For embedding and pre-trained model download, refer to [generated embedding data](DATA.md#generated-embedding-data) and [checkpoints](#checkpoints) sections.
152-
153-
> We also provide scripts for inference on a single scan of the supported datasets. Details in **Single Inference** section in [TRAIN.md](TRAIN.md).
154-
155134
## Instance Retrieval Demo
156135

157136
This demo script allows users to process a custom object and run cross-modal retrieval to find the closest matched object within a target scene . Detailed usage can be found inside the script. Example usage below:
@@ -173,6 +152,27 @@ Various configurable parameters:
173152
- `--top_k`: Number of top results to return - default: `5`
174153

175154

155+
## Scene Retrieval Demo
156+
157+
This demo script allows users to process a custom scene and retrieve the closest match from the supported datasets using different modalities. Detailed usage can be found inside the script. Example usage below:
158+
159+
```bash
160+
$ python demo/demo_scene_retrieval.py
161+
```
162+
163+
Various configurable parameters:
164+
165+
- `--query_path`: Path to the query scene file (eg: `./example_data/dining_room/scene_cropped.ply`).
166+
- `--database_path`: Path to the precomputed embeddings of the database scenes downloaded before (eg: `./release_data/embed_scannet.pt`).
167+
- `--query_modality`: Modality of the query scene, Options: `point`, `rgb`, `floorplan`, `referral`
168+
- `--database_modality`: Modality used for retrieval. Same options as above.
169+
- `--ckpt`: Path to the pre-trained scene crossover model checkpoint (details [here](#checkpoints)), example_path: `./checkpoints/scene_crossover_scannet+scan3r.pth/`).
170+
171+
For embedding and pre-trained model download, refer to [generated embedding data](DATA.md#generated-embedding-data) and [checkpoints](#checkpoints) sections.
172+
173+
> [!TIP]
174+
> We also provide scripts for inference on a single scan of the supported datasets. Details in **Single Inference** section in [TRAIN.md](TRAIN.md).
175+
176176

177177
# :weight_lifting: Training and Inference
178178

@@ -194,13 +194,13 @@ We provide all available checkpoints on huggingface 👉 [here](https://huggingf
194194
|Instance CrossOver trained on 3RScan | [3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scan3r.pth) |
195195
|Instance CrossOver trained on ScanNet | [ScanNet](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet.pth) |
196196
|Instance CrossOver trained on ScanNet + 3RScan | [ScanNet+3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet%2Bscan3r.pth) |
197-
|Instance CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan]() |
197+
|Instance CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet%2Bscan3r%2Bmultiscan%2Barkitscenes.pth) |
198198

199199
##### ```scene_crossover```
200200
| Description | Checkpoint Link |
201201
| ------------------ | -------------- |
202202
| Unified CrossOver trained on ScanNet + 3RScan | [ScanNet+3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/scene_crossover_scannet%2Bscan3r.pth) |
203-
| Unified CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan]() |
203+
| Unified CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/scene_crossover_scannet%2Bscan3r%2Bmultiscan%2Barkitscenes.pth) |
204204

205205

206206
## 🚧 TODO List

TRAIN.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,13 @@ We provide all available checkpoints on huggingface 👉 [here](https://huggingf
4545
|Instance CrossOver trained on 3RScan | [3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scan3r.pth) |
4646
|Instance CrossOver trained on ScanNet | [ScanNet](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet.pth) |
4747
|Instance CrossOver trained on ScanNet + 3RScan | [ScanNet+3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet%2Bscan3r.pth) |
48-
|Instance CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan]() |
48+
|Instance CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/instance_crossover_scannet%2Bscan3r%2Bmultiscan%2Barkitscenes.pth) |
4949

5050
##### ```scene_crossover```
5151
| Description | Checkpoint Link |
5252
| ------------------ | -------------- |
5353
| Unified CrossOver trained on ScanNet + 3RScan | [ScanNet+3RScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/scene_crossover_scannet%2Bscan3r.pth) |
54-
| Unified CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan]() |
54+
| Unified CrossOver trained on ScanNet + 3RScan + ARKitScenes + MultiScan | [ScanNet+3RScan+ARKitScenes+MultiScan](https://huggingface.co/gradient-spaces/CrossOver/tree/main/scene_crossover_scannet%2Bscan3r%2Bmultiscan%2Barkitscenes.pth) |
5555

5656

5757
# :shield: Single Inference

prepare_data/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ Scan3R/
119119
1. Download ARKitScenes 3dod data using the following command:
120120

121121
```bash
122-
python ARKitScenes/download_data.py 3dod --video_id_csv PATH_TO_3dod_train_val_splits.csv --download_dir PATH_TO_ARKITSCENES
122+
python download_data.py 3dod --video_id_csv PATH_TO_3dod_train_val_splits.csv --download_dir PATH_TO_ARKITSCENES
123123
```
124124
The files mentioned in the above command - ```download_data.py``` and ```3dod_train_val_splits.csv``` can be found in the official repository [here](https://github.com/apple/ARKitScenes), along with more detailed instructions and descriptions of the data.
125125

@@ -157,14 +157,14 @@ ARKitScenes/
157157
```
158158

159159
#### MultiScan
160-
1. Download MultiScan data into MultiScan/scenes and run the following to extract MultiScan data
160+
1. Download MultiScan data into MultiScan/scenes and run the following to extract MultiScan data.
161161

162162
```bash
163163
cd MultiScan/scenes
164164
unzip '*.zip'
165165
rm -rf '*.zip'
166166
```
167-
3. To generate sequence of RGB images and corresponding camera poses from the ```.mp4``` file, run the follwing
167+
3. To generate sequence of RGB images and corresponding camera poses from the ```.mp4``` file, run the following:
168168
```bash
169169
cd prepare_data/multiscan
170170
python preprocess_2d_multiscan.py --base_dir PATH_TO_MULTISCAN --frame_interval {frame_interval}
@@ -191,4 +191,4 @@ MultiScan/
191191
├── test_scans.txt
192192
└── sceneverse
193193
└── ssg_ref_rel2_template.json
194-
```
194+
```

trainer/build.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ def backward(self, loss: torch.Tensor) -> None:
122122
if self.grad_norm is not None and self.accelerator.sync_gradients:
123123
self.accelerator.clip_grad_norm_(self.model.parameters(), 1.0)
124124
self.optimizer.step()
125+
self.scheduler.step()
125126

126127
def log(self, results: Dict[str, Any], mode: str = "train") -> None:
127128
"""Log training metrics and learning rates."""

trainer/grounding_trainer.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@ def train_step(self, epoch: int) -> None:
3737

3838
pbar.update(1)
3939

40-
self.scheduler.step()
41-
4240
@torch.no_grad()
4341
def eval_step(self, epoch: int) -> bool:
4442
self.model.eval()

trainer/unified_trainer.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,6 @@ def train_step(self, epoch: int) -> None:
6161

6262
pbar.update(1)
6363

64-
self.scheduler.step()
65-
6664
@torch.no_grad()
6765
def eval_step(self, epoch: int) -> bool:
6866
self.model.eval()

0 commit comments

Comments
 (0)