Пример #1
0
 def save_load_save_load(self, dimensions):
     path = self.dir / f'img{dimensions}d.nii'
     shape = [4]
     for _ in range(dimensions - 1):
         shape.append(6)
     shape = *shape[1:4], shape[0]  # save channels in last dim
     nii = nib.Nifti1Image(np.random.rand(*shape), np.eye(4))
     nii.to_filename(path)
     read_nii_tensor, _ = io.read_image(path)
     assert read_nii_tensor.shape == shape
     assert read_nii_tensor.ndim == dimensions
     image = ScalarImage(path)
     image.save(path)
     read_tio_tensor, _ = io.read_image(path)
     assert tuple(read_tio_tensor.shape) == shape
     assert read_tio_tensor.ndim == dimensions, read_tio_tensor.shape
Пример #2
0
    def apply_transform(self, subject):
        corrupted_query = subject.filename.split(".")[0] + "*"
        files = glob(self.path_corrupt + "/**/" + corrupted_query,
                     recursive=True)
        corrupt_path = files[random.randint(0, len(files) - 1)]
        transformed, _ = read_image(corrupt_path)

        vol = subject['im'][tio.DATA].float()
        transformed = transformed.float()
        if self.norm_mode == 1:
            vol = vol / vol.max()
            transformed = transformed / transformed.max()
        elif self.norm_mode == 2:
            vol = (vol - vol.min()) / (vol.max() - vol.min())
            transformed = (transformed - transformed.min()) / (
                transformed.max() - transformed.min())
        subject['im'][tio.DATA] = torch.cat([vol, transformed], 0)
        return subject
Пример #3
0
 def test_4d_not_supported(self):
     path = self.dir / 'img4d.nii'
     nii = nib.Nifti1Image(np.random.rand(4, 5, 6, 7), np.eye(4))
     nii.to_filename(str(path))
     with self.assertRaises(ValueError):
         io.read_image(path)
Пример #4
0
 def test_read_dicom_dir(self):
     io.read_image(self.dicom_dir)
Пример #5
0
 def test_read_dicom_file(self):
     io.read_image(self.dicom_path)
Пример #6
0
 def test_read_image(self):
     # I need to find something readable by nib but not sitk
     io.read_image(self.nii_path)
     io.read_image(self.nii_path, itk_first=True)
Пример #7
0
 def test_read_dicom_dir(self):
     tensor, _ = io.read_image(self.dicom_dir)
     self.assertEqual(tuple(tensor.shape), (1, 88, 128, 17))