-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
eric-zqwang
committed
Jul 1, 2024
1 parent
f60de0e
commit e30b9dd
Showing
19 changed files
with
692 additions
and
114 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,7 @@ tools/ | |
scripts/ | ||
data/ | ||
.vscode/ | ||
puzzlefusion_plusplus/auto_aggl.py | ||
|
||
|
||
__pycache__ | ||
*.ipynb | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,4 +4,4 @@ model: | |
num_bins: 6 | ||
embed_dim: 256 | ||
num_layers: 6 | ||
num_heads: 8 | ||
num_heads: 8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
## Data preparation | ||
We follow the | ||
[Breaking Bad Dataset](https://breaking-bad-dataset.github.io/) for data pre-processing. | ||
For more information about data processing, please refer to the dataset website. | ||
|
||
After processing the data, ensure that you have a folder named `data` with the following structure: | ||
``` | ||
data | ||
├── breaking_bad | ||
│ ├── everyday | ||
│ │ ├── BeerBottle | ||
│ │ │ ├── ... | ||
│ │ ├── ... | ||
│ ├── everyday.train.txt | ||
│ ├── everyday.val.txt | ||
│ └── ... | ||
└── ... | ||
``` | ||
Only the `everyday` subset is necessary. | ||
|
||
### Generate point cloud data | ||
In the orginal benchmark code of Breaking Bad dataset, it needs sample point cloud from mesh in each batch which is time-consuming. We pre-processing the mesh data and generate its point cloud data and its attribute. | ||
``` | ||
cd puzzlefusion-plusplus/ | ||
python generate_pc_data +data save_pc_data_path=data/pc_data/everyday/ | ||
``` | ||
|
||
### Verifier training data | ||
You can download the verifier data from [here](https://1sfu-my.sharepoint.com/:f:/g/personal/zwa170_sfu_ca/EtSHHinoDndPs8kJfRn_n0QBue1ypoXGkNEOio9pU6bFcQ?e=pkcuox). | ||
|
||
### Matching data | ||
You can download the matching data from [here](https://1sfu-my.sharepoint.com/:f:/g/personal/zwa170_sfu_ca/EtSHHinoDndPs8kJfRn_n0QBue1ypoXGkNEOio9pU6bFcQ?e=pkcuox). | ||
|
||
The verifier data and matching data need to generate the data from [Jigsaw](https://github.com/Jiaxin-Lu/Jigsaw). Since this process is quite complex, we will upload the processed data for now. More details on how to obtain this processed data will be provided later. | ||
|
||
## Checkpoints | ||
We provide the checkpoints at this [link](https://1sfu-my.sharepoint.com/:f:/g/personal/zwa170_sfu_ca/EoYp5Z5WiqtNuq_GOb5Yj1ABSI5lQSXG64StzXb6eTbXNg?e=N3uJ7L). Please download and place them as ./work_dirs/ then unzip. | ||
|
||
## Structure | ||
Finally, the overall data structure should looks like: | ||
``` | ||
puzzlefusion-plusplus/ | ||
├── data | ||
│ ├── pc_data | ||
│ ├── verifier_data | ||
│ ├── matching_data | ||
└── ... | ||
├── output | ||
│ ├── autoencoder | ||
│ ├── denoiser | ||
│ ├── ... | ||
└── ... | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,37 @@ | ||
- ### Installation | ||
**Step 1.** Create conda environment and activate. | ||
### Installation | ||
|
||
**Step 1.** Set up conda environment. | ||
|
||
``` | ||
conda create --name puzzlefusionpp python=3.8 -y | ||
conda activate puzzlefusionpp | ||
``` | ||
|
||
**Step 2.** Install PyTorch. | ||
``` | ||
conda install -y pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia | ||
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118 | ||
``` | ||
|
||
**Step 3.** Install pytorch3d, torch-cluster, chamferdist packages. | ||
``` | ||
# install pytorch3d | ||
git clone https://github.com/facebookresearch/pytorch3d.git | ||
cd pytorch3d && pip install -e . | ||
cd .. | ||
# install torch-cluster | ||
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.0.1+cu118.html | ||
**Step 3.** Install PyTorch3d. | ||
# install chamferdist | ||
git clone https://github.com/krrish94/chamferdist.git | ||
cd chamferdist && python setup.py install | ||
cd .. | ||
``` | ||
|
||
**Step 4.** Install remaining packages. | ||
|
||
pip3 install -r requirements.txt | ||
``` | ||
git clone https://github.com/eric-zqwang/puzzlefusion-plusplus.git | ||
cd puzzlefusion-plusplus/ | ||
pip3 install -r requirements.txt | ||
``` |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
## Test | ||
We provide the our checkpoints in [data preparation](../docs/data_preparation.md). | ||
You need make sure you download all the data from [data preparation](../docs/data_preparation.md). | ||
We only support batch size equal to one for testing. You need modify the checkpoint path for both pre-trained denoiser and verifier in the script. | ||
``` | ||
sh ./scripts/inference.sh | ||
``` | ||
|
||
The denoising parameter is stored in ./output/denoiser/{experiemnt_name}/inference/{inference_dir}. You can use this saved results to do visualization later. | ||
|
||
[Jigsaw](https://github.com/Jiaxin-Lu/Jigsaw) uses sampling by area to generate point cloud data. The point cloud is created using their method, and the matching points are obtained from their network. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.