Ortho-rectification
Brief Description
This application allows ortho-rectifying optical and radar images from supported sensors.
Tags
Geometry
Long Description
This application uses inverse sensor modelling combined with a choice of interpolation functions to resample a sensor geometry image into a ground geometry regular grid. The ground geometry regular grid is defined with respect to a map projection (see map parameter). The application offers several modes to estimate the output grid parameters (origin and ground sampling distance), including automatic estimation of image size, ground sampling distance, or both, from image metadata, user-defined ROI corners, or another ortho-image.A digital Elevation Model along with a geoid file can be specified to account for terrain deformations.In case of SPOT5 images, the sensor model can be approximated by an RPC model in order to speed-up computation.
Parameters
Input and output data (io): This group of parameters allows setting the input and output images.
Input Image (io.in): The input image to ortho-rectify
Output Image (io.out): The ortho-rectified output image
Map Projection (map): Defines the map projection to be used.
Universal Trans-Mercator (UTM) (utm): A system of transverse mercator projections dividing the surface of Earth between 80S and 84N latitude.
Zone number (map.utm.zone): The zone number ranges from 1 to 60 and allows defining the transverse mercator projection (along with the hemisphere)
Northern Hemisphere (map.utm.northhem): The transverse mercator projections are defined by their zone number as well as the hemisphere. Activate this parameter if your image is in the northern hemisphere.
Lambert II Etendu (lambert2): This is a Lambert Conformal Conic projection mainly used in France.
Lambert93 (lambert93): This is a Lambert 93 projection mainly used in France.
WGS 84 (wgs): This is a Geographical projection
EPSG Code (epsg): This code is a generic way of identifying map projections, and allows specifying a large amount of them. See www.spatialreference.org to find which EPSG code is associated to your projection;
EPSG Code (map.epsg.code): See www.spatialreference.org to find which EPSG code is associated to your projection
Output Image Grid (outputs): This group of parameters allows one to define the grid on which the input image will be resampled.
Parameters estimation modes (outputs.mode):
User Defined (auto): This mode allows you to fully modify default values.
Automatic Size from Spacing (autosize): This mode allows you to automatically compute the optimal image size from given spacing (pixel size) values
Automatic Spacing from Size (autospacing): This mode allows you to automatically compute the optimal image spacing (pixel size) from the given size
Automatic Size from Spacing and output corners (outputroi): This mode allows you to automatically compute the optimal image size from spacing (pixel size) and output corners
Fit to ortho (orthofit): Fit the size, origin and spacing to an existing ortho image (uses the value of outputs.ortho)
Upper Left X (outputs.ulx): Cartographic X coordinate of upper-left corner (meters for cartographic projections, degrees for geographic ones)
Upper Left Y (outputs.uly): Cartographic Y coordinate of the upper-left corner (meters for cartographic projections, degrees for geographic ones)
Size X (outputs.sizex): Size of projected image along X (in pixels)
Size Y (outputs.sizey): Size of projected image along Y (in pixels)
Pixel Size X (outputs.spacingx): Size of each pixel along X axis (meters for cartographic projections, degrees for geographic ones)
Pixel Size Y (outputs.spacingy): Size of each pixel along Y axis (meters for cartographic projections, degrees for geographic ones)
Lower right X (outputs.lrx): Cartographic X coordinate of the lower-right corner (meters for cartographic projections, degrees for geographic ones)
Lower right Y (outputs.lry): Cartographic Y coordinate of the lower-right corner (meters for cartographic projections, degrees for geographic ones)
Model ortho-image (outputs.ortho): A model ortho-image that can be used to compute size, origin and spacing of the output
Force isotropic spacing by default (outputs.isotropic): Default spacing (pixel size) values are estimated from the sensor modeling of the image. It can therefore result in a non-isotropic spacing. This option allows you to force default values to be isotropic (in this case, the minimum of spacing in both direction is applied. Values overridden by user are not affected by this option.
Default pixel value (outputs.default): Default value to write when outside of input image.
Elevation management (elev): This group of parameters allows managing elevation values. Supported formats are SRTM, DTED or any geotiff. DownloadSRTMTiles application could be a useful tool to list/download tiles related to a product.
DEM directory (elev.dem): This parameter allows selecting a directory containing Digital Elevation Model files. Note that this directory should contain only DEM files. Unexpected behaviour might occurs if other images are found in this directory.
Geoid File (elev.geoid): Use a geoid grid to get the height above the ellipsoid in case there is no DEM available, no coverage for some points or pixels with no_data in the DEM tiles. A version of the geoid can be found on the OTB website(https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb-data/blob/master/Input/DEM/egm96.grd).
Default elevation (elev.default): This parameter allows setting the default height above ellipsoid when there is no DEM available, no coverage for some points or pixels with no_data in the DEM tiles, and no geoid file has been set. This is also used by some application as an average elevation value.
Interpolation (interpolator): This group of parameters allows one to define how the input image will be interpolated during resampling.
Bicubic interpolation (bco):
Radius for bicubic interpolation (interpolator.bco.radius): This parameter allows one to control the size of the bicubic interpolation filter. If the target pixel size is higher than the input pixel size, increasing this parameter will reduce aliasing artifacts.
Nearest Neighbor interpolation (nn): Nearest neighbor interpolation leads to poor image quality, but it is very fast.
Linear interpolation (linear): Linear interpolation leads to average image quality but is quite fast
Speed optimization parameters (opt): This group of parameters allows optimization of processing time.
RPC modeling (points per axis) (opt.rpc): Enabling RPC modeling allows one to speed-up SPOT5 ortho-rectification. Value is the number of control points per axis for RPC estimation
Available RAM (Mb) (opt.ram): This allows setting the maximum amount of RAM available for processing. As the writing task is time consuming, it is better to write large pieces of data, which can be achieved by increasing this parameter (pay attention to your system capabilities)
Resampling grid spacing (opt.gridspacing): Resampling is done according to a coordinate mapping deformation grid, whose pixel size is set by this parameter, and expressed in the coordinate system of the output image The closer to the output spacing this parameter is, the more precise will be the ortho-rectified image,but increasing this parameter will reduce processing time.
Load otb application from xml file (inxml): Load otb application from xml file
Save otb application to xml file (outxml): Save otb application to xml file
Limitations
Supported sensors (both optical and radar) are: GeoEye, Ikonos, Pleiades, Quickbird, RadarSat, Sentinel-1, SPOT5 (TIF format), SPOT6/7, TerraSAR-X, Worldview 1/2/3, and any TIF image with embedded RPC tags.
Also note that the opt.gridspacing default value may not be suitable for all sensors. In particular, if this value is lower than the target ground sampling distance, the processing time may increase a lot. A warning is issued in this case. Typical values should be half the DEM ground sampling distance.
Authors
OTB-Team
See also
Ortho-rectification chapter from the OTB Software Guide
Example of use
io.in: QB_TOULOUSE_MUL_Extract_500_500.tif
io.out: QB_Toulouse_ortho.tif
otbcli_OrthoRectification -io.in QB_TOULOUSE_MUL_Extract_500_500.tif -io.out QB_Toulouse_ortho.tif