OrthoRectification¶
This application allows ortho-rectifying optical and radar images from supported sensors.
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¶
This group of parameters allows setting the input and output images.
Input Image -io.in image
Mandatory
The input image to ortho-rectify
Output Image -io.out image [dtype]
Mandatory
The ortho-rectified output image
Map Projection -map [utm|lambert2|lambert93|wgs|epsg]
Default value: utm
Defines the map projection to be used.
Universal Trans-Mercator (UTM)
A system of transverse mercator projections dividing the surface of Earth between 80S and 84N latitude.Lambert II Etendu
This is a Lambert Conformal Conic projection mainly used in France.Lambert93
This is a Lambert 93 projection mainly used in France.WGS 84
This is a Geographical projectionEPSG Code
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;
Universal Trans-Mercator (UTM) options¶
Zone number -map.utm.zone int
Default value: 31
The zone number ranges from 1 to 60 and allows defining the transverse mercator projection (along with the hemisphere)
Northern Hemisphere -map.utm.northhem bool
Default value: false
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.
EPSG Code options¶
EPSG Code -map.epsg.code int
Default value: 4326
See www.spatialreference.org to find which EPSG code is associated to your projection
Output Image Grid¶
This group of parameters allows one to define the grid on which the input image will be resampled.
Parameters estimation modes -outputs.mode [auto|autosize|autospacing|outputroi|orthofit]
Default value: auto
User Defined
This mode allows you to fully modify default values.Automatic Size from Spacing
This mode allows you to automatically compute the optimal image size from given spacing (pixel size) valuesAutomatic Spacing from Size
This mode allows you to automatically compute the optimal image spacing (pixel size) from the given sizeAutomatic Size from Spacing and output corners
This mode allows you to automatically compute the optimal image size from spacing (pixel size) and output cornersFit to ortho
Fit the size, origin and spacing to an existing ortho image (uses the value of outputs.ortho)
Upper Left X -outputs.ulx double
Mandatory
Cartographic X coordinate of upper-left corner (meters for cartographic projections, degrees for geographic ones)
Upper Left Y -outputs.uly double
Mandatory
Cartographic Y coordinate of the upper-left corner (meters for cartographic projections, degrees for geographic ones)
Size X -outputs.sizex int
Mandatory
Size of projected image along X (in pixels)
Size Y -outputs.sizey int
Mandatory
Size of projected image along Y (in pixels)
Pixel Size X -outputs.spacingx double
Mandatory
Size of each pixel along X axis (meters for cartographic projections, degrees for geographic ones)
Pixel Size Y -outputs.spacingy double
Mandatory
Size of each pixel along Y axis (meters for cartographic projections, degrees for geographic ones)
Lower right X -outputs.lrx double
Cartographic X coordinate of the lower-right corner (meters for cartographic projections, degrees for geographic ones)
Lower right Y -outputs.lry double
Cartographic Y coordinate of the lower-right corner (meters for cartographic projections, degrees for geographic ones)
Model ortho-image -outputs.ortho image
A model ortho-image that can be used to compute size, origin and spacing of the output
Force isotropic spacing by default -outputs.isotropic bool
Default value: true
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 double
Default value: 0
Default value to write when outside of input image.
Elevation management¶
This group of parameters allows managing elevation values.
DEM directory -elev.dem directory
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. Input DEM tiles should be in a raster format supported by GDAL.
Geoid File -elev.geoid filename [dtype]
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 (egm96.grd and egm96.grd.hdr at https://gitlab.orfeo-toolbox.org/orfeotoolbox/otb/-/tree/master/Data/Input/DEM).
Default elevation -elev.default float
Default value: 0
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 [bco|nn|linear]
Default value: bco
This group of parameters allows one to define how the input image will be interpolated during resampling.
Bicubic interpolation
Nearest Neighbor interpolation
Nearest neighbor interpolation leads to poor image quality, but it is very fast.Linear interpolation
Linear interpolation leads to average image quality but is quite fast
Bicubic interpolation options¶
Radius for bicubic interpolation -interpolator.bco.radius int
Default value: 2
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.
Speed optimization parameters¶
This group of parameters allows optimization of processing time.
RPC modeling (points per axis) -opt.rpc int
Default value: 10
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 int
Default value: 256
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 double
Default value: 4
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.
Examples¶
From the command-line:
otbcli_OrthoRectification -io.in QB_TOULOUSE_MUL_Extract_500_500.tif -io.out QB_Toulouse_ortho.tif
From Python:
import otbApplication
app = otbApplication.Registry.CreateApplication("OrthoRectification")
app.SetParameterString("io.in", "QB_TOULOUSE_MUL_Extract_500_500.tif")
app.SetParameterString("io.out", "QB_Toulouse_ortho.tif")
app.ExecuteAndWriteOutput()
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.