Image processing dcm2pnm、dcmj2pnm和dcml2pnm之间的差异
标题说明了一切。dcmtk工具箱()的dcm2pnm()、dcmj2pnm()和dcml2pnm()命令之间有什么区别?它们似乎都能将dicom图像转换成其他格式。是否有任何特殊情况,其中一个应该优先于其他人Image processing dcm2pnm、dcmj2pnm和dcml2pnm之间的差异,image-processing,dicom,dcmtk,Image Processing,Dicom,Dcmtk,标题说明了一切。dcmtk工具箱()的dcm2pnm()、dcmj2pnm()和dcml2pnm()命令之间有什么区别?它们似乎都能将dicom图像转换成其他格式。是否有任何特殊情况,其中一个应该优先于其他人 编辑:看起来dcml2pnm支持更多的格式。为什么不把它用于所有目的呢?其他命令的优点是什么?dcmj2pnm将JPEG编解码器添加到dcm2pnm功能中。因此,它能够处理JPEG压缩的DICOM数据并生成JPEG输出图像。因此,它是dcm2pnm功能的超集。 我认为这是因为dcmtk提供
编辑:看起来dcml2pnm支持更多的格式。为什么不把它用于所有目的呢?其他命令的优点是什么?dcmj2pnm将JPEG编解码器添加到dcm2pnm功能中。因此,它能够处理JPEG压缩的DICOM数据并生成JPEG输出图像。因此,它是dcm2pnm功能的超集。 我认为这是因为dcmtk提供了不同的编译选项,允许包含/排除libjpeg。只是将工具箱的选项反映到附带的命令行工具中。从选项-h开始时,由文件格式列表确认
对于dcml2pnm,我不确定,但这是一个很好的猜测:与JPEG相同,但包括JPEG-LS编码器,这是另一个可选的第三方dcmtk工具包。我是dcmtk开发人员 三个DCMTK命令行工具之间的区别在于:支持压缩的DICOM图像和输出格式
- dcm2pnm是20多年前开发的原始工具,最初仅支持图像格式PNM/PGM输出(这也是为什么该工具被称为“dcm2pnm”,而不是“dcm2img”或类似工具)。而且,由于当时DCMTK不支持任何封装传输语法(即压缩),因此只能读取未压缩的DICOM图像
- dcmj2pnm位于DCMTK的子模块“dcmjpeg”中,增加了对JPEG压缩DICOM图像(基于IJG库)以及输出JPEG图像格式的支持
- dcml2pnm位于DCMTK的子模块“dcmjpls”中,增加了对JPEG-LS压缩DICOM图像的支持(基于CharLS库)。它不支持传统的JPEG格式
此外,我们将命令行工具视为底层C++类库的一种示例应用程序。因此,如果您需要一个支持DCMTK中所有可用图像压缩方案的工具,那么编写这样一个工具应该很容易。解释得很好。这些函数是否返回true/false或1/0等,以指示dicom文件是否可以正确打开和转换?@rnso是的,它们返回这些退出代码。也有计划对不同类型的错误使用不同的退出代码,并将其记录在手册页中,但这仍然在我们的待办事项列表中(当然,对于所有DCMTK命令行工具)。