既然您尝试使用python简单地解压缩图像,为什么不简单地使用以下方法:import gdcm
import sys
if __name__ == "__main__":
file1 = sys.argv[1] # input filename
file2 = sys.argv[2] # output filename
reader = gdcm.ImageReader()
reader.SetFileName( file1 )
if not reader.Read():
sys.exit(1)
change = gdcm.ImageChangeTransferSyntax()
change.SetTransferSyntax( gdcm.TransferSyntax(gdcm.TransferSyntax.ImplicitVRLittleEndian) )
change.SetInput( reader.GetImage() )
if not change.Change():
sys.exit(1)
writer = gdcm.ImageWriter()
writer.SetFileName( file2 )
writer.SetFile( reader.GetFile() )
writer.SetImage( change.GetOutput() )
if not writer.Write():
sys.exit(1)
使用时:
^{pr2}$
这导致:$ gdcminfo raw.dcm
MediaStorage is 1.2.840.10008.5.1.4.1.1.4 [MR Image Storage]
TransferSyntax is 1.2.840.10008.1.2 [Implicit VR Little Endian: Default Transfer Syntax for DICOM]
NumberOfDimensions: 2
Dimensions: (256,256,1)
SamplesPerPixel :1
BitsAllocated :16
BitsStored :16
HighBit :15
PixelRepresentation:1
ScalarType found :INT16
PhotometricInterpretation: MONOCHROME2
PlanarConfiguration: 0
TransferSyntax: 1.2.840.10008.1.2
Origin: (-85,21.6,108.7)
Spacing: (0.664062,0.664062,1.5)
DirectionCosines: (1,0,0,0,0,-1)
Rescale Intercept/Slope: (0,1)
Orientation Label: CORONAL
更新,似乎是原来的buggdcmObject.h:58: virtual gdcm::Object::~Object(): Assertion
`ReferenceCount == 0' failed.
已在上游解决: