|
Download README.md from DejvaX/ToothCraft: direct link, hf CLI and curl.
- Browser
- Download file 4.93 kB
-
https://huggingface.co/DejvaX/ToothCraft/resolve/main/README.md
- Command line
-
hf download hf://DejvaX/ToothCraft/README.md
-
curl -L -o README.md https://huggingface.co/DejvaX/ToothCraft/resolve/main/README.md
4.93 kB
| license: cc-by-nc-4.0 | |
| tags: | |
| - diffusion-model | |
| - 3d-generation | |
| - dental | |
| - medical-imaging | |
| - signed-distance-function | |
| - pytorch | |
| library_name: pytorch | |
| # ToothCraft | |
| --- | |
| license: cc-by-nc-4.0 | |
| tags: | |
| - diffusion-model | |
| - 3d-generation | |
| - dental | |
| - medical-imaging | |
| - signed-distance-function | |
| - pytorch | |
| library_name: pytorch | |
| --- | |
| # ToothCraft | |
| **ToothCraft** is a diffusion model for **patient-specific dental crown completion** — it reconstructs a missing or damaged tooth crown as a 3D shape, conditioned on the surrounding (local) anatomical context of the dental arch. It is the official pretrained-weights release accompanying the paper *"From Synthetic Data to Real Restorations: Diffusion Model for Patient-specific Dental Crown Completion"* (VISAPP 2026). | |
| - 📄 Paper: [arXiv:2603.26588](https://arxiv.org/abs/2603.26588) | |
| - 💻 Code: [github.com/ikarus1211/VISAPP_ToothCraft](https://github.com/ikarus1211/VISAPP_ToothCraft) | |
| - ✍️ Authors: Dávid Pukanec, Tibor Kubík, Michal Španěl | |
| ## Model description | |
| ToothCraft learns to complete incomplete tooth geometry by running a diffusion process over **Signed Distance Functions (SDFs)**, conditioned on a local context cutout that includes the neighboring crowns in the arch. The goal is to generate a crown that fits both the local morphology of the patient's dentition and the occlusion with the opposing (antagonist) teeth, reducing the risk of occlusal interference in real restorations. | |
| Because paired real damaged/complete crown data is scarce, the model was trained primarily on **synthetically damaged** teeth: an augmentation pipeline carves incomplete geometry out of complete dental arches from the public **3DS** and **ODD** datasets, which the model then learns to complete. The paper also reports that the resulting model transfers directly to real-world restoration cases. | |
| ### Checkpoints in this repository | |
| | File | Variant | Trained on | Notes | | |
| |---|---|---|---| | |
| | `ToothCraft_normal_control_branch.pth` | Normal | ODD | Control-branch weights | | |
| | `ToothCraft_normal_diff_branch.pth` | Normal | ODD | Diffusion-branch weights | | |
| | `ToothCraft_classfree_control_branch.pth` | Classifier-free | ODD | Control-branch weights | | |
| | `ToothCraft_classfree_diff_branch.pth` | Classifier-free | ODD | Diffusion-branch weights | | |
| | `ToothCraft_antag_control_branch.pth` | Antagonist-aware | ODD | Control-branch weights | | |
| | `ToothCraft_antag_diff_branch.pth` | Antagonist-aware | ODD | Diffusion-branch weights | | |
| | `ToothCraft_gingiva-mod_control_branch.pth` | Gingiva-aware ⭐ | ODD | Control-branch weights | | |
| | `ToothCraft_gingiva-mod_diff_branch.pth` | Gingiva-aware ⭐ | ODD | Diffusion-branch weights | | |
| > **Note:** each of the variants ships a *control branch* and a *diffusion branch* checkpoint, which are loaded together at inference time. | |
| > ⭐ **Recommended for clinical cases:** the gingiva-aware (`gingiva-mod`) variant reports improved results and is the best-suited checkpoint for real/clinical restorations, where the tooth does not properly connect to gingiva. | |
| ## Usage | |
| Inference and training code, configuration files, and the data-augmentation pipeline are provided in the companion GitHub repository: [ikarus1211/VISAPP_ToothCraft](https://github.com/ikarus1211/VISAPP_ToothCraft). Download the checkpoint(s) for the variant you need from this repository and point the relevant config (e.g. `configs/test/test_normal.yaml`) at the local file paths, then run: | |
| ```bash | |
| python test.py --config-path "configs/test" --config-name "test_normal.yaml" | |
| ``` | |
| See the GitHub README for environment setup (Python 3.10, PyTorch 2.9, Hydra-managed configs). | |
| ## Training data | |
| - **3DS** and **ODD** public dental arch datasets, processed with the repository's `AugmentPipeline/` to synthesize incomplete crowns from complete arches for training and evaluation. | |
| ## License | |
| This model (code is licensed separately — see the GitHub repository) is released under **[CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/)**: you may share and adapt it with attribution, for **non-commercial purposes only**. Contact the authors for commercial licensing. | |
| ***In addition to the rights granted under the CC BY-NC 4.0 license, we permit commercial entities to internally test and evaluate the model | |
| for a period of 90 days from the date the model is first obtained, provided that the model is not deployed in production and its outputs are | |
| not provided to third parties. For any other commercial use, please get in touch with the authors.*** | |
| ## Citation | |
| ```bibtex | |
| @inproceedings{pukanec2026toothcraft, | |
| title = {From Synthetic Data to Real Restorations: Diffusion Model for Patient-specific Dental Crown Completion}, | |
| author = {Pukanec, D\'avid and Kub\'ik, Tibor and \v{S}pan\v{e}l, Michal}, | |
| booktitle = {Proceedings of VISAPP 2026}, | |
| year = {2026}, | |
| doi = {10.5220/0014646500004084} | |
| } | |
| ``` | |