Provided by: grass-doc_7.6.1-3build1_all

**NAME**

v.rectify- Rectifies a vector by computing a coordinate transformation for each object in the vector based on the control points.

**KEYWORDS**

vector, rectify, level1

**SYNOPSIS**

v.rectifyv.rectify--helpv.rectify[-3orb]input=nameoutput=name[group=name] [points=name] [rmsfile=name] [order=integer] [separator=character] [--overwrite] [--help] [--verbose] [--quiet] [--ui]Flags:-3Perform 3D transformation-oPerform orthogonal 3D transformation-rPrint RMS errors Print RMS errors and exit without rectifying the input map-bDo not build topology Advantageous when handling a large number of points--overwriteAllow output files to overwrite existing files--helpPrint usage summary--verboseVerbose module output--quietQuiet module output--uiForce launching GUI dialogParameters:input=name[required]Name of input vector map Or data source for direct OGR accessoutput=name[required]Name for output vector mapgroup=nameName of input imagery grouppoints=nameName of input file with control pointsrmsfile=nameName of output file with RMS errors (if omitted or ’-’ output to stdoutorder=integerRectification polynomial order (1-3) Options:1-3Default:1separator=characterField separator for RMS report Special characters: pipe, comma, space, tab, newline Default:pipe

**DESCRIPTION**

v.rectifyuses control points to calculate a 2D or 3D transformation matrix based on a first, second, or third order polynomial and then converts x,y(, z) coordinates to standard map coordinates for each object in the vector map. The result is a vector map with a transformed coordinate system (i.e., a different coordinate system than before it was rectified). The-oflag enforces orthogonal rotation (currently for 3D only) where the axes remain orthogonal to each other, e.g. a cube with right angles remains a cube with right angles after transformation. This is not guaranteed even with affine (1st order) 3D transformation. Great care should be taken with the placement of Ground Control Points. For 2D transformation, the control points must not lie on a line, instead 3 of the control points must form a triangle. For 3D transformation, the control points must not lie on a plane, instead 4 of the control points must form a triangular pyramid. It is recommended to investigate RMS errors and deviations of the Ground Control Points prior to transformation. 2D Ground Control Points can be identified ing.gui.gcp. 3D Ground Control Points must be provided in a text file with thepointsoption. The 3D format is equivalent to the format for 2D ground control points with an additional third coordinate: x y z east north height status wherex,y,zare source coordinates,east,north,heightare target coordinates and status (0 or 1) indicates whether a given point should be used. Numbers must be separated by space and must use a point (.) as decimal separator. If nogroupis given, the rectified vector will be written to the current mapset. If agroupis given and a target has been set for this group withi.target, the rectified vector will be written to the target location and mapset.CoordinatetransformationandRMSEThe desired order of transformation (1, 2, or 3) is selected with theorderoption.v.rectifywill calculate the RMSE if the-rflag is given and print out statistcs in tabular format. The last row gives a summary with the first column holding the number of active points, followed by average deviations for each dimension and both forward and backward transformation and finally forward and backward overall RMSE.2Dlinearaffinetransformation(1stordertransformation)x’ = a1 + b1 * x + c1 * y y’ = a2 + b2 * x + c2 * y3Dlinearaffinetransformation(1stordertransformation)x’ = a1 + b1 * x + c1 * y + d1 * z y’ = a2 + b2 * x + c2 * y + d2 * z z’ = a3 + b3 * x + c3 * y + d3 * z The a,b,c,d coefficients are determined by least squares regression based on the control points entered. This transformation applies scaling, translation and rotation. It is NOT a general purpose rubber-sheeting, nor is it ortho-photo rectification using a DEM, not second order polynomial, etc. It can be used if (1) you have geometrically correct data, and (2) the terrain or camera distortion effect can be ignored.PolynomialTransformationMatrix(2nd,3dordertransformation)v.rectifyuses a first, second, or third order transformation matrix to calculate the registration coefficients. The minimum number of control points required for a 2D transformation of the selected order (represented by n) is ((n + 1) * (n + 2) / 2) or 3, 6, and 10 respectively. For a 3D transformation of first, second, or third order, the minimum number of required control points is 4, 10, and 20, respectively. It is strongly recommended that more than the minimum number of points be identified to allow for an overly-determined transformation calculation which will generate the Root Mean Square (RMS) error values for each included point. The polynomial equations are determined using a modified Gaussian elimination method.

**SEE** **ALSO**

The GRASS 4ImageProcessingmanualg.gui.gcp,i.group,i.rectify,i.target,m.transform,r.proj,v.proj,v.transform,ManageGroundControlPoints

**AUTHOR**

Markus Metz based on i.rectifyLastchanged:$Date:2016-01-2910:29:57+0100(Fri,29Jan2016)$

**SOURCE** **CODE**

Available at: v.rectify source code (history) Main index | Vector index | Topics index | Keywords index | Graphical index | Full index © 2003-2019 GRASS Development Team, GRASS GIS 7.6.1 Reference Manual