You are on page 1of 6

GEO/EVS 425/525 Unit 7

Satellite Image Rectification

You have seen satellite imagery earlier in this course. You are aware that the swath of the satellite over
the earths surface is diagonal, so that the imagery is not referenced to any standard reference system. In
this exercise, you will take a satellite image from northeast Ohio and rectify a portion of it to the UTM
system. You should choose the same quadrangle you chose for Unit 6. You will take some of the DEM-
based and DLG-based information you derived for that unit and superimpose it over your satellite imagery.
Your strategy in carrying out this exercise will be [1] examine the image to see what it contains, [2] locate
your quadrangle roughly on the image, [3] bring up an image that will define ground control points,
[4] compute the transformation matrix, and [5] resample the image. There are other ways you might
rectify an image, but this is the easiest and the most straightforward.
Satellite images are available on the R: drive in the Landsat Images folder, or you can download them
from the WorldWide Web at First find an appropriate image. You are most likely to
want an image from Path 18, Row 31, which runs from approximately Lakewood on the west to Erie, PA
on the east and from southern Canada on the north to Akron on the south, or from Path 19, Row 31,
which runs from approximately Beachwood on the east to Toledo on the west and from southern Canada
on the north to Akron on the south. Make sure that you pick an image with as few clouds as possible
hopefully none. Locate yourself on the image and get a rough idea what the boundaries of your
quadrangle are. Download the image onto your X: drive. You may find an image that has been layer-
stacked into an ERDAS Imagine image, but you are more likely to find an image that consists of 7-8 TIFF
Landsat images available to you come from Landsat-5 and Landsat-7. Landsat-5 has 7 bands; Landsat-7
has 8. In either case, you will want to include the first 7 bands, which include the visible bands (bands 1-
3), near to middle infrared (bands 4-5 and 7), and thermal infrared (band 6). Landsat-7 will give you two
choices of band 6 (low gain and high gain) as well as a panchromatic band (band 8). Both satellites have
approximately 30-m resolution for the visible bands. Band 6 for Landsat-5 has a resolution of 120 m; for
Landsat-7 band 6 resolution is 60 m. Landsat-7's band 8 resolution is 15 m. If you download the TIFF
images for your Landsat scene, the naming convention should be fairly straightforward. For Landsat-5
you need all 7 bands; for Landsat-7 you need bands 1-5 and 7, as well as one or the other band 6 (but not
both). You may wish to download band 8 as well.
The images we get are approximately georeferenced. However, the georeferencing may leave much to
be desired, and you will want to rereference it!
Step 1: Subsetting and Layerstacking your Image
We will assume that you have downloaded 7 TIFF images, one for each of the 7 bands of the scene you
have chosen. Before you can georeference it, you need to put the 7 bands into a single image and subset
it. You can do these tasks in either order in ERDAS; in ENVI you need to layer-stack before you can
ERDAS Imagine Click Spectral -> Layer Stack on the Raster tab. This will open the Layer Selection and
Stacking dialog. In the Input File field, enter the image you want to have as layer 1, and click on Add.
Then enter the image you want to have as layer 2 -> Add, and so on until you have added all of the layers
you want to include in your final image. It is important to add the layers in the order you want to have them
in the final image. Give your output file an appropriate name. If all of your layers are the same size (e.g.
the entire scene), it doesnt matter whether you choose union or intersection as your output option; if you
subset one of your layers before layer-stacking you should choose intersection. In any case, you should
check Ignore Zero in Stats. Click OK.
When your layer-stacked image is produced, look into the area you believe is included in your quadrangle.
Open an inquire box by clicking the dropdown on the Inquire icon on the Information area of the Home tab.
Drag the corners of the inquire box until the box encompasses the area that will be included in your
quadrangle. Remember that it should be somewhat larger than the area you think will be included to allow
for errors, both yours and those made by the USGS.
When you are satisfied that the inquire box includes the area you want to consider, click Subset & Chip ->
Create Subset Image on the Geometry area of the Raster tab. Your input file is the layer-stacked file you
have built. Give your output file an appropriate name. Click the From Inquire Box button, and check
Ignore Zero in Output Stats. Click OK. This subsetting will create the image you will be working with for
most of the rest of this semester.
ENVI The process of layer-stacking an image in ENVI is almost identical to the process in ERDAS. Click
Raster Management -> Layer Stacking in the ENVI Toolbox. When the Layer Stacking Parameters
window opens, click the Import File button. Choose the image you want to have as layer 1and click OK.
Then enter the image you want to have as layer 2 -> OK, and so on until you have added all of the layers
you want to include in your final image. As with ERDAS, it is important to add the layers in the order you
want to have them in the final image. Give your output file an appropriate name, and hit OK.
To subset the image, click on File -> New -> Vector Layer, and give your vector layer a new name.
Highlight the name of your new vector layer in the Layer Manager window (if it isnt already highlighted),
and click the Vector Create icon on the icon bar. Click on each of the first 3 of the 4 corners of the area
you want to include in your subset image, and then right-click and choose Accept to complete the polygon.
Save the vector file. Click on Vector -> Convert Vector to ROI in the ENVI Toolbox. If you have included
a single polygon in your vector file, it doesnt matter which option you choose. You do need to make sure
that the region of interest (ROI) you wish to use as the basis of your subset is represented as an ROI.
Then click Raster Management -> Subset Data via ROIs. The input file is your layer-stacked scene; your
ROI is the converted vector. Again, the output file is the subset image you will be working with for most of
the rest of this semester.
ERDAS Imagine and ENVI When your subset images have been created, delete the complete scene
from your X: drive to conserve space.
Georeferencing your Subset Image
Look at the metadata for your subset image. What reference system is being used? Note that there is
always a reference system, even if it is simply rows and columns. Do you remember reprojection your
quadrangle from UTM to State Plane? You must have a reference system if you are to change from one
system to another. And since you will be changing the satellite image from whatever it is to UTM, it must
have at least a rudimentary reference system.
You will be identifying a series of ground control points (GCPs) that you believe are correctly
georeferenced and moving your subset image so that the points on that image that correspond to the
ground control points are superimposed over those GCPs. This means that you will have two images.
The first is the subset satellite image that you wish to georeference; the second is a reference image that
you assume is correctly georeferenced.
In principle, you can use any image of your quadrangle as a reference image. Probably the most
appropriate is the DLG for roads that you produced in Unit 6, as roads tend not to move around the way
rivers do, and roads tend to be fairly visible on satellite images.
ERDAS Imagine Load your subset image into the viewer (if it isnt already there). Depending on what
kind of an image you have, you will look for the Multispectral, Panchromatic, Relief, or Thematic tab.
These tabs have a Transform & Orthocorrect area, which contains a Control Points icon. Click that icon.
Select Polynomial as your geometric model and then hit OK. The Multipoint Geometric Correction
window opens, and you are invited to collect reference points from an Image Layer. Verify that this is the
default choice (in the GCP Tool Reference Setup dialog), and hit OK. Choose your reference image in the
next dialog, and hit OK.
When you have chosen your reference layer, the Multipoint Geometric Correction window will contain 6
windows. On the left are three windows representing the image you are georeferencing; on the right are
three corresponding windows representing your reference image. Of these 3 windows, one is an index
chip showing most of the image; one is a large chip showing a small area at close to full resolution; the
third is a small chip showing a close-up of a very small area of the region in question. You will need to
experiment using these windows most effectively.
At the bottom of your screen is a gray area in which you will show your GCPs. Before you start, you
should click on the Color swatches to change the colors from white (the default) to colors that will show up
more easily on the two sets of windows. For example, yellow tends to be better than white on satellite
images; red tends to show up better than white on DLGs. The choice is yours.
The thing that you will need to concentrate on is the GCP tool. You have two sets of GCPs: input GCPs,
which are in the arbitrary coordinate system of the satellite image and are digitized in the viewer from
which you started the GCP tool, and reference GCPs, which are the known reference coordinates of the
points corresponding to the input GCPs. Again, the input viewer on the left contains the data to be
rectified in this case the subset satellite image. The reference viewer on the right contains the data with
the known reference system in this case the DLM.
Look at the icon bar on the GCP tool. The third icon from the left (it looks like a G playing jump rope) turns
on the automatic transformation calculation mode. Verify that this is highlighted; it is the default condition
when you open the GCP tool. Any ERDAS Imagine image can have a set of GCPs associated with it.
This set is stored in the data file along with the raster layers. If a GCP set exists for the top raster layer
shown in the viewer, then those GCPs are shown when you bring up the GCP tool.
The CellArray of the GCP tool shows the locations of each GCP in both viewers. The first column shows
the ID of each GCP. Each ID begins with the default ID string, GCP#. You can change this if you want
(e.g. if you have more than one set of GCPs for a particular satellite image).
The most appropriate GCPs to choose on a satellite image are easily visible phenomena such as road
intersections, stream junctions, bridges over streams, etc. (Thats why you have the DLGs for roads and
To set up GCPs, find a point which you can easily interpret on the images in both viewers. Click on the
Create GCP icon (it looks like a circle with 4 tics on the inside). For your first GCP, click on the place
youve chosen in Viewer #1 and then on the same place in Viewer #2. You will notice three things. First,
both viewers show a cursor that looks like the Create GCP icon and the notation GCP #1. Second, both
closeup-chip viewers show the same icon and notations. Third, the coordinates of the GCP appear in the
GCP tool. Note also that if you click on the Select icon in the GCP tool icon bar, you can move a GCP to
a better position either in the main viewer or in the closeup-chip viewer. Get used to doing this. It is
often a very very useful thing to be able to do. Note also that there are two columns in the GCP tool
labeled >. This shows the active record. Normally, if you are digitizing a new GCP, the > should be in
a blank record. If you are changing the location of a GCP, the > should be in the record that you are
Create two more GCPs by clicking on corresponding places in the two viewers. Verify, in the chip
extraction viewers, that you are satisfied that the GCPs refer to the same places in the two viewers. Make
sure also that your first three GCPs are widely distributed across the area you are ultimately concerned
with! This is very important. In principle, 3 points are sufficient to define a surface to transform the
satellite image to the UTM reference system (or any other reference system desired). The reason its
important to get your first three points widely separated is that doing so gives you the best chance to
define a surface which will be close to the surface you will choose as your final definition of the
Now create a fourth GCP. When you choose a GCP in either viewer, Imagine will place a GCP cursor in
the other viewer at the place defined by the surface calculated from the points digitized thus far. You can
move the point to the correct location by dragging it by the mouse.
Make several more GCPs. You can add as many GCPs as you want. If you want to move a GCP, select
it, and drag the cursor in the viewer with your mouse. If you want to delete a GCP, select it, right-click in
the Point # column, and select Delete Selection.
You will notice that when you digitize the fourth GCP, a column opens in the GCP tool, telling you what the
residual error is for each point. Another field opens in the GCP tool telling you the RMS error for the
transformation. You want to insure that the total RMS error is within the tolerance range. National Map
Standards calls for RMS error less than one half of the resolution of the input raster. Since the reference
system for the TM image is pixels, you should try to get the RMS error below 0.5 if possible. Note that the
residual error shown for each point is an indication of the contribution of that point to the total RMS error.
If one point has an unusually high residual error, you should verify that the GCPs in the two images really
do correspond to each other, and move one or the other until they do. Alternatively, you might delete the
GCP altogether.
You may have noticed, when you first started to do this exercise, that the Polynomial Model Properties
dialog had a field called Polynomial Order with a default value of 1. The polynomial order is an indicator
of the mathematical order of the transformation surface. You can change the order, if you choose to do
so, by going back to the Polynomial Model Properties dialog (available from the Geo Correction Tools
dialog). The number of GCPs required to calculate the transformation is equal to (t+1)(t+2), where t is
the order of the transformation. Thus, a first-order transformation matrix requires 3 points ( * 2 * 3); a
second order transformation matrix requires 6 points ( * 3 * 4), etc. Once you have digitized enough
GCPs to calculate the transformation surface, you are told your RMS and you can transform the image if
you choose to do so. Try changing the order of the transformation. What does it do to your RMS error?
You are now ready to resample the image. Resampling is the process of calculating the file values for the
rectified image and creating the new file, based on the new reference system and the pixel values of the
original file. All of the raster data layers in the new source Viewer will be resampled, and the output image
will have as many layers as the input image. Most GIS products support at least 3 resampling orders:
nearest neighbor, bilinear interpolation, and cubic convolution. The three are very different, and you must
be very clear on what you want. Nearest-neighbor resampling finds the pixel in the original image closest
to each pixel in the new image, and assigns that pixel in the new image with the value of that pixel in the
original image. Bilinear-interpolation resampling finds the 4 pixels in the original image closest to each
pixel in the new image, and assigns that pixel in the new image with the average value of the 4 pixels in
the original image. Cubic-convolution resampling finds the 16 pixels in the original image closest to each
pixel in the new image (i.e. the four considered in bilinear interpolation plus the 12 pixels surrounding
them), and assigns that pixel in the new image with the weighted average value of the 16 pixels in the
original image. Which you choose will depend on what you wish to do with the new image. The lower-
order resampling preserves the actual digital numbers reported by the satellite; the higher-order
resampling gives a smoother surface, where the spatial distribution of the digital numbers is least altered
from the original.
To resample the image, click on the Resample icon in the Geo Correction Tools dialog. Its the one that
looks like a skewed square with 4 quadrants. When the Resample dialog opens, choose an appropriate
name for the output file, and choose the appropriate resample method. Verify that new map projection is
what you expect. Verify the size of the output cell, and check to ignore zero is statistics.
You last piece of information for this dialog is the geographic boundaries of the new output file. You can
accept the default values, or you can open the metadata for your reference image and use the X and Y
coordinates of the Upper Left and Lower Right corners, respectively (ULX, ULY, LRX, and LRY) as the
extents of your resampled image. If you want to do that, put these numbers into the appropriate places in
the Resample dialog. Click OK to perform the resampling.
To verify that youve rectified the image correctly, add the new image to a view.
ENVI The first step in registering your image in ENVI is to rasterize your DLG-derived road file using
ArcGIS. Use Conversion -> To Raster -> Feature to Raster in the Arc Toolbox, and make sure that your
raster has a pixel size roughly 1/4 the size of the pixel in your Thematic Mapper image. Then click
Geometric Correction -> Registration -> Registration: Image to Image in the ENVI toolbox. The first dialog
that opens asks you to select an input band from your base image. The base image, in ENVIspeak, is
your reference image. This is the one you assume to be correctly georeferenced in this case the
rasterized DLG that you have just created. Choose the layer (there is only one) for that image, and hit OK.
The next dialog asks you to select an input warp file. This is the Thematic Mapper image that you wish
to georeference, and you need to choose a single band to use for georeferencing (band 3 or 4 is usually
the best). Again, hit OK. You should probably accept the defaults for the next dialogs until the Ground
Control Points Selection and Image to Image GCP List windows open.
What ENVI has done in generating these GCPs is to go through the image and pick likely points that can
serve as GCPs. If you accepted the defaults, about 25 have been selected for you, but you need to verify
that they are appropriate and correct and they are likely not to be! In the Image-to-Image GCP List, click
on #1+ to move to likely GCP #1. Both the base image and the warp image will move to that site.
Examine the location as carefully as you can. Can you verify that it is precisely the same point? Is there a
nearby point to which you can move the GCP that you would be willing to state is the same in both
images? If the likely GCP is precisely the same in both images, good (it probably wont be). If you can
move the GCP in either the base or warp image (or both) to a point about which you feel secure, do so.
To move the point, use the large image to move the chip bounding box to the general area you want to
use as a GCP. Then move the cursor to the zoom chip box and click on precisely the point you want to
use as a GCP. When the crosshairs are precisely located on the point you want to use in both images,
click Update on the Image-to-Image GCP List dialog. That will move the GCP to that point.
If ENVI has located a potential point that you cannot ascertain as being a GCP, and if you cannot find an
appropriate point nearby, click On/Off on the Image-to-Image GCP List dialog. That will remove the
GCP from the calculations. However, it wont remove the GCP from the image in the event that you
might want to use it again. It is quite likely that of the 25 or so potential GCPs identified automatically by
ENVI, you will turn several off. You should try to end up with 15-10 good points before you generate your
georeferenced file.
If you want to add a point that you feel should be considered in generating the georeferenced image, you
can move the crosshair cursors to that point in both your base and warp images and click Add Point in
the Ground Control Points Selection dialog. As with ERDAS, ENVI shows you the RMS error for each
point, so you when youve identified a few good points that are spread around the image you can tell which
points are better than others. Again, you should try to minimize overall RMS error.
When you are satisfied with your RMS error, click Options -> Warp File in the Ground Control Points
Selection dialog. You will need to choose the file you want to warp, then hit OK. You can accept the
defaults in the Registration Parameters dialog that opens next (Polynomial and Nearest Neighbor are what
you want). Enter an appropriate file name and hit OK.
To verify that youve rectified the image correctly, add the new image to a view. You may wish to load the
images you created in both ERDAS and ENVI into adjacent views in a single viewer to compare the
Questions to Consider
1. How many layers does the TM image used in this rectification have? Which ones are you looking
at? How many rows and columns does it have? What skip factor is being used? What does skip
factor mean?
2. Can you imagine any way in which the image may have been clarified, so that you could see
features more easily? How, for example, would you have used layers 1, 2, and 3, or 2, 5, and
1. Your composite image with the rectified satellite image for your quadrangle with some DLGs for
that quadrangle on top of it, with each DLG having a suitable symbology.