2011-02-17 130 views
2

我有BMP格式的800圖像,我想將它們轉換成DICOM。我已經開始這樣做了,但由於某種原因它不起作用。轉換成DICOM的BMP圖像

我VTK與經驗是有限的:

file_in = 'C:/programfile/image.bmp' 
file_out = 'test1.dcm' 
vtkGDCMImageReader() 

回答

1

這是蟒蛇:

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