跳转到主要内容

DCM2NIIX Python包

项目描述

Build Status Build status

关于

dcm2niix 是一个设计用来将神经影像学数据从DICOM格式转换为NIfTI格式的软件。这个网页托管了开发源代码——Linux、MacOS和Windows的最新稳定版本的编译版本包含在 MRIcroGL 中。该软件的完整手册以 NITRC wiki 的形式提供。

DICOM格式是现代医学成像设备生成的标准图像格式。然而,DICOM非常复杂,不同的供应商对它的解释也不尽相同。NIfTI格式受到科学家的欢迎,它非常简单且明确。然而,这种简单性也带来了限制(例如,它要求切片均匀)。dcm2niix还可以生成一个BIDS JSON格式辅助文件,以供应商无关和人类可读的形式包含脑科学家所需的相关信息。[神经影像学DICOM和NIfTI入门指南](https://github.com/DataCurationNetwork/data-primers/blob/master/Neuroimaging%20DICOM%20and%20NIfTI%20Data%20Curation%20Primer/neuroimaging-dicom-and-nifti-data-curation-primer.md)提供了详细信息。

许可证

本软件是开源的。大部分代码受BSD许可证的约束。一些单元是公共领域(nifti*.*, miniz.c)或使用MIT许可证(ujpeg.cpp)。有关更多详细信息,请参阅license.txt文件。

依赖项

本软件通常可以在macOS、Linux和Windows上运行,无需安装其他软件。但是,如果您使用dcm2niix创建gz压缩图像,如果您已经安装了pigz,则运行速度会更快。您可以通过下载MRIcroGL来获得为您的操作系统编译的dcm2niix和pigz版本。

图像转换和压缩

DICOM提供了多种存储/压缩图像数据的方式,称为传输语法。COMPILE.md文件描述了如何启用不同的选项以支持更多格式。

  • 基本代码包括对原始、行程长度编码和经典JPEG无损解码的支持。
  • 有损JPEG由包含的NanoJPEG处理。此支持是模块化的:您可以为其编译libjpeg-turbo或完全禁用它。
  • JPEG-LS无损支持是可选的,可以使用CharLS提供。
  • JPEG2000有损和无损支持是可选的,可以使用OpenJPEGJasper提供。
  • GZ压缩(例如创建.nii.gz图像)是可选的,可以使用包含的miniz或流行的zlib。特别值得一提的是,Cloudflare zlib利用了自2008年以来可用的现代硬件进行非常快速的压缩。或者,您也可以编译不带gzip压缩器的dcm2niix。无论您如何编译dcm2niix,它都可以使用外部程序pigz进行并行压缩。

版本

请参阅[发布说明](https://github.com/rordenlab/dcm2niix/releases)以获取最新的发布说明。请参阅VERSIONS.md文件以获取早期版本的详细信息

贡献

dcm2niix是由社区为社区开发的,每个人都可以成为社区的一部分。

运行

命令行使用说明请参阅NITRC维基。最简单的命令行调用是dcm2niix /path/to/dicom/folder。但是,您可能需要调用附加选项,例如调用dcm2niix -z y -f %p_%t_%s -o /path/output /path/to/dicom/folder将数据保存为gzip压缩,文件名基于协议名(%p)获取时间(%t)和DICOM系列号(%s),所有文件都保存到“output”文件夹中。有关更多帮助,请参阅帮助:dcm2niix -h

请参阅BATCH.md文件以获取使用批量处理版本的说明。.

安装

安装dcm2niix有几种方法。

  • GitHub 发布版(Github Releases)提供最新的编译版可执行文件。这对于 MacOS 和 Windows 用户来说是一个非常好的选择。然而,提供的 Linux 可执行文件需要较新版本的 Linux(例如 Ubuntu 14.04 或更高版本),因此提供的 Unix 可执行文件不适合非常旧的发行版。具体来说,它需要 2014 年的 Glibc 2.19 或更高版本。较旧系统的用户可以编译自己的 dcm2niix 版本,或者下载包含在 MRIcroGL Glibc 2.12(2011 年,见下文)中的编译版本。
  • 运行以下命令以获取 Linux、Macintosh 或 Windows 的最新版本
    • curl -fLO https://github.com/rordenlab/dcm2niix/releases/latest/download/dcm2niix_lnx.zip
    • curl -fLO https://github.com/rordenlab/dcm2niix/releases/latest/download/dcm2niix_mac.zip
    • curl -fLO https://github.com/rordenlab/dcm2niix/releases/latest/download/dcm2niix_mac_arm.pkg
    • curl -fLO https://github.com/rordenlab/dcm2niix/releases/latest/download/dcm2niix_win.zip
  • MRIcroGL (NITRC)MRIcroGL (GitHub) 包含可以用于命令行或图形用户界面(选择导入菜单项)运行的 dcm2niix。dcm2niix 的 Linux 版本是在一个 holy build box 上编译的,因此它应该可以在任何 Linux 发行版上运行。
  • 如果您有带有 Homebrew 或 MacPorts 的 MacOS 计算机,您可以通过分别运行 brew install dcm2niixsudo port install dcm2niix 来安装。
  • 如果您有 Conda,可以在 Linux、MacOS 或 Windows 上运行 conda install -c conda-forge dcm2niix
  • 如果您有 pip,可以在 Linux、MacOS 或 Windows 上运行 python -m pip install pydcm2niix
  • 在 Debian Linux 计算机上,您可以运行 sudo apt-get install dcm2niix

从源代码构建

通常下载和安装预编译版本更容易。但是,您也可以从源代码构建。

使用 cmake 构建 cmder 版本(Linux、MacOS、Windows)

cmakepkg-config(可选)可以按以下方式安装

Ubuntu: sudo apt-get install cmake pkg-config

MacOS: brew install cmake pkg-configsudo port install cmake pkgconfig

基本构建

git clone https://github.com/rordenlab/dcm2niix.git
cd dcm2niix
mkdir build && cd build
cmake ..
make

dcm2niix 将在 bin 子文件夹中创建。要在系统上安装,请运行 make install 而不是 make - 这将把可执行文件复制到您的路径,这样您就不需要提供完整的可执行文件路径。

在极少数情况下,如果 cmake 失败并显示类似 "Generator: execution of make failed" 的消息,可以通过运行 sudo ln -s `which make` /usr/bin/gmake 来修复。

高级构建

如“图像转换和压缩支持”部分所述,该软件提供了许多可选模块,具有增强的功能。一个常见的选择可能包括支持 JPEG2000、JPEG-LS(此选项需要 c++14 编译器),以及使用高性能的 Cloudflare zlib 库(此选项需要 2008 年之后制造的 CPU)。要使用这些选项构建,只需在配置 cmake 时请求它们即可。

git clone https://github.com/rordenlab/dcm2niix.git
cd dcm2niix
mkdir build && cd build
cmake -DZLIB_IMPLEMENTATION=Cloudflare -DUSE_JPEGLS=ON -DUSE_OPENJPEG=ON ..
make

可选批量处理版本

批量处理二进制文件 dcm2niibatch 是可选的。要同时构建 dcm2niibatch,请将 cmake 命令更改为 cmake -DBATCH_VERSION=ON ..。这需要一个支持 c++11 的编译器。

不使用 cmake 构建 cmder 版本

如果您在上述 cmake 构建脚本中遇到任何问题或想自定义软件,请参阅 COMPILE.md 文件以获取手动编译的详细信息

引用

  • Li X, Morgan PS, Ashburner J, Smith J, Rorden C (2016) 神经影像数据分析的第一步:DICOM到NIfTI的转换。J Neurosci Methods. 264:47-56. doi: 10.1016/j.jneumeth.2016.03.001. PMID: 26945974

替代方案

  • BIDS-converter 提供PET图像的Matlab和Python脚本,支持DICOM和ECAT (ecat2nii) 格式。
  • dcm2nii 是dcm2niix的前身。它已被弃用,用于现代图像,但可以处理早于DICOM的图像格式(专有Elscint、GE和Siemens格式)。
  • Python dcmstack 具有元数据保留的DICOM到Nifti转换。
  • dicm2nii 是用Matlab编写的。Matlab语言使得此脚本非常灵活。
  • dicom2nifti 使用可脚本化的Python包装器利用高性能GDCMCONV可执行文件。
  • dicomtonifti 利用VTK
  • dinifti 专注于Siemens数据的转换。
  • DWIConvert 将DICOM图像转换为NRRD和NIfTI格式。
  • mcverter 对各种供应商的支持非常好。
  • mri_convert 是FreeSurfer流行软件包的一部分。在我的有限经验中,这个工具对GE和Siemens数据效果很好,但无法处理Philips 4D数据集。
  • MRtrix mrconvert 是一个有用的通用图像转换器,并且处理DTI数据很好。它是对现代Philips增强图像出色的工具。
  • nanconvert 使用ITK库将GE和专有Bruker的DICOM转换为标准格式,如DICOM。
  • PET CT viewer for Fiji 可以加载DICOM图像并导出为NIfTI。
  • Plastimatch 是一个瑞士军刀——它计算配准、图像处理、统计,并且有一个基本的图像格式转换器,可以将一些DICOM图像转换为NIfTI或NRRD。
  • Simple Dicom Reader 2 (Sdr2) 使用dcmtk来读取DICOM图像并将它们转换为NIfTI格式。
  • SlicerHeart扩展专门设计用来帮助3D Slicer支持存储为DICOM的超声波(US)图像。
  • spec2nii 将MR波谱转换为NIFTI。
  • SPM12 是该领域最受欢迎的工具之一。它包括DICOM到NIfTI的转换。由于基于Matlab,它易于脚本化。

链接

以下工具利用dcm2niix

项目详情


下载文件

下载适合您平台文件的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分布

pydcm2niix-1.0.20220116.tar.gz (411.0 kB 查看哈希值)

上传时间

由以下支持