(self, img_size: Sequence[int])
| 600 | self._slices: tuple[slice, ...] |
| 601 | |
| 602 | def randomize(self, img_size: Sequence[int]) -> None: |
| 603 | self._size = fall_back_tuple(self.roi_size, img_size) |
| 604 | if self.random_size: |
| 605 | max_size = img_size if self.max_roi_size is None else fall_back_tuple(self.max_roi_size, img_size) |
| 606 | if any(i > j for i, j in zip(self._size, max_size)): |
| 607 | raise ValueError(f"min ROI size: {self._size} is larger than max ROI size: {max_size}.") |
| 608 | self._size = tuple(self.R.randint(low=self._size[i], high=max_size[i] + 1) for i in range(len(img_size))) |
| 609 | if self.random_center: |
| 610 | valid_size = get_valid_patch_size(img_size, self._size) |
| 611 | self._slices = get_random_patch(img_size, valid_size, self.R) |
| 612 | |
| 613 | def __call__(self, img: torch.Tensor, randomize: bool = True, lazy: bool | None = None) -> torch.Tensor: # type: ignore |
| 614 | """ |
no test coverage detected