1i.rectify(1)                GRASS GIS User's Manual               i.rectify(1)
2
3
4

NAME

6       i.rectify   -  Rectifies an image by computing a coordinate transforma‐
7       tion for each pixel in the image based on the control points.
8

KEYWORDS

10       imagery, rectify, geometry
11

SYNOPSIS

13       i.rectify
14       i.rectify --help
15       i.rectify [-cat] group=name  [input=name[,name,...]]   extension=string
16       order=integer      [resolution=float]       [memory=memory    in    MB]
17       [method=string]   [--help]  [--verbose]  [--quiet]  [--ui]
18
19   Flags:
20       -c
21           Use current region  settings  in  target  location  (def.=calculate
22           smallest area)
23
24       -a
25           Rectify all raster maps in group
26
27       -t
28           Use thin plate spline
29
30       --help
31           Print usage summary
32
33       --verbose
34           Verbose module output
35
36       --quiet
37           Quiet module output
38
39       --ui
40           Force launching GUI dialog
41
42   Parameters:
43       group=name [required]
44           Name of input imagery group
45
46       input=name[,name,...]
47           Name of input raster map(s)
48
49       extension=string [required]
50           Output raster map(s) suffix
51
52       order=integer [required]
53           Rectification polynomial order (1-3)
54           Options: 1-3
55           Default: 1
56
57       resolution=float
58           Target resolution (ignored if -c flag used)
59
60       memory=memory in MB
61           Maximum memory to be used (in MB)
62           Cache size for raster rows
63           Default: 300
64
65       method=string
66           Interpolation method to use
67           Options:  nearest, linear, cubic, lanczos, linear_f, cubic_f, lanc‐
68           zos_f
69           Default: nearest
70

DESCRIPTION

72       i.rectify uses the control points included in the source data or  iden‐
73       tified  with the Ground Control Points Manager to calculate a transfor‐
74       mation matrix and then converts x,y cell coordinates  to  standard  map
75       coordinates  for  each  pixel in the image. The result is a planimetric
76       image with a transformed coordinate system (i.e., a  different  coordi‐
77       nate  system  than  before  it was rectified). Supported transformation
78       methods are first, second, and third order polynomial  and  thin  plate
79       spline.  Thin plate spline is recommended for ungeoreferenced satellite
80       imagery where ground control points (GCPs) are included.  Examples  are
81       NOAA/AVHRR and ENVISAT imagery which include throusands of GCPs.
82
83       If  no  ground  control points are available, the Ground Control Points
84       Manager must be run before i.rectify. An image  must  be  georeferences
85       before  it  can reside in a standard coordinate LOCATION, and therefore
86       be analyzed with the other map layers in the standard coordinate  LOCA‐
87       TION. Upon completion of i.rectify, the rectified image is deposited in
88       the target standard coordinate  LOCATION.  This  LOCATION  is  selected
89       using i.target.
90
91       More  than  one  raster  map may be rectified at a time. Each cell file
92       should be given a unique output file name. The rectified image or  rec‐
93       tified raster maps will be located in the target LOCATION when the pro‐
94       gram is completed. The original unrectified files are not  modified  or
95       removed.
96
97       If the -c flag is used, i.rectify will only rectify that portion of the
98       image or raster map that occurs within the chosen window region in  the
99       target  location,  and only that portion of the cell file will be relo‐
100       cated in the target database. It is important therefore, to  check  the
101       current mapset window in the target LOCATION if the -c flag is used.
102
103       If  you  are  rectifying  a file with plans to patch it to another file
104       using the GRASS program r.patch, choose option number one, the  current
105       window  in  the  target  location.  This  window,  however, must be the
106       default window for the target LOCATION. When a file being rectified  is
107       smaller  than  the default window in which it is being rectified, NULLs
108       are added to the rectified file. Patching files of the same  size  that
109       contain  NULL data, eliminates the possibility of a no-data line in the
110       patched result. This is because, when the images are patched, the NULLs
111       in  the image are "covered" with non-NULL pixel values. When rectifying
112       files that are going to be patched, rectify all of the files using  the
113       same default window.
114
115   Coordinate transformation
116       The  desired  order of transformation (1, 2, or 3) is selected with the
117       order option.  The program  will  calculate  the  RMSE  and  check  the
118       required number of points.
119
120   Linear affine transformation (1st order transformation)
121       x’ = ax + by + c
122       y’  =  Ax  +  By  +  C  The a,b,c,A,B,C are determined by least squares
123       regression based on the control points  entered.   This  transformation
124       applies  scaling, translation and rotation. It is NOT a general purpose
125       rubber-sheeting like TPS, nor is it ortho-photo rectification  using  a
126       DEM,  not  second order polynomial, etc. It can be used if (1) you have
127       geometrically correct images, and (2) the terrain or camera  distortion
128       effect can be ignored.
129
130   Polynomial Transformation Matrix (2nd, 3d order transformation)
131       i.rectify uses a first, second, or third order transformation matrix to
132       calculate the registration coefficients. The number of  control  points
133       required for a selected order of transformation (represented by n) is
134       ((n  +  1)  * (n + 2) / 2) or 3, 6, and 10 respectively. It is strongly
135       recommended that one or more additional points be identified  to  allow
136       for an overly-determined transformation calculation which will generate
137       the Root Mean Square (RMS) error values for each  included  point.  The
138       RMS  error  values  for all the included control points are immediately
139       recalculated when the user selects  a  different  transformation  order
140       from the menu bar. The polynomial equations are performed using a modi‐
141       fied Gaussian elimination method.
142
143   Thin plate spline (TPS) transformation
144       TPS transformation is selected with the -t flag. This method of coordi‐
145       nate transformation is recommended for satellite imagery where hundreds
146       or thousands of GCPs  are  included,  and  for  historical  printed  or
147       scanned maps with unknown georeferencing and/or known localized distor‐
148       tions.
149
150       TPS combines a linear affine transformation with individual transforma‐
151       tion  coefficients for each GCP, using the radial basis kernel function
152       with the distance dist between any two points:
153       dist2 * log(dist)  As  a  consequence,  localized  distortions  can  be
154       removed  with  TPS  transformation. For example, scan line sensors will
155       have due to the changing viewing angle larger distortions  towards  the
156       end  points  of the scan line than at the center of the scan line. Even
157       higher order polynomial transformations are not able  to  remove  these
158       locally  different  distortions,  but  TPS transformation can. For best
159       results, TPS requires an even and,  for  localized  distortions,  dense
160       spacing of GCPs.
161
162   Resampling method
163       The  rectified  data  is resampled with one of seven different methods:
164       nearest, bilinear, cubic, lanczos, bilinear_f, cubic_f, or lanczos_f.
165
166       The method=nearest method, which performs a  nearest  neighbor  assign‐
167       ment,  is  the  fastest of the resampling methods. It is primarily used
168       for categorical data such as a land use classification, since  it  will
169       not  change  the  values  of the data cells. The method=bilinear method
170       determines the new value of the cell based on a weighted distance aver‐
171       age  of  the  4  surrounding  cells  in the input map. The method=cubic
172       method determines the new value of the cell based on  a  weighted  dis‐
173       tance  average  of  the  16  surrounding  cells  in the input map.  The
174       method=lanczos method determines the new value of the cell based  on  a
175       weighted distance average of the 25 surrounding cells in the input map.
176
177       The  bilinear,  cubic and lanczos interpolation methods are most appro‐
178       priate for continuous data and  cause  some  smoothing.  These  options
179       should not be used with categorical data, since the cell values will be
180       altered.
181
182       In the bilinear, cubic and lanczos methods, if any of  the  surrounding
183       cells  used  to  interpolate the new cell value are NULL, the resulting
184       cell will be NULL, even if the nearest cell  is  not  NULL.  This  will
185       cause  some  thinning  along  NULL  borders, such as the coasts of land
186       areas in a DEM. The bilinear_f,  cubic_f  and  lanczos_f  interpolation
187       methods can be used if thinning along NULL edges is not desired.  These
188       methods "fall back" to simpler interpolation methods  along  NULL  bor‐
189       ders.  That is, from lanczos to cubic to bilinear to nearest.
190
191       If  nearest  neighbor  assignment  is used, the output map has the same
192       raster format as the input map. If any of the other  interpolations  is
193       used, the output map is written as floating point.
194

NOTES

196       If  i.rectify starts normally but after some time the following text is
197       seen:
198       ERROR: Error writing segment file
199       the user may try the -c flag or the module needs more free space on the
200       hard drive.
201

SEE ALSO

203       The GRASS 4 Image Processing manual
204
205        m.transform, r.proj, v.proj, i.group, i.target
206       Ground Control Points Manager
207

AUTHORS

209       William R. Enslin, Michigan State University, Center for Remote Sensing
210
211       Modified for GRASS 5.0 by:
212       Luca Palmeri (palmeri@ux1.unipd.it)
213       Bill Hughes
214       Pierre de Mouveaux (pmx@audiovu.com)
215       CMD mode by Bob Covill
216

SOURCE CODE

218       Available at: i.rectify source code (history)
219
220       Main  index | Imagery index | Topics index | Keywords index | Graphical
221       index | Full index
222
223       © 2003-2020 GRASS Development Team, GRASS GIS 7.8.5 Reference Manual
224
225
226
227GRASS 7.8.5                                                       i.rectify(1)
Impressum