The surface of the earth has to be modeled for geometrics functions localization and rectification. Two types of earth model are available :
- constant elevation over ellipsoid
DEM
which represents the surface of the earth
DEM
is a 2.5D representation of the surface of the earth.
DEM must respects some constraints to be understandable by Shareloc :
- format : DEM format has to be readable by GDAL (via
rasterio
)- monolitic data : tiled DEM has to be mosaicked, using
gdalbuildvrt
command for example.- georeferenced : DEM must contains geotransform and
CRS
.
DEM
can be used for Localization on DEM function and Rectification using shareloc.geofunctions.DTMIntersection class.
Since Shareloc works w.r.t elllipsoid by default, geoid height has to be removed from DEM
if w.r.t geoid.
Shareloc provides egm96_15 in its data
class DTMdtm_reader(Image):
def __init__(
self,
dtm_filename,
geoid_filename=None,
read_data=False,
roi=None,
roi_is_in_physical_space=False,
fill_nodata="rio_fillnodata",
fill_value=None,
):
For example, the SRTM data corresponding to the zone to process can be used through the otbcli_DownloadSRTMTiles OTB command.
- nodata are not (yet) handled in shareloc.geofunctions.DTMIntersection code. Thus a filling strategy should be set when using nodata DTM. This can be done by setting fill_nodata arg in shareloc.geofunctions.DTMIntersection. Filling strategy examples can be found in test test_dtm_image