1i.rectify(1) GRASS GIS User's Manual i.rectify(1)
2
3
4
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
10 imagery, rectify, geometry
11
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
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 us‐
89 ing 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 us‐
104 ing the GRASS program r.patch, choose option number one, the current
105 window in the target location. This window, however, must be the de‐
106 fault 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 re‐
118 quired 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 re‐
123 gression based on the control points entered. This transformation ap‐
124 plies 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 re‐
154 moved with TPS transformation. For example, scan line sensors will have
155 due to the changing viewing angle larger distortions towards the end
156 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 re‐
159 sults, TPS requires an even and, for localized distortions, dense spac‐
160 ing 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 de‐
170 termines the new value of the cell based on a weighted distance average
171 of the 4 surrounding cells in the input map. The method=cubic method
172 determines the new value of the cell based on a weighted distance aver‐
173 age of the 16 surrounding cells in the input map. The method=lanczos
174 method determines the new value of the cell based on a weighted dis‐
175 tance 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 ar‐
186 eas in a DEM. The bilinear_f, cubic_f and lanczos_f interpolation meth‐
187 ods 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
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
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
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
218 Available at: i.rectify source code (history)
219
220 Accessed: Saturday Jan 21 20:40:45 2023
221
222 Main index | Imagery index | Topics index | Keywords index | Graphical
223 index | Full index
224
225 © 2003-2023 GRASS Development Team, GRASS GIS 8.2.1 Reference Manual
226
227
228
229GRASS 8.2.1 i.rectify(1)