resize_batch#
- composer.functional.resize_batch(input, target, scale_factor, mode='resize', resize_targets=False)[source]#
Resize inputs and optionally outputs by cropping or interpolating.
- Parameters
input (Tensor) โ input tensor of shape
(N, C, H, W). Resizing will be done along dimensions H and W using the constant factorscale_factor.target (Tensor) โ output tensor of shape
(N, H, W)or(N, C, H, W)that will also be resized ifresize_targetsisTrue,scale_factor (float) โ scaling coefficient for the height and width of the input/output tensor. 1.0 keeps the original size.
mode (str, optional) โ type of scaling to perform. Value must be one of
'crop'or'resize'.'crop'performs a random crop, whereas'resize'performs a nearest neighbor interpolation. Default:"resize".resize_targets (bool, optional) โ whether to resize the targets,
y. Default:False.
- Returns
X_sized โ resized input tensor of shape
(N, C, H * scale_factor, W * scale_factor).y_sized โ if
resized_targetsisTrue, resized output tensor of shape(N, H * scale_factor, W * scale_factor)or(N, C, H * scale_factor, W * scale_factor). Depending on the inputy. Otherwise returns originaly.
Example
from composer.algorithms.progressive_resizing import resize_batch X_resized, y_resized = resize_batch(X_example, y_example, scale_factor=0.5, mode='resize', resize_targets=False)