How to
GeoReference Vector Data...
Steps for using Spatial Adjustment Tools to
Align Vector Data
to Real-World GIS Coordinates in ArcMap
Back to the
GIS
Tutorials & Help Page... Back
to the
SAL Home Page...
NOTE:
EGEO-450 students, see additional notes PRIOR
to attempting to use the Spatial Adjustment tools detailed below...
See also Chapter 8 (Spatial
Adjustment) of Editing in ArcMap.pdf
STEPS:
1. Set Up the Map Project
2. Use the Spatial Adjustment Toolbar to Add Links
3. Review the Links Table
4. Finalize Your Spatial Adjustment
Note: See optional methodology suggestion at the end of
this document…
1. Set-Up the Map Project
- Prepare an ArcMap project with relevant basemap data. These basemap GIS data
layers will be the source of your ground control data – that which you will
‘snap’ the unadjusted vector data files to. (Throughout this document the
unadjusted vector data files that you wish to assign coordinates to is
referred to the ‘unadjusted data.’ The data your are using for
your ground control, which already have real-world coordinates, is referred to
as ‘real-world data.’) You want real-world data basemap layers
that contain similar corresponding features as are found in your unadjusted
data (for example, Buildings, Parcels, Roads, Cities, States, etc.). You could
also use a point layer of GPS locations you have collected that match the
features found in your unadjusted data. These ground control data layers can
be either raster or vector, as long as they are in the appropriate coordinate
system (of your choosing).
- Verify that the ArcMap data frame is in the appropriate coordinate system (data frame Properties / Coordinate System tab)
- Add the unadjusted data to your ArcMap project (make sure you are working on a COPY of
your data, once adjusted (and saved), there is no way of going back if you are
unhappy with the results…). You may get a warning message about these
layers missing a spatial reference system. Click OK (we knew this
already, that’s what we want to fix…).
- Zoom to the
extent of the unadjusted data (right-click / Zoom to layer). Note that
the lower-left corner of this data probably has coordinate values of 0-0 (the
intersection of the equator and the prime meridian, or 0˚ latitude by 0˚
longitude if you are in lat-long, or the 0-0 point of whatever projected
coordinate system your .mxd is using…). This is because there is no
coordinate system associated with this data. It is stored in ‘raw’ or ‘board’
coordinates only. It certainly does not ‘line up’ with any of your GIS data
layers. The numbers associated with the unadjusted data are not coordinates at
all, but simply numerical units (applied to the default unit of whatever
coordinate system you are using).
2. Use the Spatial Adjustment Toolbar to Add Links
- Add the Editor toolbar to your project. (View / Toolbars / Editor)
- Start
Editing, choosing the data
folder containing your unadjusted data as the workspace to be edited. (You
may get a warning message about some data layers not being in the
same coordinate system as the data frame, click OK and proceed.)
- Now add the
‘Spatial Adjustment' toolbar to your project. (View / Toolbars / Spatial
Adjustment)
-
Under the Spatial Adjustment main drop down menu choose Set Adjust Data… and select the layer (or
layers) that you wish to adjust. For multiple layers, check the box next to All features in these layers: and select the layers you wish to transform.
Click OK. Make sure you have ONLY the layers you wish to adjust
checked, otherwise you risk inadvertently ‘adjusting’ your real-world data
into unknown (bad) coordinates.
o You’ll be making ample use of the zoom and pan tools to work your way back and forth
between these two datasets, zooming in and out each time… (see optional methodology notes below)
o Select the New
Displacement Link tool (the icon with red and green crosses joined by an
arrow) which is used to link your unadjusted data to the real-world GIS data
(make sure you select the New Displacement Link icon and not the Attribute Transfer Tool icon, which are very similar looking…)
o Click once on a
recognizable feature on the unadjusted data (the starting point of an
arrow-line will mark this
location on the map), then click once on the corresponding location on the
real-world basemap data (this will complete the arrow). Note that the line connecting the
corresponding locatoins has an arrow on the to end of it (where
you want to move your unadjusted data to...)
o Repeat this process of
choosing a location on your unadjusted data and then the corresponding location
on the real-world GIS data again and again and again for a total of 5 to 15
points. Select points distributed throughout the data set(s) – edges and middle
if you can
o You can (and should) be
zooming in as close as you can for each and every link you create to get the
best accuracy possible
o Make sure you are
correctly choosing the same feature/locaton in both data sets each time.
o Make sure you always
click on your unadjusted data location first before you click on
your real-world data location (you always link from the unadjusted
data to the real-world data). Clicking in the wrong order will
greatly mess things up…
o If you make a mistake
(e.g., establishing a link in the wrong order of to-from) you can open the Links Table (see below), and identify, select and delete an offending link.
3. The Links Table
- Behind the
scenes, ArcMap has been building a table of links between the unadjusted data
and real-world data. This table holds X and Y coordinates of the unadjusted
data link locations (in unknown unit counts) and real-world data link
locations (in real-world coordinates). Open this table by clicking on the View Link Table icon.
- The table also
presents the ‘residual’ error associated with each link. This
represents the distance in map units between the location of the
unadjusted data point as calculated by the polynomial fit equation, and the
location of the point as you specified when you clicked on the real-world
data. Any links with high residual errors should be re-evaluated and/or
removed. To remove a link, simply highlight it (click on it) in the Links
Table and then click the Delete Link button. The equations will
immediately be recalculated.
- At the bottom
left of the Links Table is the overall ‘root mean square’ error
(labeled RMS Error:) associated with your combined control points. This
is the mean (average) of the deviations of all your control points from their
calculated locations.
- Remove and add
links as necessary until you have achieved an adequately low error for both
the individual points and the overall RMS.
- Using your
links, ArcMap creates and revises two least-squares-fit equations (one for X
values, the other for Y) to translate the unadjusted data into real-world
coordinates. There are three options for the method used to transform
(spatially adjust) your data: Affine, Similarity and Projective. There is also an option to perform a Rubber Sheet type of
adjustment:
o An Affine transformation, can shift (translate up-down-left-right), scale (make bigger or smaller), rotate, and if necessary, skew (where
the top is pushed one way and the bottom is pushed another), the entire data set
using a single equation. An affine transformation requires a minimum of 3 links.
o A Similarity transformation only scale, rotates or shifts the data (no skew or independent
scaling of the axes). A similarity transformation requires a minimum of 2 links.
o A Projective transformation is based on a more complex formula and requires a minimum of four
displacement links.
o Rubber Sheet adjustments
apply a variable transformation to different portions of the unadjusted data.
This is useful for cases where your unadjusted data is of very poor quality or
from a completely different coordinate system than your real-world data. Rubber
sheeting allows points to be shifted in a non-uniform manner (i.e., points on
one location of the data set may be moved relatively greater or lesser distances
than other locations)
- You can switch
from an Affine to a Similarity or a Projective transformation or a Rubber Sheet adjustment in Spatial Adjustment main drop-down menu by choosing Adjustment Method.
- You can
experiment with affine, similarity and projective transformations and/or
rubber sheeting to see the differences and to choose which one does the best
job of fitting the unadjusted data to your real-world data (probably this will
be the default affine transformation). To test different methods, choose one,
click on Adjust, view the results, then choose Undo Adjust from
the Edit menu to undo your work. Choose a different method and repeat
the process.
- The same links
file is used for all methods of adjustment.
4. Finalize Your Spatial Adjustment
- Choose Links
/ Save Links file from the Spatial Adjustment main drop-down menu
to write the X-Y coordinate pairs to a text file. This file contains the
results of your efforts, and allows you to re-adjust the data at a later time
if need be. Make sure you store it in your project folder as a backup.
- Use the Spatial Adjustment menu’s Adjust option on to finalize your
work. This will apply the equation (built from your links file) to each
feature in the selected data set(s), re-writing the coordinate information for
each feature.
- Evaluate the
results (your unadjusted data should now be adjusted to real-world
coordinates. If you like what you see, great. If you don’t like the results,
choose Undo Adjust from the Edit menu and try a different
adjustment method and/or reevaluate your links. You can use the Modify Link tool to re-position a link.
- Once you are
happy with the adjustment choose Save Edits from the Editor toolbar and then choose Stop Editing.
Optional Strategy to possibly speed the process:
One method of avoiding some of the back
and forth agony of panning and zooming so much is to:
- Do a very quick
set of links (only 2 points, ballpark accuracy)
- Save the links
file (just in case)
- Choose Similarity as the Adjustment Method (you do not want to introduce
any distortion at this point)
- Apply the
adjustment (this should get your unadjusted data pretty close)
- Save your edits
- Begin again,
for real this time, being much more careful about your selection of links
(zooming in for maximum accuracy)
- Save this new
links file
- Choose (if you
wish) an affine, projective transformation, or a rubber sheet adjustment as
appropriate
- Apply the
adjustment (this should get your twice-adjusted data quite well located)
- Save your edits
This method allows you to quickly get
the data ‘pretty close,’ allowing a much more rapid selection of high quality
links for the final adjustment, without quite so much zooming back and forth.
Good choice of contrasting symbology (colors and/or distinctive shapes) will
help to minimize the confusion between what will now be quite closely located
corresponding features in the unadjusted and real-world data sets. The downside
is the requirement of performing two adjustments, and possibly even introducing
errors (though if you use the Similarity method for the first adjustment you
should have no more error than you would have with any other method, since a
similarity transformation only shifts and scales the data...).
Back to the
GIS
Tutorials & Help Page... Back
to the
SAL Home Page...