Yiqun Lin, et al. "Real-Time Reconstruction of 3D Bone Models via Very-Low-Dose Protocols"
@article{lin2026real,
title={Real-time reconstruction of 3D bone models via very-low-dose protocols},
author={Lin, Yiqun and Sun, Haoran and Li, Yongqing and Aslam, Rabia and Tse, Lung Fung and Cheng, Tiange and Chui, Chun Sing and Yau, Wing Fung and Le Meur, Victorine R and Amangeldy, Meruyert and others},
journal={npj Digital Medicine},
year={2026},
publisher={Nature Publishing Group UK London}
}
./data/*.pyare mainly used to preprocess CT, simulate X-ray projections, and generate segmentation masks from bone meshes. Processed data are saved in./data/processed/../bone_seg/is used for X-ray-based bone segmentation../bone_recon/is used for bone reconstruction../bone_recon/recon_ct/is used for CT-based bone reconstruction../bone_recon/recon_xrayis used for 2-view X-ray-based bone reconstruction.
For labeled data:
├── ./data/processed/<case_id>/
│ ├── submesh/
│ │ ├── sub_0.obj # Patella
│ │ ├── sub_1.obj # Femur
│ │ ├── sub_2.obj # Fibula
│ │ └── sub_3.obj # Tibia
│ ├── mesh.obj # merge bones
│ ├── projs.npz # X-rays (512×521)
│ ├── bone_mask.npz # X-rays's bone masks (512×512)
│ ├── ct_256x.npz # CT (256×256×256) used to train CT-based recon
│ ├── ct_512x.npz # CT (512×512×512) used to generate X-rays
│ ├── seg_mask.npz # CT's bone masks (512×512×512) used to generate X-rays' bone masks
│ ├── sampling.npz # sampled points
│ └── spacing.npz # spacing for CTFor unlabeled data:
├── ./data/processed/<case_id>/
│ ├── projs.npz # X-rays (512×521)
│ ├── ct_256x.npz # CT (256×256×256) used to train CT-based recon
│ ├── ct_512x.npz # CT (512×512×512) used to generate X-rays
│ └── spacing.npz # spacing for mesh/CTThis repo was developed and tested on the following environment:
- OS: Ubuntu 24.04
- GPU: 8x NVIDIA GeForce 3090 (at least two 3090 GPUs are required for model training)
- CUDA: 11.1
- PyTorch: 1.8 (also tested with 1.13)
Additionally, TIGRE is required for projection simulation, and PyTorch3D is required for calculating the chamfer distance (equal to ASSD).
| Metric | Average | Patella | Femur | Fibula | Tibia |
|---|---|---|---|---|---|
| DSC (%) ↑ | 90.9 | 87.5 | 96.1 | 84.1 | 96.0 |
| HD (mm) ↓ | 2.76 | 3.30 | 2.20 | 2.87 | 2.06 |
| ASSD (mm) ↓ | 0.94 | 1.12 | 0.80 | 1.05 | 0.77 |
| Model | Weight Link |
|---|---|
| bone_seg | 237 MB |
| recon_ct | 76 MB |
| recon_xray | 112 MB |
This repository is released under MIT License (see LICENSE file for details).