darsia.Resize#

class Resize(ref_image=None, shape=None, fx=None, fy=None, interpolation=None, dtype=None, key='', **kwargs)[source]#

Bases: object

Object for resizing 2d arrays.

Examples

import darsia

options = {
    "example resize x": 0.2,
    "example resize y": 0.5,
    "example interpolation": "inter_nearest",
}
resizer = darsia.Resize(key="example ", **options)
img_small = resizer(img_large)
Parameters:
ref_imageImage, optional

Image whose shape is desired.

shapetuple of int, optional

Desired shape (in matrix indexing).

fxfloat, optional

Resize factor in x-dimension.

fyfloat, optional

Resize factor in y-dimension.

interpolationstr, optional

Interpolation method, default: None, invoking the default option in cv2.resize.

dtypenp.dtype or type, optional

Conversion dtype before resizing; nothing happens if None.

Methods

load(path)

Load parameters from file.

resize_array(img_array[, is_extensive])

Core resize logic for arrays, shared with BaseCorrection subclasses.

save(path)

Save parameters to npz file.

load(path)[source]#

Load parameters from file.

Parameters:
pathstr

Path to load the parameters from.

resize_array(img_array, is_extensive=False)[source]#

Core resize logic for arrays, shared with BaseCorrection subclasses.

Parameters:
img_arraynp.ndarray

Input image array (any shape).

is_extensivebool

Whether to apply conservative (extensive) rescaling.

Returns:
np.ndarray

Resized array.

save(path)[source]#

Save parameters to npz file.

Parameters:
pathstr

Path to save the parameters to.