Você está na página 1de 17

Image Preprocessing:

Geometric Correction

John R. Jensen
Department of Geography
University of South Carolina
Columbia, South Carolina 29208

Jensen, 2003
Geometric Correction

There are two basic types of geometric correction:


* Image-to-image registration
- useful for registering two or more images together when it is
not necessary to have the interpreted output in a formal map
projection. Image-to-image registration may also be used to
perform simple non-quantitative change detection.

* Image-to-map rectification
- Useful when preparing images and interpreted output for presentation
in a rigorous map projection using a known geoid and datum.
Especially valuable when performing digital change detection.

Jensen, 2003
Image-to-Map Geometric Rectification
We will focus our attention on image-to-map rectification
because:
• it is the most widely adopted geometric correction methodology, and
• the image-to-image registration process is very similar.

Image-to-map rectification requires two basic operations:

* Spatial Interpolation Using Coordinate


Transformation

* Intensity Interpolation

Jensen, 2003
Spatial Interpolation Using Coordinate Transformations

For moderate distortions in a relatively small area of an image, a 1st


order, six-parameter, affine transformation is sufficient to rectify the
imagery to a geographic frame of reference:

x'  a0  a1 x  a2 y
y '  b0  b1 x  b2 y
where:

x and y are positions in the output-rectified image or map, and


x’ and y’ represent corresponding positions in the original input
image.

Jensen, 2003
Spatial Interpolation Using Coordinate Transformations

x'  a0  a1 x  a2 y
y '  b0  b1 x  b2 y

This first order transformation can model six kinds of


distortion in the remote sensor data, including:

• translation in x and y,
• scale changes in x and y,
• skew, and
• rotation.
Jensen, 2003
How Different Affine Transformations
Fit a Hypothetical Surface

Original
surface 1st order

2nd order 3rd order


Jensen, 2003
Spatial Interpolation Logic The goal is to fill a
matrix that is in a
standard map projection
with the appropriate
values from a non-
planimetric image.

x'  a0  a1 x  a2 y
y '  b0  b1 x  b2 y

x'  382.2366  0.034187 x  (0.005481) y


y '  130162  (0.005576) x  (0.0349150) y Jensen, 2003
Spatial Interpolation Using Coordinate Transformation
All of the original GCPs selected are usually not used to compute the final
six-parameter coefficients and constants used to rectify the input image.
There is an iterative process that takes place. First, all of the original GCPs
(e.g., 20 GCPs) are used to compute an initial set of six coefficients and
constants. The root mean squared error (RMSE) associated with each of
these initial 20 GCPs is computed and summed. Then, the individual GCPs
that contributed the greatest amount of error are determined and deleted.
After the first iteration, this might only leave 16 of 20 GCPs. A new set of
coefficients is then computed using the16 GCPs. The process continues until
the RMSE reaches a user-specified threshold (e.g., <1 pixel error in the x -
direction and <1 pixel error in the y-direction). The goal is to remove the
GCPs that introduce the most error into the multiple-regression coefficient
computation. When the acceptable threshold is reached, the final
coefficients and constants are used to rectify the input image to an output
image in a standard map projection as previously discussed.

Jensen, 2003
Spatial Interpolation Using Coordinate Transformation

A way to measure the accuracy of a geometric rectification algorithm


(actually, its coefficients) is to compute the Root Mean Squared Error
(RMSerror) for each ground control point using the equation:

RMS error  x  x   y  y 


orig
2
orig
2

where:
xorig and yorig are are the original row and column coordinates of the GCP in
the image and x’ and y’ are the computed or estimated coordinates in the
original image when we utilize the six coefficients. Basically, the closer these
paired values are to one another, the more accurate the algorithm (and its
coefficients). The square root of the squared deviations represents a measure
of the accuracy of each GCP. By computing RMSerror for all GCPs, it is
possible to (1) see which GCPs contribute the greatest error, and 2) sum all the
Jensen, 2003
RMSerror.
Characteristics of Ground Control Points
Point Order of Easting on Northing on X’ pixel Y’ Pixel Total RMS
Number Points Map Map error after
Deleted X1 Y1 this point
deleted
1 12 597120 3,627,050 150 185 0.501

2 9 597,680 3,627,800 166 165 0.663

…..

If we delete
20 1 601,700 3,632,580 283 12 8.542 GCP #20,
the RMSE
will be
8.452
Total RMS error with all 20 GCPs used: 11.016
Image-to-Map Geometric Rectification

Intensity Interpolation:

• Unfortunately, geometric correction algorithms rarely


direct us to go to an integer row and column in the original
imagery (e.g., row 2, column 2) to get a brightness value to
fill a location in the rectified output image. Rather, the
location is usually a floating point number (e.g., column 2.4,
row 2.7). Therefore, intensity interpolation algorithms
(often referred to as resampling) are used to obtain a
brightness value from the desired location in the original
image and then place this value in the output matrix.
Jensen, 2003
Image-to-Map Geometric Rectification

There are several intensity interpolation


(resampling) algorithms, including:

* Nearest Neighbor

* Bilinear Interpolation

* Cubic Convolution

Jensen, 2003
Nearest-Neighbor Resampling
The brightness value closest to the predicted x’, y’ coordinate
is assigned to the output x,y coordinate.

Jensen, 2003
Bilinear Interpolation
Assigns output pixel values by interpolating brightness values in two
orthogonal direction in the input image. It basically fits a plane to the 4
pixel values nearest to the desired position (x’, y’) and then computes a new
brightness value based on the weighted distances to these points. For
example, the distances from the requested (x’, y’) position at 2.4, 2.7 in the
input image to the closest four input pixel coordinates (2,2; 3,2; 2,3;3,3) are
computed . Also, the closer a pixel is to the desired x’,y’ location, the more
weight it will have in the final computation of the average.

4
Zk
 D 2 where Zk are the surrounding four data point values,
BV wt  k41 k and D2k are the distances squared from the point in
1

k 1 D 2
question (x’, y’) to the these data points.
k Jensen, 2003
Bilinear Interpolation

Jensen, 2003
Cubic Convolution
Assigns values to output pixels in much the same manner as bilinear
interpolation, except that the weighted values of 16 pixels surrounding
the location of the desired x’, y’ pixel are used to determine the value
of the output pixel.

16
Zk
 D 2 where Zk are the surrounding four data point
values, and D2k are the distances squared from
BV wt  k161 k the point in question (x’, y’) to the these data
1

k 1 D 2 points.
k
Jensen, 2003
Cubic Convolution

Jensen, 2003

Você também pode gostar