一、3D Slicer 核心插件说明
1. slicerRadiomics 插件
- 核心功能:从医学影像(CT/MRI)中提取放射组学特征(形状、一阶统计、纹理特征等),将影像转化为量化生物标志物。
- 应用场景:肿瘤良恶性鉴别、预后预测、精准医疗研究、药物研发患者分层。
- 依赖库:核心依赖
pyradiomics(Python 库),需搭配numpy、scipy、SimpleITK等。
2. Total Segmentator 插件
- 核心功能:基于深度学习的全自动 CT 影像分割,可快速分割 100 + 解剖结构(全身器官、特定血管 / 病变等)。
- 优势:适配不同扫描设备,支持 GPU 加速(1-2 分钟完成全身分割),可辅助手术规划、放疗靶区生成。
- 适用格式:支持 DICOM/NIfTI 格式影像。
二、Python 环境配置(conda+Jupyter)
- conda 虚拟环境核心操作
(1)创建环境(指定 Python 版本,适配 pyradiomics)
python
# 创建Python 3.10的环境(pyradiomics兼容3.7-3.10)
conda create -n slicer2 python=3.10 -y
(2)激活 / 退出环境
bash
conda activate slicer2 # 激活目标环境
conda deactivate # 退出当前环境
(3)删除环境
bash
conda env list # 查看所有环境,确认目标环境名称
conda remove -n 环境名 --all # 彻底删除环境(需先退出)
jupyter kernelspec remove 环境名 # 同步删除对应的Jupyter Kernel
(4)环境包管理
bash
# 导出环境包列表
pip freeze > 包列表文件名.txt
# 从列表安装包
pip install -r 包列表文件名.txt
2. Jupyter Notebook Kernel 配置
(1)注册 Kernel(让 Jupyter 识别 conda 环境)
bash
# 激活目标环境(如slicer2)
conda activate slicer2
# 安装ipykernel依赖
pip install ipykernel
# 注册Kernel(--user避免权限问题)
python -m ipykernel install --user --name slicer2 --display-name "Python (slicer2)"
(2)验证与切换 Kernel
- 启动 Jupyter:
jupyter notebook - 新建 Notebook 时选择 "Python (slicer2)";已有 Notebook 通过「Kernel → Change Kernel」切换。
- 查看已安装 Kernel:
jupyter kernelspec list
(3)删除冗余 Kernel
bash
jupyter kernelspec remove slicer2 # 对应环境删除后同步清理
3. Jupyter Notebook 快捷键
- 删除单元格:命令模式(Esc 进入)下按两次
d(dd) - 撤销删除:命令模式下按
z - 模式切换:编辑模式(绿色边框)按
Esc进入命令模式,命令模式按Enter进入编辑模式
三、pyradiomics 安装问题及解决方案
1. 核心安装命令(优先推荐)
bash
# 激活conda环境后执行
pip install --upgrade pip setuptools wheel
pip install numpy==1.21.5 scipy==1.7.3 SimpleITK==2.1.1 # 先安装依赖
pip install pyradiomics # 安装稳定版
# 若需最新开发版(官方仓库)
pip install git+https://github.com/Radiomics/pyradiomics.git
2. 常见错误及解决方法
(1)"Failed to build pyradiomics"
- 原因:缺少 C 编译工具(Windows)或依赖库不全。
- 解决:Windows 安装「Visual C++ Build Tools」(勾选 "Desktop development with C++"),重启后重新安装。
(2)"ModuleNotFoundError: No module named 'numpy'"
- 原因:numpy 安装在其他环境,或安装损坏。
- 解决:在当前环境重新安装指定版本:
pip install numpy==1.21.5,若仍失败则卸载后重装。
(3)Python 版本不兼容
- 原因:pyradiomics 暂不支持 Python 3.11+(如 3.14)。
- 解决:创建 Python 3.10 环境(参考 "conda 环境创建" 步骤),在新环境中安装。
(4)仓库地址错误("无 setup.py")
- 原因:使用了非官方仓库(如
mvallieres/radiomics)。 - 解决:改用官方仓库安装(见核心安装命令)。
3. 验证安装成功
python
# 在Python终端或Jupyter中执行
import radiomics
import numpy
print("pyradiomics版本:", radiomics.__version__)
print("numpy版本:", numpy.__version__)
四、关键文件操作与特征提取
1. pyradiomics 特征提取示例
python
from radiomics import featureextractor
# 初始化提取器
extractor = featureextractor.RadiomicsFeatureExtractor()
# 执行提取(输入影像文件和标签文件)
feature_result = extractor.execute('image.nrrd', 'label.nrrd')
# 打印前5个特征(验证结果)
for i, (key, value) in enumerate(feature_result.items()):
if i < 5:
print(f"{key}: {value}")
2. 常见提示说明
-
提示 "GLCM is symmetrical...":并非错误,是 GLCM 特征计算的冗余提示,不影响结果,可通过日志隐藏: python
import logging logging.getLogger('radiomics').setLevel(logging.ERROR)
五、注意事项
- 环境兼容性:pyradiomics 对 Python 版本要求严格(3.7-3.10),避免使用 3.11 + 版本。
- 路径问题:特征提取时,确保
image.nrrd和label.nrrd路径正确,且两者空间维度、分辨率一致。 - 权限问题:Jupyter Kernel 注册时需加
--user参数,避免无管理员权限导致安装失败。