DiffuSmart - V0.40
磁共振弥散分析
DiffuSmart集成了磁共振弥散图像处理中常用的多种工具与模型,极大地简化了弥散数据的处理、分割、配准、重建、查看以及数据统计分析流程。
近期,由于工作需求,我深入研究了磁共振弥散技术。在这一领域,众多先驱者已经开发了多种弥散算法与模型,同时,诸如FSL、DKE、Dipy等免费及开源软件包也层出不穷。然而,大多数软件倾向于以图像浏览为核心,将数据处理功能整合到界面中,这种设计模式似乎不利于快速开发和功能的灵活扩展,导致功能相对单一。另一方面,像FSL这类依赖命令行操作的工具,虽然功能丰富且强大,但操作流程繁琐,且主要适用于Linux系统,对于广大医学从业者来说,其复杂性和使用便捷性都构成了一定的挑战。因此,我决定开发一款适合自己需求的弥散处理软件。
该软件应该以什么架构进行设计,一直是比较困扰我的一个问题。25年1月,特斯拉新款Model Y的发布让我眼前一亮——该车型摒弃了传统的转向与换挡拨杆设计。这个设计突然启发了我,我决定采取极简主义设计理念,将软件主体精简为仅负责弥散文件管理,而将所有弥散数据处理功能均设计为可插拔的插件形式。这些插件将作为处理引擎,使弥散数据在其中流转,直至完成处理、分割、配准、重建、查看及数据统计分析等一系列任务。基于这一思路,我设计出了一款弥散软件,取名叫DiffuSmart。
DiffuSmart的插件化设计使得新功能的扩展变得非常简单。只需将新插件复制到指定目录,即可无缝融入软件体系,并与现有模块协同完成弥散处理。这样一来,新增功能的开发就转化为插件设计工作,无需对现有软件系统进行大幅调整。这种设计不仅加速了开发进程,还避免了对现有软件逻辑与程序的干扰,从而实现了功能的灵活拓展。DiffuSmart可以不断吸纳更多弥散处理模型,从而持续扩充其功能。
DiffuSmart从v0.40版本起,支持将第三方命令行程序直接形成插件,并接入DiffuSmart处理流程。使用者并不需要有编程基础,只需要会使用第三方命令行软件,进行简单文本定义,就可以将第三方程序,如:FSL等纳入DiffuSmart的生态。
参考处理时间
插件(已包含在安装包中)
文件管理
将DICOM转为nifty文件
将指定文件拷贝到工作目录
将工作目录中的文件拷贝到指定文件夹
删除选中的数据文件,不是立即删除,会进入任务列表排队
将文件进行重新命名
将nii.gz转为nii文件或是将nii转为nii.gz
批处理任务编辑器
刷新工作目录下文件
打开选中的文件所在的文件夹
用系统默认的程序,打开选中的文件
删除选中的目录及数据
数据查看
选中一个或多个NII文件,进行查看
使用Horizon来观察弥散相关数据
观察DTI椭球体
梯度向量可视化
彩色弥散相关图像显示
数据处理
将NIfTI文件的体素进行重采样
使用Local PCA进行图像去噪
使用Marcenko-Pastur PCA进行图像去噪
使用NLMeans进行图像去噪
统计独立性自监督去噪
按照B0图像,校正其他容积图像运动
去掉图像中的吉布斯伪影
将DWI数据,进行高斯平滑处理
将DWI数据,进行中值滤波处理
通过最大化两幅3D图像的互信息来计算仿射变换以配准噪
根据已经存在的仿射文件,进行3D或4D图像仿射变换配准
数据分割
手动创建或编辑已有蒙片,并对ROI进行统计分析
采用中值Otsu算法,将脑分割出来,并生成NII文件蒙片
通过设定分割阈值,生成NII蒙片
将NII数据,抽取部分层面
从DWI NII数据抽取指定B值图像,形成一个新的NII文
从DWI NII数据抽取指定序号图像,形成一个新的NII文件
对同一个B值的弥散图像进行算数平均,去掉弥散方向信息
数据重建
ADC表观弥散模型计算
IVIM(体素内不相干运动)模型计算
SEM 拉伸指数模型计算
DTI模型计算
DTI-ALPS 类淋巴模型计算
DKI模型计算
WMTI白质纤维束完整性模型计算
平均表观传播(Mean Apparent Propagator)模型计算
神经突方向离散度和密度成像(NODDI)模型计算
胞体与神经突密度成像(SANDI)模型计算
限制性谱成像(RSI)模型计算
自由水消除弥散张量模型(FWDTI)模型计算
三方插件
使用FSL中Bet2命令进行颅脑蒙片
使用DiffusionKit的bneddy软件进行涡流和头动校正
安装
● 下载ZIP软件包,解压缩
● 无需安装,直接运行 DiffuSmart.exe
使用说明
NII查看器+蒙片编辑&统计插件
## 图像区操作 ##
1. 放大图像:图像右侧(1/5区域),按下鼠标左键,上下移动。
2. 移动图像:图像右下角,按下鼠标左键,上下左右移动。
3. 调整图像窗宽和窗位:图像左侧(4/5区域),按下鼠标左键,上下左右移动。
4. 切换图像层面:载入的多层图像,滚动鼠标滚轮进行切换。
5. 切换不同类型和B值图像:通过键盘上的上、下、左、右按键。
## ROI鼠标勾画 ##
1. 添加ROI区域:按住Control键,按下鼠标左键,移动鼠标,添加ROI区域
2. 删除ROI区域:按住Shift键,按下鼠标左键,移动鼠标,删除ROI区域
## 特殊 ##
根据局部像素设置窗宽和窗位:按住Control健,按下鼠标中键,会根据鼠标周边100个像素,设置整图窗宽和窗位,用于图像有异常值,导致窗宽和窗位无法调整的情况。
按住Shift健,按下鼠标中键,恢复默认窗宽和窗位设置。
更新历史
2025.2.3 v0.10
- 原始版本
2025.2.15 v0.20
- 升级主程序,支持多核CPU计算
- DKI v0.20 多核插件
- MAP v0.20 多核插件
- IVIM V0.20 多核插件
- WMTI V0.20 多核插件
- 运动校正 v0.20 多核插件
- 修复自监督去噪插件Bug
- 增强主程序任务管理功能(可删除运行中的任务,一次删除多个任务,包括已完成或是错误任务)
2025.3.8 v0.30
- 修改和增加插件
- DKI v0.21 DKI模型增加Tensor图(可以用DKI的tensor来计算ALPS)
- FWDTI V0.10 增加自由水消除DTI模型
- RSI V0.10 增加限制谱模型
- 导出文件 v.010 将工作目录中的文件拷贝到指定文件夹
- 升级主程序,支持简单批处理
- 可以将已完成图像处理流程标保存为批处理文件(job)
- 可以载入保存的批处理文件(job),自动化完成图像处理
2025.5.1 v0.40
- 修改和增加插件
- DICOM -> NII v0.11 增加json信息,可以选择是否生成DICOM相关json信息
- 删除文件(队列) V0.10 增加任务队列中的删除文件功能,用于方便批处理使用
- 重命名文件 v0.10 增加将文件进行重新命名
- nii.gz/nii 互转 v0.10 增加将nii.gz转为nii文件或是将nii转为nii.gz
- 任务编辑器 增加将保存的任务进行编辑,从而拓展到不同目录的数据
- DiffuSmart的通用插件 支持将第三方命令行程序直接接入DiffuSmart软件生态