Georectification and Image Analysis
Techniques using ArcGIS 10
Prepared
by Parikshit Ranade, and Ayse Irmak
GIS in
Water Resources
Fall 2011
The purpose of this exercise is
to perform typical tasks of remote sensing analysis using ArcGIS 10. We will
perform georeferencing, and NDVI computation. We will
use Google captured image as an example for georeferencing.
With this exercise you will –
1. Capture an image from Google
for Lincoln, NE and georeference it.
2. Compute a Normalized Difference
Vegetation Index (NDVI) of Landsat image
To carry out this exercise, you
need to have a computer, which runs the ArcInfo version of ArcGIS 10.
There is no need for remote sensing software. The data are provided in the accompanying
zip file.
Downloading
Landsat data
Landsat data can be
downloaded for free from http://edcsns17.cr.usgs.gov/EarthExplorer/ or http://glovis.usgs.gov/. USGS global visualization
viewer facilitates viewing and downloading of satellite imagery. USGS provides
Landsat 5 TM data in TIFF format.
This data can be converted into other formats using ArcGIS or any image
processing software (i.e. ERDAS-IMAGINE,
ENVI). Landsat satellite passes over earth, the area can be identified by
the path and row combination. Our study area is under the path 28 row 32. This
is southeastern part of Nebraska and Landsat passes over this area at
approximately 10:15 CST. Each Landsat scene has a unique identifier. Our
dataset has identifier LT50290322005251EDC00. All the information regarding
Landsat data can be found in Header file of Landsat data. These files will end with _GCP and _MTL.
These files also contain the information regarding each band pertinent to that
scene. Useful information like center and corner coordinates of Landsat scene
is also provided in the header file. A screen shot of sample attributes for
this Landsat scene is provided below.
Landsat 5 TM has 7
different bands. These bands are useful for extracting various information
related to vegetation, temperature, clouds, soil moisture, biomass, rocks, minerals and so on.
Below are details of band designation for Landsat 5 TM. More detailed
information can be found at http://egsc.usgs.gov/isb/pubs/factsheets/fs02303.html.
Band |
Spectral
Bands1 |
Wavelength
(micrometers) |
Potential
Information Content |
Resolution
(meters) |
Band 1 |
Blue |
0.45 - 0.52 |
Discriminates
soil and rock surfaces from vegetation. Provides increased penetration of
water bodies |
30 |
Band 2 |
Green |
0.52 - 0.60 |
Useful for
assessing plant vigor |
30 |
Band 3 |
Red |
0.63 - 0.69 |
Discriminates
vegetation slopes |
30 |
Band 4 |
Near IR |
0.76 - 0.90 |
Biomass content
and shorelines |
30 |
Band 5 |
Mid
IR |
1.55 - 1.75 |
Discriminates
moisture content of soil and vegetation; penetrates thin clouds. |
30 |
Band 6 |
Thermal IR |
10.40 - 12.50 |
thermal mapping
and estimated soil moisture |
120 |
Band 7 |
Mid
IR |
2.08 - 2.35 |
Mapping
hydrothermally altered rocks associated with mineral deposits |
30 |
1: IR
stands for infrared
Various composites
can be mapped to facilitate viewing of the raw imagery. A false color composite of near infrared is useful for observing
spatial distribution of the vegetation in the Landsat scene by combining bands 2, 3 & 4 (RGB). We are going to generate
the true color composite by using
spectral bands 2 (green), 3 (red), and 4 (near infrared).
Part I – Georeferencing
Raster data or remote sensing imagery
served by various state and federal agencies usually comes with
spatial reference. However,
sometimes the location information delivered with them is inadequate and the
data does not align properly with other data layers you may have. Furthermore,
there are cases that raster data was digitized using scanned paper maps; thus,
the co-ordinate system needs to be assigned.
Therefore, to use a raster datasets (i.e. remote sensing imagery) in conjunction
with your other spatial data layers, you may need to align/geo-reference your
raster datasets. Georeferencing a raster allows the raster to be
viewed, queried, and analyzed with other geographic data.
In this exercise, we will use
Google map as a data source to download an image which needs to be georeferenced with other data layers in the exercise. We
can use Bing maps directly in ArcMap v10 as a basemap. However, we are going to use Google map in order
to illustrate “how we can add spatial reference to our own map/image”. Your
data could be a “scanned” paper map of your field data or any other scanned
hard copy map (soil survey, groundwater level, nitrate concentration etc.)
Follow step by step procedure
below to georeference the image.
1. First go to http://maps.google.com/ on your web browser. Search for Lincoln, NE. Click on the Satellite
option on upper right corner of Google map window. On the
Northwest side of the map you will see Capitol
Beach Lake near I-80. The Interstate
80 is a major transcontinental corridor connecting California and New York City
in the USA.
2. Now click on the options
button on the upper right corner of the webpage. Click
on the Maps Labs option. You need to
enable “LatLng
Marker” tool. The toolwill allow
you to mark the longitude and latitudes of the locations of the map.
Optionally, you can enable “LatLng Tooptip”.
3. On the map,
Right click on any point for which you need to mark the latitude and
longitude. Select “drop latlng marker” option. To zoom in closer to the point, right click and select “zoom in” option. It is very easy to use
this compared to “zoom in bar” on the Google (on the left).
You could georeference
a raster using existing spatial data (target
data), such as a vector feature class, that resides in the desired map
coordinate system. The process involves identifying a series of ground control
points with known x,y coordinates. This will link ground control
locations on the raster dataset with locations in the spatially referenced data
(target data).
Control
points (ground
truth) are locations that can be accurately identified on the raster dataset.
There are many different types of features that can be used as Control points, such as road or stream
intersections, the mouth of a stream, rocky outcrops, the
end of a jetty of land, the corner of an established field, street corners, or
the intersection of two hedgerows.
4. Similar to shown in figure on the next page, try to
identify the control points which
are unique and easy to locate on the map.
Avoid control points which are too close to each other. Also try to find
control points from different locations
on the image.
5. Capture the screen using “PrintScreen” button on keyboard and paste it into Paint program and save
it as a TIFF image. Paint program can be opened on windows
PC from Start/Programs/Accessories/Paint.
Note down the Latitude and longitude
information for each control point
and save the image as ControlPts.TIF. This will be used as
your reference if you enter the control points incorrectly. Therefore, this
image should include location and coordinates of the “control point” that you will utilize to georeference
the “capitol beach” image.
6. Get back to your google map
browser window. Close the “LatLng Tooltip” in
the google map by clicking on the button.
7. Uncheck the “labels”
option under “Map” option in the
upper right corner of Google map window (figure not shown).
8. Again capture the screen, open the paint program and paste the image. Crop
the image to clean the sides of the image. After cropping, the image should
look similar to image on the next page.
9. Now “Save”
the image with a name “Capitol
BeachRaw.TIF under Ex6 folder. We cannot save it in geodatabase directly from Paint program. We will save it in Geodatabase
later.
10. Now open the ArcCatalog and under the Ex 6 folder right click to create new/personal geodatabase. Name it as EX6.
11. Open the Capitol
BeachRaw.TIF image in ArcMap. Right click on Capitol
BeachRaw.TIF, click on the Data/Export
data. Select name as Capitol Beach and location as EX6
personal geodatabase. Add the Capitol Beach.TIF to ArcMap.
Now you will see
clear satellite image of Capitol Beach without any labels or location
information in the ArcMap.
We will open the ArcMap and set the coordinate system of the dataframe for
proper alignment of the layers
displayed in ArcMap.
12. Right click on layers on upper corner of Table of Contents. Go to Properties\coordinate system/import. Select the Lancaster_County polygon in Lancaster geodatabase. This will change
the coordinate system of the data frame
to NAD 1983 StatePlane
Nebraska FIPS 2600 Feet
Now we have
identified the control points (ground
truth) with Latitude and Longitude
information, we will import them in ArcGIS.
13. Open ArcCatalog. Right
click on Ex6 geogatabase,
select new/feature class. Name it as Control_Points alias Control_Points.
Select point feature type.
14. Select the Spatial
reference in Geographic Coordinate
System/World/WGS 1984.prj. Leave rest of the options as default. This is the coordinate system that Google uses.
15. Now lets start adding each control
point to the feature class. Go to Toolbars/Editor
to open editor toolbar.
16. Click on Start
Editing to edit the Control_Points layer.
17. Open the Capitol
Beach.TIF that you have saved under Ex6 geodatabse. You might receive warning about unknown spatial reference. Click OK to ignore the warning.
18. In create
feature window on the right side of ArcMap choose create control points layer. In the same window under construction tools choose point.
19. Right click on any point within layer in the ArcMap
window and select Absolute X,Y…
20. Type in X (lat) and Y
(Long) value that you have recorded from Google LatLng marker for each control
point (ground truth). Make sure you
assign negative (-) sign for the longitude of the control
points (ground truth). Make sure X, Y unit is Decimal degrees.
21. Repeat the same procedure to add all the control
points (ground truth) that you have selected. If you enter the wrong LatLong
information for the control point, you can delete the point. Click on the control point to select it and press
delete key on the keyboard to remove
it. You can also right click on the selected control point and click delete.
22. Click on the Stop
editing button on editor toolbar and click yes to save your edits.
Now you have completed the control points feature layer. This was to illustrate
one way of adding control points.
Another simpler way is to add control points
using Make XY event layer tools from
text or excel table (steps 23 through 28).
23. Open MS Excel program. Create CPID, Lat and Long columns in Excel. In the excel table enter the co-ordinates of control points in Lat and Long column. CPID is your control point ID for your reference.
24. Remove the remaining worksheets from the excel. Save the Excel
file with name CP.
25. In ArcToolbox, go to data management\layers and table views\
make XY event layer.
26. To select XY table, browse to CP.xlsx file which you have just created. Note you will see two
files within CP.Xlasx namely _xlnm#Database and CP$. Choose CP$ and
click add.
27. Choose X field
as Long and Y field as Lat. Leave Z field blank. Leave Layer name as CP$_Layer.
28. Choose spatial
reference, click select/Geographic
Coordinate system/world/WGS 1984.prj. This is same coordinate system that
Google uses. Click OK.
CP$_Layer will be added to the ArcMap after tool is run completely.
Now we will save it
as feature class in Ex6 geodatabase.
29. Right click on CP$_Layer layer, click Data/Export.
Save data with Name Control_Points as file and personal geodatabase feature classes.
30. Note you will first have to choose ‘save as type’ as ‘File and Personal Geodatabase Feature Class’.
Now you will see Ex6 geodatabase location in the ‘saving data window’. If you choose default shapefile
option under ‘save as type’ you won’t be able to save it in Ex6 geodatabase.
Now we will start georeferencing the Capitol
Beach.TIF.
31. In ArcMap, go to customize/toolbars/georeferencing.
32. Make sure Capitol
beach layer is selected for georeferencing. Click
on add control points button.
This button will link our Control_Point features (ground
truth) to the corresponding location on the Capitol Beach.TIF. This means we will kind of assign spatial reference to the control points
(ground truth) on Capitol Beach.TIF. ArcGIS
then will fit the surface and assign spatial reference to entire image.
33. Now let’s start adding the control points . Make
sure you Auto Adjust option is on
both on Georeferencing toolbar and on Link table. Link table can be opened by clicking on button on Georeferencing
toolbar.
You might not be
able to see anything in full extent of the ArcMap.
This is because Capitol Beach.TIF is missing a spatial reference.
34. Right click on Capitol
Beach.TIF layer click on Zoom to Layer.
35. Now identify
the location of one of control point
(ground truth) on the Capitol Beach.TIF
image. Click on the identified location on image. (Here you can refer to your ControlPts.TIF image where you have
saved the Latitude and Longituide information of each control point on image.)
36. Now right click on the Control_Point layer and ‘Zoom to Layer’ (your cursor will be
showing line, disregard that).
37. Now you will see all the control points. Click on the
control point which corresponds to point on the Capitol Beach.TIF image. At this point ArcGIS snapping environment will be automatically activated and your
control point will be snapped.
Notice your both
layers are now closer. Continue adding the control points. You might receive
the warning that ‘The control points are
collinear or not well distributed, this will affect the warp result’
38. Click OK
and see how much of warping (shift) is caused. If you think image is warped too
much, it indicates you have misplaced
the control point.
39. Make sure you click on the location of control point
on the Capitol Beach.TIF image first
and then connect it to corresponding control
point feature class (ground truth). Do not click on the control point
feature class and then try to connect it to Capitol Beach.TIF image.
40. If you misplace
a control point, simply click on the view
link table button and delete
the control point (selected control
point will be in highlighted in blue as shown in figure).
41. Notice once you have added the second control point
you Capitol Beach.TIF
and Control_Point layers will be aligned. This is
due to Auto adjust function.
42. Now finish connecting all the control points to
corresponding location on the Capitol
Beach.TIF image.
43. Open the View
link table in georeferencing window. Make sure Auto adjust option is checked.
44. Compare the transformation options – 1st order polynomial (affine), 2nd
order polynomial and adjust. See which image (after the transformation) looks
most similar to your original image from Google. Select the best fitted
transformation and click OK.
45. Click on the Update
georeferencing option under georeferencing
toolbar.
46. Click on the Rectify
option on georeferencing toolbar. Change the Name of the file to ‘Captiol_Beach_Rect’ and Output location to Ex6 geodatabase.
Leave rest of the option to default and click SAVE.
47. Remove Control_Points layers and Capitol_Beach layer from ArcMap.
48. Open the ArcCatalog. Right
click on the Captiol_Beach_Rect
image from Ex6 geodatabse
that you have just saved. (Note: sometime you might have to reopen the ArcCatalog if it was already open, or refresh it from View/refresh or use F5 key on keyboard).
49. Notice your file now has a spatial reference NAD 1983 StatePlane
Nebraska FIPS 2600 Feet and datum D_North_American_1983
which is same as ArcGIS data frame.
50. It is important to note that when you Update Georeferencing,
coordinate system of the dataframe will be assigned to the image.
Part
II: NDVI computation
Now we
will use some of the Processing functions. One of the commonly used functions
to assess the
presence of live green vegetation is NDVI. NDVI is
normalized difference vegetation index. NDVI is computed using below
formula:
RED and NIR stand for the spectral reflectance measurements acquired in
the red and near-infrared regions of electromagnetic spectrum, respectively.
NDVI takes the value from -1 to 1. The higher the NDVI, higher the fraction of
live green vegetation present in the scene. Landsat band 4 (0.77-0.90 µm)
measures the reflectance in NIR region and Band 3 (0.63-0.69 µm) measures the
reflectance in Red region. The equation
ArcGIS uses to generate the output is as follows: NDVI = ((IR - R)/(IR + R)) * 100 + 100.
This will result in a value range of 0–200 and fit within an 8-bit structure.
1. Add ‘July’
and ‘Feb’ images from the ‘Lancaster’ Geodatabse
to ArcMap.
2. Open the ‘image analysis’ window using ‘window’ option
in ArcMap.
3. We can set the ‘Image
analysis options’ using button on top left corner of the Image analysis window. Do it for both
July and February images.
4. Click the button.
Under NDVI, make sure Red Band is 3 and Infrared Band is 4. Do it for both July and February
images. This band combination holds true for Landsat Image. You might have
other hypersprectral or satellite image where layer
numbers will change. Also if you have stacked only two or three bands in your
Composite image, Layer number could change accordingly.
5. Select ‘Feb’
layer in Image analysis window and
click on NDVI button under processing
section.
6. You will see ‘NDVI_feb’ layer
is created in ArcMap. Green color shows presence of vegetation and other colors show
absence of green vegetation.
7. Repeat the same process to get the July NDVI and save
the data as ‘NDVI_July’.
Questions:
1.
Turn in the image of Capitol Beach Lake with first order
polynomial transformation option (Part I).
2.
Turn in output of
NDVI for July and February for Lancaster County (Part II). What is the prominent difference between July
and Feb NDVI?
References
http://www.sc.chula.ac.th/courseware/2309507/Lecture/remote18.htm
http://www.youtube.com/watch?v=xVVdZOQiBuQ&feature=related
ArcGIS 10 help
ESRI training Visualizing and Analyzing Imagery
with ArcGIS 10
Esri Training | Georeferencing Rasters in ArcGIS