xdem.coreg.Deramp

xdem.coreg.Deramp#

class xdem.coreg.Deramp(poly_order=2, fit_or_bin='fit', fit_func=<function polynomial_2d>, fit_optimizer=<function curve_fit>, bin_sizes=10, bin_statistic=<function nanmedian>, bin_apply_method='linear', subsample=500000.0)[source]#

Correct for a 2D polynomial along X/Y coordinates, for example from residual camera model deformations (dome-like errors) or tilts (rotational errors).

The correction parameters are stored in the self.meta[“outputs”][“fitorbin”] key “fit_params”, that can be passed to the associated function in key “fit_func”.

__init__(poly_order=2, fit_or_bin='fit', fit_func=<function polynomial_2d>, fit_optimizer=<function curve_fit>, bin_sizes=10, bin_statistic=<function nanmedian>, bin_apply_method='linear', subsample=500000.0)[source]#

Instantiate a directional bias correction.

Parameters:
  • poly_order (int) – Order of the 2D polynomial to fit.

  • fit_or_bin (Literal['bin_and_fit'] | Literal['fit'] | Literal['bin']) – Whether to fit or bin, or both. Use “fit” to correct by optimizing a function or “bin” to correct with a statistic of central tendency in defined bins, or “bin_and_fit” to perform a fit on the binned statistics.

  • fit_func (Callable[..., ndarray[tuple[Any, ...], dtype[floating[Any]]]]) – Function to fit to the bias with variables later passed in .fit().

  • fit_optimizer (Callable[..., tuple[ndarray[tuple[Any, ...], dtype[floating[Any]]], Any]]) – Optimizer to minimize the function.

  • bin_sizes (int | dict[str, int | Iterable[float]]) – Size (if integer) or edges (if iterable) for binning variables later passed in .fit().

  • bin_statistic (Callable[[ndarray[tuple[Any, ...], dtype[floating[Any]]]], floating[Any]]) – Statistic of central tendency (e.g., mean) to apply during the binning.

  • bin_apply_method (Literal['linear'] | Literal['per_bin']) – Method to correct with the binned statistics, either “linear” to interpolate linearly between bins, or “per_bin” to apply the statistic for each bin.

  • subsample (float | int) – Subsample the input for speed-up. <1 is parsed as a fraction. >1 is a pixel count.

Methods

__init__([poly_order, fit_or_bin, fit_func, ...])

Instantiate a directional bias correction.

apply(elev[, bias_vars, resample, ...])

copy()

Return an identical copy of the class.

fit(reference_elev, to_be_aligned_elev[, ...])

Estimate the coregistration transform on the given DEMs.

fit_and_apply(reference_elev, to_be_aligned_elev)

info([as_str])

Attributes

is_affine

Check if the transform be explained by a 3D affine transform.

is_translation

meta

Metadata dictionary of the coregistration.