本文整理汇总了Python中pydicom.dataset.Dataset.BitsAllocated方法的典型用法代码示例。如果您正苦于以下问题:Python Dataset.BitsAllocated方法的具体用法?Python Dataset.BitsAllocated怎么用?Python Dataset.BitsAllocated使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pydicom.dataset.Dataset
的用法示例。
在下文中一共展示了Dataset.BitsAllocated方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_pixel_data
# 需要导入模块: from pydicom.dataset import Dataset [as 别名]
# 或者: from pydicom.dataset.Dataset import BitsAllocated [as 别名]
def test_pixel_data(self):
"""Test correcting PixelData."""
ref_ds = Dataset()
# If BitsAllocated > 8 then VR must be OW
ref_ds.BitsAllocated = 16
ref_ds.PixelData = b'\x00\x01' # Little endian 256
ds = correct_ambiguous_vr(deepcopy(ref_ds), True) # Little endian
self.assertEqual(ds.PixelData, b'\x00\x01')
self.assertEqual(ds[0x7fe00010].VR, 'OW')
ds = correct_ambiguous_vr(deepcopy(ref_ds), False) # Big endian
self.assertEqual(ds.PixelData, b'\x00\x01')
self.assertEqual(ds[0x7fe00010].VR, 'OW')
# If BitsAllocated <= 8 then VR can be OB or OW: OW
ref_ds = Dataset()
ref_ds.BitsAllocated = 8
ref_ds.Rows = 2
ref_ds.Columns = 2
ref_ds.PixelData = b'\x01\x00\x02\x00\x03\x00\x04\x00'
ds = correct_ambiguous_vr(deepcopy(ref_ds), True)
self.assertEqual(ds.PixelData, b'\x01\x00\x02\x00\x03\x00\x04\x00')
self.assertEqual(ds[0x7fe00010].VR, 'OW')
# If BitsAllocated <= 8 then VR can be OB or OW: OB
ref_ds = Dataset()
ref_ds.BitsAllocated = 8
ref_ds.Rows = 2
ref_ds.Columns = 2
ref_ds.PixelData = b'\x01\x02\x03\x04'
ds = correct_ambiguous_vr(deepcopy(ref_ds), True)
self.assertEqual(ds.PixelData, b'\x01\x02\x03\x04')
self.assertEqual(ds[0x7fe00010].VR, 'OB')
# If no BitsAllocated then VR should be unchanged
ref_ds = Dataset()
ref_ds.PixelData = b'\x00\x01' # Big endian 1
ds = correct_ambiguous_vr(deepcopy(ref_ds), True)
self.assertEqual(ds.PixelData, b'\x00\x01')
self.assertEqual(ds[0x7fe00010].VR, 'OB or OW')
# If required elements missing then VR should be unchanged
ref_ds = Dataset()
ref_ds.BitsAllocated = 8
ref_ds.Rows = 2
ref_ds.PixelData = b'\x01\x02\x03\x04'
ds = correct_ambiguous_vr(deepcopy(ref_ds), True)
self.assertEqual(ds.PixelData, b'\x01\x02\x03\x04')
self.assertEqual(ds[0x7fe00010].VR, 'OB or OW')
示例2: test_reshape_pixel_array_not_implemented
# 需要导入模块: from pydicom.dataset import Dataset [as 别名]
# 或者: from pydicom.dataset.Dataset import BitsAllocated [as 别名]
def test_reshape_pixel_array_not_implemented(self):
"""Test Dataset._reshape_pixel_array raises exception"""
ds = Dataset()
ds.SamplesPerPixel = 2
ds.BitsAllocated = 16
with pytest.raises(NotImplementedError):
ds._reshape_pixel_array(None)
示例3: test_length_in_pixels
# 需要导入模块: from pydicom.dataset import Dataset [as 别名]
# 或者: from pydicom.dataset.Dataset import BitsAllocated [as 别名]
def test_length_in_pixels(self, shape, bits, length):
"""Test get_expected_length(ds, unit='pixels')."""
ds = Dataset()
ds.Rows = shape[1]
ds.Columns = shape[2]
ds.BitsAllocated = bits
if shape[0] != 0:
ds.NumberOfFrames = shape[0]
ds.SamplesPerPixel = shape[3]
assert length[1] == get_expected_length(ds, unit='pixels')
示例4: test_endianness_not_set
# 需要导入模块: from pydicom.dataset import Dataset [as 别名]
# 或者: from pydicom.dataset.Dataset import BitsAllocated [as 别名]
def test_endianness_not_set(self):
"""Test for #704, Dataset.is_little_endian unset."""
ds = Dataset()
ds.file_meta = Dataset()
ds.file_meta.TransferSyntaxUID = ExplicitVRLittleEndian
ds.Rows = 10
ds.Columns = 10
ds.BitsAllocated = 16
ds.PixelRepresentation = 0
ds.SamplesPerPixel = 1
arr = np.ones((10, 10), dtype='uint16')
ds.PixelData = arr.tobytes()
assert ds.pixel_array.max() == 1
示例5: _create_temporary_dataset
# 需要导入模块: from pydicom.dataset import Dataset [as 别名]
# 或者: from pydicom.dataset.Dataset import BitsAllocated [as 别名]
def _create_temporary_dataset(shape=(100, 1024, 1024, 3), bit_depth=16):
"""Function to create a temporary dataset for use in testing.
Parameters
----------
shape : 4-tuple
The (frames, rows, columns, channels) of the test dataset.
bit_depth : int
The BitsAllocated value to use for the dataset, one of 8, 16, 32, 64.
Returns
-------
tempfile.TemporaryFile
A created DICOM File Format conformant dataset.
"""
ds = Dataset()
ds.is_little_endian = True
ds.is_implicit_VR = False
ds.file_meta = Dataset()
ds.file_meta.TransferSyntaxUID = ExplicitVRLittleEndian
ds.SOPClassUID = '1.2.3.4'
ds.SOPInstanceUID = generate_uid()
ds.BitsAllocated = bit_depth
ds.PixelRepresentation = 0
ds.PlanarConfiguration = 0
ds.Rows = shape[1]
ds.Columns = shape[2]
ds.NumberOfFrames = shape[0]
ds.SamplesPerPixel = shape[3]
if shape[3] == 1:
ds.PhotometricInterpretation = 'MONOCHROME2'
elif shape[3] == 3:
ds.PhotometricInterpretation = 'RGB'
arr = np.zeros(shape, dtype='uint{}'.format(bit_depth))
ds.PixelData = arr.tobytes()
if len(ds.PixelData) % 2:
ds.PixelData += b'\x00'
tfile = TemporaryFile(mode='w+b')
ds.save_as(tfile, write_like_original=False)
tfile.seek(0)
return tfile