IMAGE WARPING AND GEO-REFERENCING

Very often, we need to register a raster image to a base map or a different image with overlapping regions or we need to geo-reference a raster image to a real world coordinate system.

Although both image warping and geo-referencing change pixel locations, they are implemented using different methods. Image warping is done in the image coordinate system and control points are specified using pixel coordinates in integer, not real world coordinates.

As a result, image warping physically creates a new image with pixel locations properly adjusted according to the given control points. To maintain the maximum accuracy in image warping processes, R2V uses the Delaunay Triangulation method to create a mathematical transformation for each triangle region and geometrically corrects each triangle region separately.

On the other hand, raster image geo-referencing does not change the image itself in any way.  Instead it attaches additional information about how to place the image under a real world coordinate system. For example, in ArcView, this is done through a World File which contains 6 parameters to provide a linear transform to display the image at the right location. In MapInfo, a TAB file which contains a group of control points is used for displaying the image. If an image is not geometrically distorted in any way (not rotated, not skewed, not in a mountain area, etc) as compared to the base map, than a one step geo-referencing may work. However, when the raster image does not match the base map geometrically, image warping should be used as the first step to remove the geometric distortion and then apply the geo-referencing process.

The following are step by step instructions on how to do image warping against another image or a vector map in an image coordinate system, warp an image against a geo-coded vector map, and geo-referencing an image.




1. Register/Warp An Image Against Another Image or A Vector Map In Image Coordinate System

Here are the steps for image warping:

Step 1. Open both the image to be warped and the target image using the File/Open Image command. Tile the two display windows side by side. Here we call the image to be warped the source image and the other image is the target image. If you use a vector map instead of an image, use New Workspace and Import Vector to show the data.

Step 2. Activate the source image and start the control point editor using Edit/Control Points or Vector/Select Control Points. A control point is a point you can identify in both the source and the target image. Move the mouse within the source and target image to find such a point, normally road intersections or some other landmarks.  Write down the coordinate values (X, Y) displayed at the bottom of the window for the point in the target image. The coordinate values should be in image coordinates (integer values), not in geo-coordinates such as Lat/Long for image warping. Go back to the source image, click the left mouse button at the point to define this control point. The "From" fields are the coordinates in the source image.  Enter the coordinate values you have for the target image in the "To" fields. Click "OK" to confirm.

Step 3. Repeat Step 2 to define more control points for the source image. You need at least 4 control points, and normally you should have 15 or more to have a more accurate warping result. Click the right mouse button and select Done to exit from control point editor.

Step 4. Once control points are collected, use the Edit/Delaunay Triangulate command to view the triangulation result. Image Registration, Warping Long narrow triangles should be avoided by adding more control points.

Step 5. Select the Image/Warp command to start the warping process. Check the "Image to Image Registration" box. When the command finishes, the new image will be displayed in the source image window. Save the new warped image to a new image file using File/Save Image As command for future applications.

Here is an example, LANDSAT TM image registered using R2V's Image Warp command.




2. Geo-Reference An Image Against A Geo-Coded/Geo-Referenced Vector Map Without Image Warping

To geo-reference an raster image to a vector map without image warping, use the following steps:

Step 1. Open the image to be geo-referenced using the File/Open Image command. Open the vector map using New Workspace first and then Import Vector. Tile the two windows side by side. Because R2V uses an image coordinate system where the upper left corner is the origin (0,0), you may see some geo-coded vector files displayed upside down (for example, some SHP files). This is okay and you can define your control points as the way they appear. If you want to have both in the same orientation (sure you do), it's easier to flip the image (Image/Flip Vertical), not the vector, and work from there. Flipping the vector will complicate the process and not recommended.

Step 2. Activate the source image and start the control point editor using Edit/Control Points or Vector/Select Control Points. A control point is a point you can identify in both the source and the target image. Move the mouse within the source and target window to find such a point, normally road intersections or some other landmarks and write down the coordinate values (X, Y) displayed at the bottom of the window for the point in the target image window. Go back to the source image, click the left mouse button at the point to define this control point. The "From" fields are the coordinate in the source image, and enter the coordinate values you have for the target image window in the "To" fields. Click "OK" to confirm.

Step 3. Repeat Step 2 to define more control points for the source image. You need at least 4 control points to geo-reference the image. Click the right mouse button and select Done to exit from control point editor. Save the control points to a control point file using the File/Save Control Points command. This will be used if you decide to warp an image against a geo-coded vector map.

Step 4. Once you have your control points, R2V provides several ways for geo-referencing using control points. If you use GeoTIFF, you can use the File/Save Image As command and select "Yes" when asking if you want to save image as a GeoTIFF file.

If you need to create a World file (For ArcView or ArcInfo) or a table file (for MapInfo), you can use the File/Save World File command.




3. Geo-Reference An Image Against A Geo-Coded/Geo-Referenced Vector Map With Image Warping Applied

This is done by combining steps described in Process 1 and 2. If a group of steps have been described previously in Process 1 or 2, we'll simply refer to Process 1 or 2.  Two things need to be done, first register or warp the image to correct distortion and then geo-reference the new image. 

Here are the steps:

Step 1. Follow Process 2 Steps 1 to 3. Save control points to a control point file. For Example, let's call this file Control Point File 1. Use the Right mouse button to change to Delete mode. Delete all control points.

Step 2. Close the geo-coded vector map window.

Step 3. Use File/New Workspace to open a blank window. Use File/Import Geo-Coded Vector to open the geo-coded vector map.   Use Control Point File 1 from step 1 here and select Bi-Linear option. This step basically reverses the geo-referencing process to convert the geo-coded vector map back to the image coordinate system.

Step 4. Follow Process 1 Steps 1 to 5 to warp the image. Save to a new image file. Delete all current control points.

Step 5. Follow Process 2 Steps 1 to 4 (or read Control Point File 1 and modify to fit the new image) to geo-reference the image.