Skip to content

Files

Latest commit

author
BigBang019
Nov 22, 2024
d8436d9 · Nov 22, 2024

History

History
65 lines (49 loc) · 2.11 KB

README.md

File metadata and controls

65 lines (49 loc) · 2.11 KB

Deep3DMark

Official implementation of paper "Rethinking Mesh Watermark: Towards Highly Robust and Adaptable Deep 3D Mesh Watermarking". AAAI 2024. Xingyu Zhu, Guanhui Ye, Xiapu Luo, Xuetao Wei.

Enviroment

conda create -n Deep3DMark python=3.8
conda install pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=12.1 -c pytorch -c nvidia
pip install -r requirements.txt

# install local cuda env
cd model/backend
pip install .

Data Preparation

Deep3DMark is trained on m2500 (decimated ModelNet40 dataset with target vertex number=2500) and m500 (decimated ModelNet40 dataset with target vertex number=500) and evaluted on the entire ModelNet40. We preprocess ModelNet40 using CGAL to obtain decimated dataset.

With m2500 installed, you need to update dataset root directory in the provided config file config/debug_wm.yaml, config/GAT8_2_2_1.yaml:

train_set:
  ...
  root: # update path to m2500 root directory
  ...

valid_set:
  ...
  root: # update path to m2500 root directory
  ...

Running Models

Evalutaion

We provide ckpts of both pretrained msg encoder/decoder and the Deep3DMark.

With ckpt, ModelNet40 and m2500 installed. You can run

python debug.py --config config/debug_wm.yaml

to reproduce SNR & robustness & size adapatation results reported in paper.

Training

To train a Deep3DMark model, run:

python train.py --config config/GAT8_2_2_1.yaml

Citation

@inproceedings{zhu2024rethinking,
  title={Rethinking Mesh Watermark: Towards Highly Robust and Adaptable Deep 3D Mesh Watermarking},
  author={Zhu, Xingyu and Ye, Guanhui and Luo, Xiapu and Wei, Xuetao},
  booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
  volume={38},
  number={7},
  pages={7784--7792},
  year={2024}
}