Provided by: grass-doc_7.6.1-3build1_all bug


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


       vector, rectify, level1


       v.rectify --help
       v.rectify [-3orb] input=name output=name   [group=name]    [points=name]    [rmsfile=name]
       [order=integer]    [separator=character]   [--overwrite]  [--help]  [--verbose]  [--quiet]

           Perform 3D transformation

           Perform orthogonal 3D transformation

           Print RMS errors
           Print RMS errors and exit without rectifying the input map

           Do not build topology
           Advantageous when handling a large number of points

           Allow output files to overwrite existing files

           Print usage summary

           Verbose module output

           Quiet module output

           Force launching GUI dialog

       input=name [required]
           Name of input vector map
           Or data source for direct OGR access

       output=name [required]
           Name for output vector map

           Name of input imagery group

           Name of input file with control points

           Name of output file with RMS errors (if omitted or ’-’ output to stdout

           Rectification polynomial order (1-3)
           Options: 1-3
           Default: 1

           Field separator for RMS report
           Special characters: pipe, comma, space, tab, newline
           Default: pipe


       v.rectify uses 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 -o flag 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

       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

       2D Ground Control Points can be identified in g.gui.gcp.

       3D Ground Control Points must be provided in a text file with the points  option.  The  3D
       format  is  equivalent to the format for 2D ground control points with an additional third
        x y z east north height status
       where x, y, z are source coordinates, east,  north,  height  are  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 no group is given, the rectified vector will be written to the  current  mapset.  If  a
       group  is  given  and  a  target  has been set for this group with, the rectified
       vector will be written to the target location and mapset.

   Coordinate transformation and RMSE
       The desired order of transformation (1, 2, or  3)  is  selected  with  the  order  option.
       v.rectify  will  calculate  the  RMSE  if  the -r flag 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.

   2D linear affine transformation (1st order transformation)
       x’ = a1 + b1 * x + c1 * y
       y’ = a2 + b2 * x + c2 * y

   3D linear affine transformation (1st order transformation)
       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.

   Polynomial Transformation Matrix (2nd, 3d order transformation)
       v.rectify  uses  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.


       The GRASS 4 Image Processing manual

        g.gui.gcp,, i.rectify,, m.transform, r.proj, v.proj, v.transform,
        Manage Ground Control Points


       Markus Metz

       based on i.rectify

       Last changed: $Date: 2016-01-29 10:29:57 +0100 (Fri, 29 Jan 2016) $


       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