将DICOM转换为TIFF

3 投票
2 回答
8071 浏览
提问于 2025-04-17 13:05

我刚开始学Python,所以如果我说的不对,请多包涵。我想在一个文件夹里查找所有的DICOM文件,并把它们转换成TIFF文件。我已经搞定了搜索功能,但在保存图片为TIFF格式时遇到了困难。我正在使用pydicom库来读取DICOM文件并处理一些头部信息。另外,我试过用pydicom里的save_as函数来保存为TIFF,但我更想用PIL里的save函数,这样可以更好地设置TIFF的压缩方式。我觉得问题在于我不知道怎么提取DICOM文件里的实际图像数据,并把它放到一个新的图像里。任何帮助都非常感谢... 谢谢!

Python 2.7
PIL 1.1.7
Pydicom 0.9.6

2 个回答

4

之前在网上找到过一个类似的问题的答案,虽然我不记得具体是哪个网站,但我把这个方法应用到我的代码里了,所以在这里分享给大家:

 import pylab
 import dicom
 ImageFile=dicom.read_file(<SourceFilePath>) #Path to "*.dcm" file
 pylab.imshow(ImageFile.pixel_array,cmap=pylab.cm.bone) #to view image

如果你想保存图片,可以用下面的代码: pylab.imsave('<目标文件路径>', ImageFile.pixel_array, cmap=pylab.cm.bone)

这里的 imsave 默认会把图片保存为 .png 格式。不过,如果你想要其他格式,也可以在 imsave() 里指定,只要那个格式是支持的。

希望这个对你有帮助。

0

如果你知道怎么用 PIL 来保存图片数据为 .tiff 格式,那么这个例子可以帮助你把图片数据从 pydicom 传递到 PIL(在评论中还有更多的信息)。

撰写回答