Spaces:
Runtime error
Runtime error
| def centre_crop(x, target): | |
| ''' | |
| Center-crop 3-dim. input tensor along last axis so it fits the target tensor shape | |
| :param x: Input tensor | |
| :param target: Shape of this tensor will be used as target shape | |
| :return: Cropped input tensor | |
| ''' | |
| if x is None: | |
| return None | |
| if target is None: | |
| return x | |
| target_shape = target.shape | |
| diff = x.shape[-1] - target_shape[-1] | |
| assert (diff % 2 == 0) | |
| crop = diff // 2 | |
| if crop == 0: | |
| return x | |
| if crop < 0: | |
| raise ArithmeticError | |
| return x[:, :, crop:-crop].contiguous() |