Manually Georegister an Image

The usual way of georegistering images is to use the automated georegistration tools provided within Manifold. These tools use control points to re-scale, reposition and warp an image to match a known good drawing or image.


In cases where images need not be warped but only need to be re-scaled and repositioned we may use manual registration. This topic illustrates that procedure. It should be read not just to learn about manual methods but also to better understand how the default usage of Orthographic projection applies to images.


When importing images into Manifold we will usually import the image from some format that does not save projection information. Quite likely the image will be provided in .jpg or some other non-geographic format. Images of geographic scenes that are imported from non-geographic formats usually fall into one of four classes:


·      Overhead or near-overhead photos. These may be treated for almost all purposes as Orthographic projection. The default usage of Orthographic by Manifold to import such images provides a good basis for use in a geographic context. Such images often may be georegistered simply by changing the origin and scale of the Orthographic projection used to interpret the image's data.

·      Snapshots of data sets that are arranged in Latitude / Longitude projection, but which were imaged on computers or saved in formats in a way that the projection information was not captured. Many images found on Internet that show data sets such as ocean temperatures or other data fall into this class. Such images are imported into Manifold as if they were in Orthographic projection. To georegister them we first change their coordinate properties to Latitude / Longitude projection so Manifold correctly interprets their contents in a geographic context.

·      Images that are irregularly scaled or warped so that they are neither Orthographic or Latitude / Longitude. Scanned images of paper maps that are in some other projection fall into this class. Such images require the use of Manifold's automated georegistration tools for use within geographic contexts.

·      Less frequently, one encounters images saved in a format that does not automatically provide projection information but for which projection information is precisely known. For example, AVHRR images of the US are often encountered as images that have been massaged into Lambert Azimuthal Equal Area projection with known characteristics. Manually setting the projection parameters for the image's properties often is the only step required to georegister such images.


This example provides an instance of the second class of image: a Latitude / Longitude data set that was published as a simple .jpg image.




Our task is to take the globe.jpg sample image and to georegister it to a Latitude / Longitude drawing of world boundaries.


Step 1: Create a drawing of world boundaries


Next we import the World_eg.mfd sample drawing (called world in this example for brevity). We open the drawing and use Boundaries in the transform toolbar to create boundary lines on the peripheries of areas shown in the world drawing. While the newly created boundary lines are selected, we Edit - Cut them out of the world drawing. While the focus is still on the world drawing window, we use File - Create - Drawing to create a new, blank drawing in the project pane that shares the Latitude / Longitude projection of the world drawing. We rename this new drawing world_boundaries and double click it open. We can then Edit - Paste the previously cut boundary lines into the world_boundaries drawing. Press Zoom to Fit to see the lines in the drawing [the blank drawing is initially opened at such a high zoom level that we are looking into a blank spot between the newly pasted lines].


Step 2: Create the map to be used.


We create a map using world_boundaries and open the map. Drag and drop the globe image from the project pane into the map window.




The illustration above shows the situation just after we drop globe into the map window [the map is panned and zoomed so that only part of the contents are visible]. The map was created using world_boundaries so it is in Latitude / Longitude projection as is world_boundaries.


A Digression


Let's take a quick digression from our example for educational purposes.


Images imported from non-geographic formats like .jpg are brought into Manifold using Orthographic projection using one meter per pixel with the lower left corner at 0,0. When dropped into a geographic map the 0,0 coordinate is located at the intersection of the Prime Meridian (0 longitude) and the Equator (0 latitude). The image is in the map shown above but it is far too small to be visible at the zoom range shown. To show the spot where the globe image is located, we have drawn a series of red circles at the 0,0 intersection of the Equator and the Prime Meridian. These have been drawn in a layer called circles.




We can zoom farther into the 0,0 location.




If we zoom extremely far into the map at the 0,0 location we will see a dot where the globe image is located.


We don't need to zoom in to see where the image is located when it is imported by default. Understanding how images are imported by default into a projection context will help dealing with images in a more sophisticated fashion.


Step 3: Change properties to Latitude / Longitude projection


The native projection of the globe image is Orthographic. Although the globe image is imported into Manifold using Orthographic projection like all .jpg images, it is clear from the "unrolled cylinder" appearance of the image that it is intended to represent raster data shown in a Latitude / Longitude projection. To match the image to the world_boundaries map we need to tell Manifold to treat this as a Latitude / Longitude projection and not as an Orthographic data set.


To change the way Manifold interprets this data we open the globe image in its own window and then use the Edit - Assign Projection dialog and change the projection from Orthographic to Latitude / Longitude. We can then close the globe image window.




We leave the other parameters at their defaults for the time being. Changing coordinates properties in this way makes no change to the data inside the image. It simply tells Manifold to treat the data differently.




The result as seen above in the map window is to greatly expand the globe image relative to the size of the world_boundaries drawing. The drawing appears much larger because pixel coordinates that were once meant to be interpreted as X,Y coordinates in meters are now interpreted as X,Y coordinates in degrees. Because a degree is vastly larger than a meter, the image has expanded in size from a tiny dot a few hundred meters in width off the coast of Africa to something that is hundreds of degrees wide.




If we right click on the globe layer and choose Register, we can see the settings in use in the Register dialog. Note that X and Y unit of measure is Degree. These were the default settings for units when we changed projection in the Edit - Assign Projection dialog and they result in each pixel being treated as if it were one degree in size.


Step 4: Re-scale the image using the Register dialog


We need to reduce the size of the globe image by changing the scale specified by the X and Y settings for Local scale.


When rescaling images manually, we can check the Preview box and then change Local scale settings through trial and error, or we can make a first guess based on observation or information we might have about the image. If we look at the map screen shot above, it appears that the image is about three times larger than it should be. We can try to reduce the scale threefold.




If we change the Local scale values for X and Y to 0.333333 as shown above to reduce the scale to one third, the image will be reduced in size threefold. It turns out that this is a good match.




Making the above changes in the Register dialog will have the result shown above in the map window. The globe image now appears to be about the same size as the world_boundaries drawing. We can zoom in to see the alignment of the data sets better.


Step 5: Move the image to align it with the data set.


The screen shot above shows that the lower left corner of the image is still located at the 0,0 intersection of the Equator and the Prime Meridian. We would like to move the left edge of the image Westward 180 degrees, and we would like to move the bottom edge of the image Southward 90 degrees.




We can do this by changing the Local offset values for X and Y in the Register dialog. Right click on the globe layer tab and choose Register. With Preview on, we can change the X value for Local offset to move the image left and right horizontally. Decrease the X value for Local offset to move the image Westward. It turns out that -180 is the right value.




Seen zoomed in a bit the map shows that the image has been moved to the left 180 degrees when a value of -180 is used for X in Local offset. Although we could have found this value by trial and error, a more experienced user would have seen immediately the number was -180.




We now need to move the image Southward by adjusting the Y value for Local offset. If we want to move the image Southward 90 degrees we will need to change the Y value for Local offset to -90.




Applying these values in the Register dialog will align the globe image with the world_boundaries drawing. Closer inspection will reveal that the image is very well aligned with the drawing except for Antarctica. This is likely an error in the "projection" of the original data set for Antarctic regions.




We can see the close alignment by zooming in to Africa. If desired, we can adjust the image and drawing slightly to provide a more dramatic effect.




To create the above screen shot, we increased the contrast of the globe image slightly to provide a greater contrast between ocean areas and the land areas. We then selected the ocean areas and reduced their brightness to black. See the Selection in Images example for this sequence of steps.


We then changed the formatting in the world_boundaries layer to change the color of lins to bright yellow. We then changed Layer Opacity of the drawing layer to 60%.




Note that a very close examination of the shores of North Africa in the screen shot above might suggest that the image has been moved too far southward. If we wanted to "nudge" it slightly upwards we could use an Y offset value of -89.5 instead of -90. However, the image in use is a rather low-resolution image and probably does not merit chasing after a perfect georegistration. It's fine for providing an overview presentation.


Images we download from Internet will often be summary images and not the original data. For example, the globe image originated in a very high resolution 1 km data set that was sampled and re-sampled downward in resolution many times. The important thing is that manual registration (or better, use of the georegistration tools in a more automatic way) provides a ready means of using images in a real geographic context.


Manual georegistration of some images, like our Latitude / Longitude example, can become remarkably fast with practice, especially when similar images are to be registered. The process set forth above can be reduced to only two dialogs: one dialog to change to Latitude / Longitude projection and then one use of the Register dialog to change Local scale and Local offset. For simple images, some expert users find this faster than clicking control points and using the automated georegistration tools.


The example above is slightly contrived since we guessed the new scale factor (one third, or 0.333333) right away. In many applications we will have to choose a scale factor by trial and error to get close to the right factor. We will then shift the image through Local offset and then once again change the Local scale once the image is closer to final alignment and adjustments in scale can be better seen.


Could we have used more 3's or fewer 3's after the decimal point for Local scale, so that we could have had values like 0.33 or 0.3333333333? Yes, of course. This particular sample image is a low precision image suitable for presentation purposes and not intended for real science, so the choice of six 3's of precision was purely arbitrary.


Other Options


An equivalent way to achieve the same effect as the example above is to scale and shift the internal coordinate system of the image in one step using the Projection dialog as follows:


·      Create the map as set forth in Steps 1 and 2 above.

·      Open the map in a window so the effect of changes can be seen.

·      Open the image in an image window.

·      Use the Edit - Assign Projection dialog to change projection to Latitude / Longitude.

·      Change the Local offset values to -180 for X and -90 for Y.

·      Change the Local scale values to 0.333333 for both X and Y.


We can use the projection dialog when we know in advance what scale and offset is to be applied to a given image. This is useful when registering a series of similar images.


See the Edit - Change Projection topic for a discussion of the Local scale and Local offset options and their relationship to traditional scale correction, false easting and false northing values.


Another way of georegistering the image is to use control points as discussed in georegistration .




We can use the Control Points pane to place control points in the World drawing and at equivalent positions in the Globe image, we can then use the Register button in the control points pane to register the Globe image to the World drawing.




The Simple method is equivalent to changing Local offset and Local scale.


See Also


For fine adjustment of registration, use the layer repositioning commands.