我是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
答案 0 :(得分:3)
在某个时间回到同一个查询的网上找到答案,虽然我不记得该网站,但是当我将其应用到我的代码中时,也在这里为其他人分享:
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('<DestinationFilePath>',ImageFile.pixel_array,cmap=pylab.cm.bone)
默认情况下,imsave
会以 .png 格式保存图片。如果支持,您可以在imsave()
中指定所需的格式。
希望它有用。
答案 1 :(得分:1)
如果您知道如何使用PIL
将图片数据保存为.tiff
,this example应该可以帮助您将图片数据从pydicom
传递到PIL
(还有更多here in the comments)。