← Back to all transforms
LongestMaxSize
Description
Rescale an image so that the longest side is equal to max_size, keeping the aspect ratio of the initial image. Args: max_size (int, Sequence[int]): Maximum size of the image after the transformation. When using a list or tuple, the max size will be randomly selected from the values provided. interpolation (OpenCV flag): interpolation method. Default: cv2.INTER_LINEAR. mask_interpolation (OpenCV flag): flag that is used to specify the interpolation algorithm for mask. Should be one of: cv2.INTER_NEAREST, cv2.INTER_LINEAR, cv2.INTER_CUBIC, cv2.INTER_AREA, cv2.INTER_LANCZOS4. Default: cv2.INTER_NEAREST. p (float): probability of applying the transform. Default: 1. Targets: image, mask, bboxes, keypoints Image types: uint8, float32 Note: - If the longest side of the image is already equal to max_size, the image will not be resized. - This transform will not crop the image. The resulting image may be smaller than max_size in both dimensions. - For non-square images, the shorter side will be scaled proportionally to maintain the aspect ratio. Example: >>> import albumentations as A >>> import cv2 >>> transform = A.Compose([ ... A.LongestMaxSize(max_size=1024, interpolation=cv2.INTER_LINEAR), ... A.PadIfNeeded(min_height=1024, min_width=1024, border_mode=cv2.BORDER_CONSTANT), ... ]) >>> # Assume we have a 1500x800 image >>> transformed = transform(image=image) >>> transformed_image = transformed['image'] >>> transformed_image.shape (1024, 546, 3) # The longest side (1500) is scaled to 1024, and the other side is scaled proportionally
Parameters
- max_size: int | list[int] (default: 1024)
- interpolation: Literal['cv2.INTER_NEAREST', 'cv2.INTER_LINEAR', 'cv2.INTER_CUBIC', 'cv2.INTER_AREA', 'cv2.INTER_LANCZOS4', 'cv2.INTER_BITS', 'cv2.INTER_NEAREST_EXACT', 'cv2.INTER_MAX'] (default: 1)
- mask_interpolation: Annotated[int, annotation=NoneType required=True description='Interpolation', AfterValidator(func=<function check_valid_interpolation at 0x7c132ac54220>)] | None (default: 0)
- p: float (default: 1)
Targets
- Image
- Mask
- BBoxes
- Keypoints
Try it out
ⓘ