SAX-NeRF 使用与启动教程
1. 项目介绍
SAX-NeRF 是一个用于X射线三维重建的综合工具箱和库,包括两个任务:新视角合成(NVS)和计算机断层扫描(CT)重建。该工具箱支持11种最先进的方法,包括6种基于NeRF的方法、2种基于3DGS的方法、2种基于优化的方法和1种分析方法。此外,还提供了精美的可视化代码和数据生成工具,以帮助研究工作。
2. 项目快速启动
环境搭建
我们推荐使用 Conda 来设置环境:
# 创建环境
conda create -n sax_nerf python=3.9
conda activate sax_nerf
安装 PyTorch(注意版本匹配):
pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113
安装其他依赖:
pip install -r requirements.txt
如果需要执行传统的CT重建方法,建议安装TIGRE工具箱:
wget https://github.com/CERN/TIGRE/archive/refs/tags/v2.3.zip
unzip v2.3.zip
rm v2.3.zip
pip install cython==0.29.25
pip install numpy==1.21.6
cd TIGRE-2.3/Python/
python setup.py develop
准备数据集
从 Google Drive 或 Baidu Disk 下载处理后的数据集,并将下载的数据集放入 data/
文件夹中。
测试
可以从 Google Drive 或 Baidu Disk 直接下载预训练模型,并将下载的模型放入 pretrained/
文件夹中。以下是测试SAX-NeRF的示例:
python test.py --method Lineformer --category chest --config config/Lineformer/chest_50.yaml --weights pretrained/chest.tar --output_path output
训练
根据配置文件开始训练模型:
python train_mlg.py --config config/Lineformer/chest_50.yaml
其他方法的训练命令可以在相应的配置文件目录中找到。
可视化
使用 3D_vis
文件夹中的代码进行渲染演示:
cd 3D_vis
python 3D_vis_backpack.py
python 3D_vis_backpack_gif.py
生成自己的数据
使用 dataGenerator
文件夹中的代码生成自己的数据集。
3. 应用案例和最佳实践
- 使用SAX-NeRF进行CT重建和新视角合成。
- 通过调整配置文件中的参数优化模型性能。
- 利用提供的数据生成工具创建自定义数据集。
4. 典型生态项目
- NeRF(Neural Radiance Fields): 用于新视角合成的神经网络方法。
- TensoRF: 基于张量的辐射场方法。
- NAF(Neural Angular Fields): 用于X射线图像重建的神经网络方法。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考