Example: Georegister a Vector Drawing

Georegistration is the process of adjusting a raster image or vector drawing that has an unknown coordinate system to match the coordinate system and conformation of a known-good reference component.  Georegistration also is called georeferencing in some other GIS packages.

 

In this example we take a vector drawing with an unknown coordinate system that shows the provinces of Mexico and we georeference it to a map containing a Bing Streets web-served layer, casting the Mexico drawing into Pseudo-Mercator coordinate system.  We begin the process using only two coordinate points and then we do a preview to see where accuracy of the proposed georeferencing result should be improved by adding more control points.  We add more control points and then georeference the Mexico drawing with good accuracy.

 

See a video version of this topic in the 5 Minute Tutorial - Georegistration video.

 

For our known-good reference, we will use a map called Map Target with one layer, a Bing streets imageserver layer.   We use whatever names we want.  In this example we use a name with "target" for the destination map to help teach the standard nomenclature used in georegistration, where a source image or drawing with unknown coordinate system is cast into a target, known-good coordinate system.  

 

 Note that the target map is a map component created in the main part of the project that has a Bing Streets imageserver layer.  We can create the map together with the Bing layer in one step using File - Create - New Map.   Using a map (instead of popping open a image in its own window from within a Bing data source) ensures we are working in a read/write part of the project, which helps beginners avoid errors.

 

 

When doing georegistration it is convenient to arrange the source and target components we work with in two open, undocked windows, positioned on our Windows desktop so we can see both of them and work with both at the same time.    The illustration above shows our target component open in an undocked window that has been panned and zoomed to show our area of interest, Mexico.

 

The source component we want to georegister is a drawing of Mexico that we have imported from a shapefile.   It is a projected drawing, but because the shapefile was provided without any accompanying files (like a .prj file) that gives the coordinate system used by the drawing, the projection used is a mystery.  That is a common situation with shapefiles, since inexperienced people often do not realize that a shapefile is an ensemble of files and not just one file or just three files.  

 

Our task is to georeference the Mexico drawing, so we can use the data in a GIS context.  

Add Control Points to the Source Drawing

We begin by adding control points to the source drawing.

 

 

The illustration above shows our Mexico drawing, called Mexico Source to emphasize it is the source data that is to be georeferenced.  

 

 

With the focus on the Mexico Source drawing, in the cursor mode button in the main toolbar we choose Edit Control Points.   

 

 

The Register pane automatically opens, if it is not already open, and brought to the top of any docked panes tabs.   We have not yet added any control points, so the Register pane list is as yet empty.   

 

The (no source) choice that appears in the topmost box by default indicates that any control points which appear have been defined in the context window, that is, the open window which currently has the focus, and do not come from some other source component.

 

 

 In the Mexico Source window, the mouse cursor now appears as the Edit Control Points cursor.   We choose a distinctive location and click to create a control point at that location.

 

 

 A new control point, marked with a cross symbol and a control point label in blue color, appears where we clicked.   The name for the control point is automatically assigned.

 

When placing control points, Snap works just the same as when editing drawings.   Pressing the spacebar will toggle snapping on and off, and a right-click will bring up a context menu to set snapping options.  When snapping is on, an outer box cursor appears around the control points mouse cursor.

 

 

The control point also appears in the list in the Register pane.   The cross symbol indicates that a position for that control point has been assigned.

 

 

We can click again at another distinctive location, in this case at a spot where three border lines come together.

 

 

A second control point appears, with the iterated name of the control point automatically assigned.

 

 

The second control point appears in the Register list as well.   

Add Control Points to the Target Map

In the simplest form of georegistration, we can use only two control points to georegister the drawing.   

 

 

We click on the Map Target window to switch the focus to that window.

 

 

With the focus on the map window, the Register pane initially appears empty.    We want to pull control points from the Mexico Source drawing, so in the topmost box pull down menu we choose Mexico Source.  The pull down menu will be loaded with all source components within which control points have been defined.   In our project, so far we have added control points to only one component, the Mexico Source drawing, so that is the only component that appears in the pull down menu.

 

As soon as we choose Mexico Source in the topmost box, the Register pane loads the list of control points from Mexico Source and configures itself to support use of the context map window as a target component.     The citation of Mexico Source in the topmost box is a reminder that the list of control points we are looking at comes from the Mexico Source drawing.

 

Initially, there are no cross symbols to the right of either of the control points in the list, since we have yet to mark matching control point locations within the Map Target window.   We will do that now.

 

 

With the focus still on the Map Target window, in the main toolbar cursor mode button we choose Edit Control Points.

 

 

 In the Map Target window, the mouse cursor now appears as the Edit Control Points cursor.   We choose the same distinctive location that matches the location of the first control point in the Mexico Source list and we click there to create a control point at that location.

 

 

 A new control point, marked with a cross symbol and a control point label in blue color, appears where we clicked.   The name for the control point is automatically assigned, taken from the first control point in the Mexico Source list in the Register pane.

 

 

In the Register pane, a cross symbol appears for the first control point in the list.   The cross symbol indicates that a matching position for that control point has been assigned in the Map Target window.  The filled in check box in the right column means that a control point has been assigned and also is visible and will be used in any georegistration.  We can uncheck the box for a control point to hide it, should we choose not to use some of the control points in any georegistration.

 

 The row cursor has automatically moved to the next control point in the list for which a matching position has not been assigned, so we are ready to click again in the Map Target window.

 

 

We click again at the same distinctive location for second control point, using Bing to click at the same spot where three border lines come together.

 

 

A second control point appears, with the name of the Mexico Source control point it matches automatically assigned.

 

 

A cross symbol appears next to the second control point in the list of points taken from Mexico Source, to indicate that second point has also been matched.

Preview the Georegistration

With the Method choice set to the default affine choice, which only requires two control points, we can now command a preview of what will happen in georegistration.

 

Press the Preview button.  

 

 

A preview appears showing how the Mexico Source drawing will be georegistered into the same coordinate system as used by the Map Target window, using the two control points to guide the affine georegistration process.   The preview appears in blue preview color.   A blue preview caption bar appears at the top of the window.

 

Previews in the Register pane use the same preview technology and user interfaces as used in the Transform pane and the Select pane.    For example, we can right-click the preview caption bar at the top of the window and choose 50% to redraw the preview using 50% opacity.

 

 

Using partial opacity allows us to better see how the proposed georegistration aligns with the known good Map Target Bing Streets layer.  We can see right away that with only two control points the alignment is off along the Northern border of Mexico, on the Northern coast of the Yucatan peninsula, along much of the Pacific coast of Mexico and in the Southern part of the Baja peninsula.

 

We can add more control points to the Mexico Source drawing to provide better georegistration in those regions.

 

 

We click on the Mexico Source window to move the focus to that window, and then we click onto distinctive locations in the drawing as shown above.   We can pan and zoom when adding control points to zoom far into the drawing to enable us to place control points with great accuracy.

 

 

As we add more control points, they automatically appear in the Register pane.

 

When we feel we have added enough control points to the source drawing, we click on the Map Target window to add matching control points.

 

 

The Map Target window still has only two matching control points.   In the illustration above we have right-clicked the preview caption bar and have chose Hide Preview to hide the preview.

 

 

When we move the focus to the Map Target window, the Register pane automatically updates to show the new list of control points from the associated Mexico Source drawing.  The longer list now also includes the seven additional control points we added in the Mexico Source window.   Only the first two have had matching positions added in the Map Target window.

 

The row cursor has automatically been positioned to the next control point row with no matching position.    We can now click onto matching positions in the Map Target window, glancing from time to time at the open Mexico Source window and the Register pane to see which matching position we should click next.

 

 

The illustration above shows the Map Target window after we have marked up through the seventh control point.   

 

For the eighth control point, which will be located on the Pacific coast of Mexico, we will zoom into both windows to guide our clicks.

 

 

In the Mexico Source window we pan and zoom far in to see that Control Point 8 has been placed not exactly where the border between two provinces reaches the sea, but rather at the tip of a small peninsula.

 

 

We switch to the Map Target window and pan and zoom the Bing display far into the corresponding location, where the tip of the same peninsula is clearly visible.  We click at the matching location to mark the position for that control point.

 

 

A new control point appears at that position.

 

 

In the Register pane a cross symbol appears for Control Point 8 and the row cursor moves on to the last, unmatched, control point.

 

 

We zoom far into the tip of the Baja peninsula to mark the final control point at the tip of Cabo San Lucas.  Zoomed back out, the Map Target window appears above.

 

 

In the Register pane, all nine control points brought in from the Mexico Source drawing have cross symbols, indicating a matching position for each has been marked in the Map Target window.

 

Press Preview to see a preview of how the Mexico Source drawing will be georegistered using this arrangement of control points and using affine georegistration.

 

 

The preview shows significantly better georegistration.   

Georegister the Drawing

Some of the borders in the Southeastern part of Mexico are not well aligned, but we will go with this arrangement for now.

 

 

To georegister the Mexico Source drawing with this arrangement of control points, we press Register.

 

A new drawing, called Mexico Source 2, and a new associated table appear in the project pane.   We drag and drop the new Mexico Source 2 drawing into the Map Target window.

 

 

The new component, created by georeferencing the Mexico Source drawing, appears exactly where the preview predicted.

Take Care Matching Control Points

Source components, such as scanned paper maps, may show distinctive features that seem to be the same as those which appear in a known-good target component, but if the features which appear to be the same are in fact different, when we click on those different control points we may end up telling Manifold an untruth.  When the system tries to georegister using our bogus instructions, the results will be imperfect.   The misalignment of borders near the Yucatan peninsula in the example above is a case in point.

 

The problem in this case arises with Control Point 2, which we placed at the intersection of three provincial borders in the Yucatan peninsula.

 

 

If we zoom far into the region with the preview turned on, we can see the misalignment of borders.   

 

 

Zooming further in, we can see that the three borders between provinces do come together at the same location, but there is a substantial kink Eastward.   The Mexico Source drawing turns out to be a simplification that shifts the vertical border between two provinces.   The control point we placed in the Map Target window that was intended to match Control Point 2 in the Mexico source drawing is not at the point where the three borders come together, but is offset to the South and East of the three way intersection.  

 

In the Register pane, we Ctrl-click the Control Point 2 row to select it, and then we press the Delete key to delete the matching control point from the Map Target window.

 

 

Next, we add a matching control point at the intersection of the three borders.  

 

We press Preview to see how that works.

 

 

The preview shows that the land borders of the georegistered data set are better aligned, but that the location where the three borders come together is still off.    After some investigation, we discover that the "simplified" data set used (originally published by the US government) is inaccurate.  The borders are in the wrong location.

 

 

After much research, we find an original version of the Mexico shapefile that has the original PRJ file so that the exact coordinate system used is automatically applied when the shapefile is imported.  We drag and drop that into the map, with 50% transparency so we can see how it lines up with Bing.  The land boundaries are very good, but the internal location of the borders between the three provinces is significantly off.

 

 

We still have all of the control points we added to the Map Target window.  We can use the new layer to guide the position of a matching location for Control Point 2.  We add it at the intersection of the three boundaries as shown by the original drawing with coordinate system as specified by the PRJ.   This is an example of how the ability to have many layers in the target window allows us to use any of those layers as a guide for placing control points.

 

We press Preview to get a preview of how that new control point location will georeference the "mystery" Mexico Source drawing.

 

 

We zoom out a bit to compare land borders in Bing to the preview.   Like magic, the preview now appears perfectly georeferenced, especially if we use order 2 (square) as the registration method.   The moral of the story is to be careful choosing what appear to be distinctive features in matching locations.   In this case, it is surprising that a US government data set would get internal borders of provinces in Mexico so wildly wrong, but that is indeed what happened.  

 

Notes

Adios, curved segments - When georegistering a vector drawing, all curved segments are first replaced by straight segments between the defining end vertices of the segment and then those segments are georegistered to produce a final result.

 

Z values are preserved - When vector objects have Z values, those are preserved by the georegistration process.

 

Take a moment to guess or to do research - While it is extremely common to encounter shapefiles or other GIS files that contain projected data while failing to provide coordinate system information, it is also common that such files very often will use some easily-guessed coordinate system, such as Latitude / Longitude or Pseudo-Mercator.    Before undertaking the effort of georegistration, it pays to take a moment to try a few possibilities to see if we can guess the coordinate system used.  

 

It also pays to spend a bit of extra effort on searching the web to see if any information has been published which tells us the right coordinate system to assign.   See the  Example: Import AutoCAD DWG and Georeference and Example: Import AutoCAD DXF and Georeference topics for examples where an extra effort to find info or to guess the coordinate system used pays off.

 

Changing default control point names - Control points by default are named in a numeric series, P 1, P 2, P 3, and so forth.  If we prefer a different default name, such as CP or Control Point we can easily change that using Localization.   Edit the ValueRegisterCoord tag in the default.ui.txt file:

 

ValueRegisterCoord=P

 

Change the text after the = sign to whatever default name desired, such as

 

ValueRegisterCoord=CP

 

or

 

ValueRegisterCoord=Control Point

 

Save the file under a name that begins with ui, such as ui.cp.txt.   Place the saved file in the same folder as the manifold.exe and then in Tools - Options - User interface, choose cp in the pull down menu for Localization.  Press OK.  Restart Manifold and the new text given for the ValueRegisterCoord tag will be used for the default name of control points.    Short names are usually a better idea than long names.

 

A rose by any other name - Manifold uses one word, georegistration, to refer to the same process that is used for both raster images and vector drawings.   Manifold uses the same Register pane and the same workflow for both rasters and vectors.    ESRI uses two words, and two significantly different procedures, depending on whether a raster image or a vector drawing is being georegistered.   ESRI uses the word georeferencing when applied to raster images, but spatial adjustment when applied to vector drawings.   Georegistration and georeferencing are synonyms in Manifold.  

 

Videos

5 Minute Tutorial - Georegister a Drone Photo - See the fast and easy way to georeference drone photos for use in GIS and online web mapping: Learn how to georegister (georeference) a drone photo to line up with Google imagery for full GIS use and for use within Google Maps and other web mapping applications. This video uses exactly the same drone photo used in ESRI's ArcUser example of how to georeference a drone photo in ArcGIS Pro. The difference is that using Manifold is faster and easier.

 

5 Minute Tutorial - Georegistration - In just five minutes we learn how to georegister (georeference) a vector drawing with an unknown coordinate system to a known-good map.  Georegistration is a key capability that allows us to cast raster images and vector drawings into geographic context, so they can be used as GIS layers in maps.  We can georegister aerial photos and drone photos, scan paper maps and georegister those for use in GIS, we can georegister CAD drawings, and we can rescue vector drawings and raster images that once had coordinate systems but were published in formats that failed to preserve coordinate systems.  Super!  Works in the free Viewer, too.

 

5 minute Tutorial - Georeference Many CAD Layers - Georeferencing CAD layers is a common task in any GIS. Manifold makes it a lot easier with fast, simple workflow that avoids extra effort and lets us recycle what we've already done.  This video shows how we can add a few control points just once and then georeference an entire stack of CAD layers imported from a DWG without adding more control points or repeating any work.  

 

Georeference a Scanned Paper Map - In only five minutes of actual work we use Manifold to georeference a 157 MB scanned paper map so it can be used as a layer in GIS.  The scanned map is a historic map showing Davy Crockett National Forest in Texas, downloaded from the Library of Congress website.  

 

Georegistration - Save and Load Control Points - Georegistration (georeferencing) in Manifold uses control points to match features visible in the raster image or vector drawing to be georeferenced with corresponding features visible in a known-good reference.  This video shows how with a single click we can save or load control points.  Because Manifold saves control points as ordinary vector drawings, we can take advantage of that to make mass changes to control points if we like.  In the video we use two versions of a scanned map, one with a gap in the middle and in the other where the gap is closed.  Control points that were placed in the version with a gap can be easily adjusted, dozens at a time, for use in the other version, saving a lot of repeated work.

 

Georeference a Historic Map using a List of Cities - Georeference a scanned paper map downloaded from the Library of Congress that shows slave populations in Southern States in the 1860 census.   The scanned map shows locations of cities, which we will use as control points.  We create a drawing to quickly mark the locations of cities in the scanned image.  Next, we download a modern map of cities in the US and their locations.  We can use the list of cities in the modern map as a source of control points for the target, saving us from having to enter them manually.  Manifold automatically matches names, ignoring those that are not needed, from the modern map during the georegistration process.  

 

Georeference a Whole World Image - See how to georeference an image scraped from the web that shows the geology of continents as they were 200 million years ago.

We mark four control points in the image, then we roughly mark four corresponding control in a Manifold map using Bing as a background layer.  In the Register pane we edit the coordinates of those control points to be even +/- 90 and +/- 180 degrees, and then we press Register.  Done!   The video also shows how we can import and georeference a second image similar to the first, without needing to add any control points, just re-cycling the ones we created before.  

 

See Also

Cursor Mode

 

Maps

 

Images

 

Drawings

 

Panes

 

Project Pane

 

Layers Pane

 

Info Pane

 

Register Pane

 

Select Pane

 

Style Pane

 

Transform Pane

 

Projections

 

Example: Georegister a Drone Photo - We take a raster image, a drone photograph in Everson, Washington, that was imported from an ordinary .jpg file, and we georegister it using a map that shows a Google Satellite view of the same region, casting the drone photo into Pseudo-Mercator projection.   We use previews to see how well the control points we have added will work, before creating a georegistered image.

 

Example: Georegister a Whole World Image - We make a screenshot of a map we see on the web that covers the whole world, from +/- 90 degrees of latitude and +/- 180 degrees of longitude.  The image shows the position and geology of continents as they were 200 million years ago.  We georeference the image using four control points placed at the  +/- 90 degrees and +/- 180 degrees corners, using a target map with a Bing streets background layer.  We use the Show Coordinates option in the Register pane to quickly set exact target control point locations.  As a bonus, we show how to knock out "background" pixels if our image is a palette image.

 

Example: Import AutoCAD DWG and Georeference - Neither AutoCAD DXF nor AutoCAD DWG format provide coordinate system information.  This example shows a typical case where documentation provided on the web site from which we have downloaded a DWG allows us to quickly and simply georeference the imported drawing.

 

Example: Import AutoCAD DXF and Georeference - Neither AutoCAD DXF nor AutoCAD DWG format provide coordinate system information.  This example shows a typical case where we import a DXF using an unknown coordinate system, but based on a lucky guess we accurately georeference the imported drawing.