1v.rectify(1)                  Grass User's Manual                 v.rectify(1)
2
3
4

NAME

6       v.rectify   -  Rectifies a vector by computing a coordinate transforma‐
7       tion for each object in the vector based on the control points.
8

KEYWORDS

10       vector, rectify, level1
11

SYNOPSIS

13       v.rectify
14       v.rectify --help
15       v.rectify [-3orb] input=name output=name  [group=name]    [points=name]
16       [rmsfile=name]     [order=integer]    [separator=character]    [--over‐
17       write]  [--help]  [--verbose]  [--quiet]  [--ui]
18
19   Flags:
20       -3
21           Perform 3D transformation
22
23       -o
24           Perform orthogonal 3D transformation
25
26       -r
27           Print RMS errors
28           Print RMS errors and exit without rectifying the input map
29
30       -b
31           Do not build topology
32           Advantageous when handling a large number of points
33
34       --overwrite
35           Allow output files to overwrite existing files
36
37       --help
38           Print usage summary
39
40       --verbose
41           Verbose module output
42
43       --quiet
44           Quiet module output
45
46       --ui
47           Force launching GUI dialog
48
49   Parameters:
50       input=name [required]
51           Name of input vector map
52           Or data source for direct OGR access
53
54       output=name [required]
55           Name for output vector map
56
57       group=name
58           Name of input imagery group
59
60       points=name
61           Name of input file with control points
62
63       rmsfile=name
64           Name of output file with RMS errors (if omitted or  ’-’  output  to
65           stdout
66
67       order=integer
68           Rectification polynomial order (1-3)
69           Options: 1-3
70           Default: 1
71
72       separator=character
73           Field separator for RMS report
74           Special characters: pipe, comma, space, tab, newline
75           Default: pipe
76

DESCRIPTION

78       v.rectify  uses  control  points to calculate a 2D or 3D transformation
79       matrix based on a first, second, or third  order  polynomial  and  then
80       converts  x,y(,  z)  coordinates  to  standard map coordinates for each
81       object in the vector map. The result is a vector map with a transformed
82       coordinate  system  (i.e., a different coordinate system than before it
83       was rectified).
84
85       The -o flag enforces orthogonal rotation (currently for 3D only)  where
86       the axes remain orthogonal to each other, e.g. a cube with right angles
87       remains a cube with right angles  after  transformation.  This  is  not
88       guaranteed even with affine (1st order) 3D transformation.
89
90       Great care should be taken with the placement of Ground Control Points.
91       For 2D transformation, the control points  must  not  lie  on  a  line,
92       instead  3 of the control points must form a triangle. For 3D transfor‐
93       mation, the control points must not lie on a plane, instead  4  of  the
94       control  points  must  form  a triangular pyramid. It is recommended to
95       investigate RMS errors and deviations  of  the  Ground  Control  Points
96       prior to transformation.
97
98       2D Ground Control Points can be identified in g.gui.gcp.
99
100       3D  Ground  Control  Points  must  be  provided in a text file with the
101       points option. The 3D format is equivalent to the format for 2D  ground
102       control points with an additional third coordinate:
103        x y z east north height status
104       where  x,  y,  z are source coordinates, east, north, height are target
105       coordinates and status (0 or 1) indicates whether a given point  should
106       be used. Numbers must be separated by space and must use a point (.) as
107       decimal separator.
108
109       If no group is given, the rectified vector will be written to the  cur‐
110       rent  mapset.  If  a  group is given and a target has been set for this
111       group with i.target, the rectified vector will be written to the target
112       location and mapset.
113
114   Coordinate transformation and RMSE
115       The  desired  order of transformation (1, 2, or 3) is selected with the
116       order option.  v.rectify will calculate the RMSE  if  the  -r  flag  is
117       given  and  print out statistcs in tabular format. The last row gives a
118       summary with the first column holding the number of active points, fol‐
119       lowed  by  average  deviations  for each dimension and both forward and
120       backward transformation and finally forward and backward overall RMSE.
121
122   2D linear affine transformation (1st order transformation)
123       x’ = a1 + b1 * x + c1 * y
124       y’ = a2 + b2 * x + c2 * y
125
126   3D linear affine transformation (1st order transformation)
127       x’ = a1 + b1 * x + c1 * y + d1 * z
128       y’ = a2 + b2 * x + c2 * y + d2 * z
129       z’ = a3 + b3 * x + c3 * y + d3 * z The a,b,c,d coefficients are  deter‐
130       mined  by least squares regression based on the control points entered.
131       This transformation applies scaling, translation and  rotation.  It  is
132       NOT a general purpose rubber-sheeting, nor is it ortho-photo rectifica‐
133       tion using a DEM, not second order polynomial, etc. It can be  used  if
134       (1)  you have geometrically correct data, and (2) the terrain or camera
135       distortion effect can be ignored.
136
137   Polynomial Transformation Matrix (2nd, 3d order transformation)
138       v.rectify uses a first, second, or third order transformation matrix to
139       calculate  the registration coefficients. The minimum number of control
140       points required for a 2D transformation of the selected  order  (repre‐
141       sented by n) is
142       ((n  +  1) * (n + 2) / 2) or 3, 6, and 10 respectively. For a 3D trans‐
143       formation of first, second, or  third  order,  the  minimum  number  of
144       required  control points is 4, 10, and 20, respectively. It is strongly
145       recommended that more than the minimum number of points  be  identified
146       to allow for an overly-determined transformation calculation which will
147       generate the Root Mean Square (RMS)  error  values  for  each  included
148       point.  The polynomial equations are determined using a modified Gauss‐
149       ian elimination method.
150

SEE ALSO

152       The GRASS 4 Image Processing manual
153
154        g.gui.gcp, i.group, i.rectify, i.target, m.transform, r.proj,  v.proj,
155       v.transform,
156        Manage Ground Control Points
157

AUTHOR

159       Markus Metz
160
161       based on i.rectify
162
163       Last changed: $Date: 2016-01-29 10:29:57 +0100 (Fri, 29 Jan 2016) $
164

SOURCE CODE

166       Available at: v.rectify source code (history)
167
168       Main  index  | Vector index | Topics index | Keywords index | Graphical
169       index | Full index
170
171       © 2003-2019 GRASS Development Team, GRASS GIS 7.6.0 Reference Manual
172
173
174
175GRASS 7.6.0                                                       v.rectify(1)
Impressum