这是一个用于CT图像重建仿真的Python项目,实现了基本的CT扫描模拟和图像重建功能。
- 支持CT扫描过程的模拟
- 实现了Ram-Lak滤波器的滤波反投影算法
- 提供不同角度步长的重建效果对比
- 包含直接反投影和滤波反投影两种重建方法
- 自动计算和可视化重建误差
- Python 3.6+
- NumPy
- SciPy
- scikit-image
- Matplotlib
- 克隆或下载本项目到本地
- 安装依赖包:
pip install -r requirements.txt- 准备一张输入图像(支持PNG格式)
- 运行主程序:
python reconstruction.py程序将自动执行以下操作:
- 模拟CT扫描过程
- 生成正弦图
- 应用Ram-Lak滤波器
- 使用不同角度步长进行图像重建
- 显示重建结果和误差分析
normalize_image(): 图像归一化create_circular_mask(): 创建圆形掩码
simulate_ct_scan(): 模拟CT扫描过程radon(): 执行拉东变换
rl_filter(): Ram-Lak滤波器实现manual_iradon(): 手动实现反拉东变换ct_reconstruction(): 不同角度步长的重建效果对比
程序会生成以下可视化结果:
- 原始图像、正弦图和滤波后的正弦图
- 不同角度步长下的重建结果对比
- 重建误差分析图表