Provided by: grass-doc_8.3.2-1ubuntu2_all bug

NAME

       i.rectify   -  Rectifies  an  image  by computing a coordinate transformation for each pixel in the image
       based on the control points.

KEYWORDS

       imagery, rectify, geometry

SYNOPSIS

       i.rectify
       i.rectify --help
       i.rectify [-cat] group=name  [input=name[,name,...]]  extension=string order=integer   [resolution=float]
       [memory=memory in MB]   [method=string]   [--help]  [--verbose]  [--quiet]  [--ui]

   Flags:
       -c
           Use current region settings in target location (def.=calculate smallest area)

       -a
           Rectify all raster maps in group

       -t
           Use thin plate spline

       --help
           Print usage summary

       --verbose
           Verbose module output

       --quiet
           Quiet module output

       --ui
           Force launching GUI dialog

   Parameters:
       group=name [required]
           Name of input imagery group

       input=name[,name,...]
           Name of input raster map(s)

       extension=string [required]
           Output raster map(s) suffix

       order=integer [required]
           Rectification polynomial order (1-3)
           Options: 1-3
           Default: 1

       resolution=float
           Target resolution (ignored if -c flag used)

       memory=memory in MB
           Maximum memory to be used (in MB)
           Cache size for raster rows
           Default: 300

       method=string
           Interpolation method to use
           Options: nearest, linear, cubic, lanczos, linear_f, cubic_f, lanczos_f
           Default: nearest

DESCRIPTION

       i.rectify  uses  the  control  points  included  in the source data or identified with the Ground Control
       Points Manager to calculate a transformation matrix and then converts x,y cell  coordinates  to  standard
       map  coordinates  for  each  pixel  in  the  image.  The result is a planimetric image with a transformed
       coordinate system (i.e.,  a  different  coordinate  system  than  before  it  was  rectified).  Supported
       transformation  methods  are first, second, and third order polynomial and thin plate spline.  Thin plate
       spline is recommended for ungeoreferenced satellite  imagery  where  ground  control  points  (GCPs)  are
       included. Examples are NOAA/AVHRR and ENVISAT imagery which include throusands of GCPs.

       If  no  ground  control  points  are  available,  the  Ground  Control  Points Manager must be run before
       i.rectify. An image must be georeferences before it can reside in a  standard  coordinate  LOCATION,  and
       therefore  be  analyzed with the other map layers in the standard coordinate LOCATION. Upon completion of
       i.rectify, the rectified image is deposited in the target standard coordinate LOCATION. This LOCATION  is
       selected using i.target.

       More  than one raster map may be rectified at a time. Each cell file should be given a unique output file
       name. The rectified image or rectified raster maps will be  located  in  the  target  LOCATION  when  the
       program is completed. The original unrectified files are not modified or removed.

       If  the  -c flag is used, i.rectify will only rectify that portion of the image or raster map that occurs
       within the chosen window region in the target location, and only that portion of the cell  file  will  be
       relocated  in  the  target database. It is important therefore, to check the current mapset window in the
       target LOCATION if the -c flag is used.

       If you are rectifying a file with plans to patch it to another file  using  the  GRASS  program  r.patch,
       choose  option  number  one, the current window in the target location. This window, however, must be the
       default window for the target LOCATION. When a file being rectified is smaller than the default window in
       which it is being rectified, NULLs are added to the rectified file. Patching files of the same size  that
       contain  NULL  data, eliminates the possibility of a no-data line in the patched result. This is because,
       when the images are patched, the NULLs in the image  are  "covered"  with  non-NULL  pixel  values.  When
       rectifying files that are going to be patched, rectify all of the files using the same default window.

   Coordinate transformation
       The  desired  order  of  transformation (1, 2, or 3) is selected with the order option.  The program will
       calculate the RMSE and check the required number of points.

   Linear affine transformation (1st order transformation)
       x’ = ax + by + c
       y’ = Ax + By + C The a,b,c,A,B,C 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 like TPS, nor is it ortho-photo rectification using a DEM, not second  order  polynomial,
       etc.  It  can  be  used  if  (1)  you  have  geometrically  correct images, and (2) the terrain or camera
       distortion effect can be ignored.

   Polynomial Transformation Matrix (2nd, 3d order transformation)
       i.rectify uses a first, second, or third  order  transformation  matrix  to  calculate  the  registration
       coefficients.  The  number of control points required for a selected order of transformation (represented
       by n) is
       ((n + 1) * (n + 2) / 2) or 3, 6, and 10 respectively.  It  is  strongly  recommended  that  one  or  more
       additional  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 RMS error  values  for  all
       the included control points are immediately recalculated when the user selects a different transformation
       order  from  the  menu  bar. The polynomial equations are performed using a modified Gaussian elimination
       method.

   Thin plate spline (TPS) transformation
       TPS transformation is selected with the -t flag. This method of coordinate transformation is  recommended
       for  satellite  imagery  where  hundreds or thousands of GCPs are included, and for historical printed or
       scanned maps with unknown georeferencing and/or known localized distortions.

       TPS combines a linear affine transformation with individual transformation  coefficients  for  each  GCP,
       using the radial basis kernel function with the distance dist between any two points:
       dist2  *  log(dist)  As  a consequence, localized distortions can be removed with TPS transformation. For
       example, scan line sensors will have due to the changing viewing angle larger distortions towards the end
       points of the scan line than at the center of the scan line. Even higher order polynomial transformations
       are not able to remove these locally different distortions, but TPS transformation can. For best results,
       TPS requires an even and, for localized distortions, dense spacing of GCPs.

   Resampling method
       The rectified data is resampled with one of seven different methods: nearest, bilinear,  cubic,  lanczos,
       bilinear_f, cubic_f, or lanczos_f.

       The method=nearest method, which performs a nearest neighbor assignment, is the fastest of the resampling
       methods.  It  is primarily used for categorical data such as a land use classification, since it will not
       change the values of the data cells. The method=bilinear method determines the  new  value  of  the  cell
       based on a weighted distance average of the 4 surrounding cells in the input map. The method=cubic method
       determines  the new value of the cell based on a weighted distance average of the 16 surrounding cells in
       the input map.  The method=lanczos method determines the new value  of  the  cell  based  on  a  weighted
       distance average of the 25 surrounding cells in the input map.

       The  bilinear, cubic and lanczos interpolation methods are most appropriate for continuous data and cause
       some smoothing. These options should not be used with categorical data, since the  cell  values  will  be
       altered.

       In  the  bilinear, cubic and lanczos methods, if any of the surrounding cells used to interpolate the new
       cell value are NULL, the resulting cell will be NULL, even if the nearest cell is  not  NULL.  This  will
       cause  some  thinning  along  NULL  borders,  such  as the coasts of land areas in a DEM. The bilinear_f,
       cubic_f and lanczos_f interpolation methods can be used if thinning along  NULL  edges  is  not  desired.
       These  methods "fall back" to simpler interpolation methods along NULL borders.  That is, from lanczos to
       cubic to bilinear to nearest.

       If nearest neighbor assignment is used, the output map has the same raster format as the  input  map.  If
       any of the other interpolations is used, the output map is written as floating point.

NOTES

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

SEE ALSO

       The GRASS 4 Image Processing manual

        m.transform, r.proj, v.proj, i.group, i.target
       Ground Control Points Manager

AUTHORS

       William R. Enslin, Michigan State University, Center for Remote Sensing

       Modified for GRASS 5.0 by:
       Luca Palmeri (palmeri@ux1.unipd.it)
       Bill Hughes
       Pierre de Mouveaux (pmx@audiovu.com)
       CMD mode by Bob Covill

SOURCE CODE

       Available at: i.rectify source code (history)

       Accessed: Monday Apr 01 03:09:14 2024

       Main index | Imagery index | Topics index | Keywords index | Graphical index | Full index

       © 2003-2024 GRASS Development Team, GRASS GIS 8.3.2 Reference Manual

GRASS 8.3.2                                                                                    i.rectify(1grass)