|
29 | 29 | from monai.data import image_writer |
30 | 30 | from monai.data.folder_layout import FolderLayout |
31 | 31 | from monai.data.image_reader import ImageReader, ITKReader, NibabelReader, NumpyReader, PILReader |
32 | | -from monai.data.meta_obj import get_track_meta |
33 | 32 | from monai.data.meta_tensor import MetaTensor |
34 | 33 | from monai.transforms.transform import Transform |
35 | 34 | from monai.transforms.utility.array import EnsureChannelFirst |
@@ -247,45 +246,11 @@ def __call__(self, filename: Union[Sequence[PathLike], PathLike], reader: Option |
247 | 246 | meta_data = switch_endianness(meta_data, "<") |
248 | 247 |
|
249 | 248 | meta_data[Key.FILENAME_OR_OBJ] = f"{ensure_tuple(filename)[0]}" # Path obj should be strings for data loader |
250 | | - img = self.join_im_and_meta(img_array, meta_data) |
| 249 | + img = MetaTensor.ensure_torch_and_prune_meta(img_array, meta_data) |
251 | 250 | if self.ensure_channel_first: |
252 | 251 | img = EnsureChannelFirst()(img) |
253 | 252 | return img |
254 | 253 |
|
255 | | - @staticmethod |
256 | | - def join_im_and_meta(im, meta: dict): |
257 | | - img = torch.as_tensor(im) |
258 | | - |
259 | | - # if not tracking metadata, return torch.Tensor |
260 | | - if not get_track_meta() or meta is None: |
261 | | - return img |
262 | | - |
263 | | - if "affine" in meta: |
264 | | - meta["affine"] = torch.as_tensor(meta["affine"]) |
265 | | - |
266 | | - # TODO: delete extra metadata |
267 | | - for i in range(8): |
268 | | - for k in ("dim", "pixdim"): |
269 | | - if f"{k}[{i}]" in meta: |
270 | | - del meta[f"{k}[{i}]"] |
271 | | - for k in ( |
272 | | - # "original_affine", |
273 | | - # "spatial_shape", |
274 | | - # "spacing", |
275 | | - "srow_x", |
276 | | - "srow_y", |
277 | | - "srow_z", |
278 | | - "quatern_b", |
279 | | - "quatern_c", |
280 | | - "quatern_d", |
281 | | - "qoffset_x", |
282 | | - "qoffset_y", |
283 | | - "qoffset_z", |
284 | | - ): |
285 | | - if k in meta: |
286 | | - del meta[k] |
287 | | - return MetaTensor(img, meta=meta) |
288 | | - |
289 | 254 |
|
290 | 255 | class SaveImage(Transform): |
291 | 256 | """ |
|
0 commit comments