我有 800 张 BMP 格式的图像,我想将它们转换为 DICOM。我是这样开始的,但由于某种原因它不起作用。
我对VTK的经验是有限的:
file_in = 'C:/programfile/image.bmp'
file_out = 'test1.dcm'
vtkGDCMImageReader()
这是在python中:
r = vtkBMPReader()
r.SetFileName( 'test1.bmp' )
w = vtkGDCMImageWriter()
w.SetInput( r.GetOutput() )
w.SetFileName( 'test1.dcm' )
w.Write()
如果您的输入 BMP 使用查找表,您可以简单地传递它:
r = vtkBMPReader()
r.SetFileName( 'test1.bmp' )
r.Allow8BitBMPOn()
r.Update()
r.GetOutput().GetPointData().GetScalars().SetLookupTable( r.GetLookupTable() )
w = vtkGDCMImageWriter()
w.SetInput( r.GetOutput() )
w.SetFileName( 'test1.dcm' )
w.SetImageFormat( VTK_LOOKUP_TABLE );
w.Write()
反之(DICOM -> BMP):
r = vtkGDCMImageReader()
r.SetFileName( 'test1.dcm' )
w = vtkBMPWriter()
w.SetInput( r.GetOutput() )
w.SetFileName( 'test1.bmp' )
w.Write()
当然,您可以从命令行执行此操作,只需使用gdcm2vtk:
$ gdcm2vtk input.bmp output.dcm
或者
$ gdcm2vtk --palette-color input.bmp output.dcm