############################################################################ # # Program: GDCM (Grassroots DICOM). A DICOM library # # Copyright (c) 2006-2011 Mathieu Malaterre # All rights reserved. # See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. # # This software is distributed WITHOUT ANY WARRANTY; without even # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR # PURPOSE. See the above copyright notice for more information. # ############################################################################ """ Usage: python headsq2dcm.py -D /path/to/VTKData """ import vtk import vtkgdcm from vtk.util.misc import vtkGetDataRoot VTK_DATA_ROOT = vtkGetDataRoot() reader = vtk.vtkVolume16Reader() reader.SetDataDimensions(64, 64) reader.SetDataByteOrderToLittleEndian() reader.SetFilePrefix(VTK_DATA_ROOT + "/Data/headsq/quarter") reader.SetImageRange(1, 93) reader.SetDataSpacing(3.2, 3.2, 1.5) cast = vtk.vtkImageCast() cast.SetInput( reader.GetOutput() ) cast.SetOutputScalarTypeToUnsignedChar() # By default this is creating a Multiframe Grayscale Word Secondary Capture Image Storage writer = vtkgdcm.vtkGDCMImageWriter() writer.SetFileName( "headsq.dcm" ) writer.SetInput( reader.GetOutput() ) # cast -> Multiframe Grayscale Byte Secondary Capture Image Storage #writer.SetInput( cast.GetOutput() ) writer.SetFileDimensionality( 3 ) writer.Write()