cars.applications.dense_matching.methods.abstract_dense_matching_method
This module contains the abstract dense matching method class
Classes
AbstractDenseMatchingMethod |
Module Contents
- class cars.applications.dense_matching.methods.abstract_dense_matching_method.AbstractDenseMatchingMethod(conf=None)[source]
AbstractDenseMatchingMethod This class is an abstraction for the low-level dense matching method concept
- available_methods: Dict
- default_method = 'pandora_auto'
- schema = None
- used_config = None
- loader = None
- abstract get_optimal_tile_size(disp_range_grid, max_ram_per_worker, min_epi_tile_size, max_epi_tile_size, local_disp_grid_step, epipolar_tile_margin_in_percent)[source]
Get the optimal tile size to use during dense matching.
- Parameters:
disp_range_grid (dict) – minimum and maximum disparity grid
max_ram_per_worker (int) – maximum RAM per worker
min_epi_tile_size (int) – minimum epipolar tile size
max_epi_tile_size (int) – maximum epipolar tile size
local_disp_grid_step (int) – disparity grid step
epipolar_tile_margin_in_percent (float) – margin percentage
- Returns:
optimal tile size and local function
- Return type:
tuple
- abstract get_performance_map_parameters()[source]
Get parameter linked to performance, that will be used in triangulation
- Returns:
parameters to use
- Type:
dict
- abstract get_margins_fun(grid_left, disp_range_grid, min_elevation_offset, max_elevation_offset)[source]
Get Margins function that generates margins needed by matching method, to use during resampling.
- Parameters:
grid_left (dict) – left epipolar grid
disp_range_grid (dict) – minimum and maximum disparity grid
min_elevation_offset (float) – minimum elevation offset
max_elevation_offset (float) – maximum elevation offset
- Returns:
function that generates margin for given roi
- Return type:
callable
- abstract run(left_image_object: xarray.Dataset, right_image_object: xarray.Dataset, disp_range_grid, saving_info=None, compute_disparity_masks=False, crop_with_range=None, left_overlaps=None, margins_to_keep=0, texture_bands=None, classif_bands_to_mask=None)[source]
Run dense matching on a pair of epipolar images.
Compute the disparity map between left and right images using the configured dense matching method.
- Parameters:
left_image_object (xr.Dataset) – left epipolar image as xarray Dataset with: - data with keys: “im”, optionally “msk”, “texture”, “classif” - attrs with keys: “margins” with “disp_min” and “disp_max”, “transform”, “crs”, “valid_pixels”, “no_data_mask”, “no_data_img”
right_image_object (xr.Dataset) – right epipolar image as xarray Dataset with: - data with keys: “im”, optionally “msk”, “texture”, “classif” - attrs with keys: “margins” with “disp_min” and “disp_max”, “transform”, “crs”, “valid_pixels”, “no_data_mask”, “no_data_img”
disp_range_grid (dict) – minimum and maximum disparity grid
saving_info (dict) – information for saving outputs
compute_disparity_masks (bool) – activate computation of disparity masks
crop_with_range (int or None) – crop disparity map using provided range
left_overlaps (dict or None) – overlaps associated to left image tiles
margins_to_keep (int) – margins to keep after dense matching
texture_bands (list) – indices of bands from left image used for texture
classif_bands_to_mask (list of str or int) – bands from classification to mask
- Returns:
disparity map.
The CarsDataset contains:
N x M delayed tiles.
Each tile is an xarray Dataset containing:
data with keys: “disp”, “disp_msk”
attrs with keys: “profile”, “window”, “overlaps”
attributes containing:
”largest_epipolar_region”
”opt_epipolar_tile_size”
”disp_min_tiling”
”disp_max_tiling”
- Return type: