SharpGIS

#GIS from a .NET developer's perspective

True Orthophoto Generation

Master thesis at IMM, DTU - February - August 2004

Abstract

This Master Thesis investigates methods for generating true orthophoto imagery from aerial photographs and digital city models.

The thesis starts by introducing the theory for generating orthophotos, followed by a comparison of orthophotos with true orthophotos. Methods and problems that arise when extending the theory to true orthophotos are treated. On the basis of the investigation, an overall method for creating true orthophotos is devised. The remaining chapters treat the steps of the method in details, and evaluate the results.

The true orthophoto rectification is divided into four general steps: Rectification, color matching, mosaicking and feathering. Creating the image mosaic is found to be the most crucial part of the process.

Three methods for mosaicking source images are tested. They all rely on simple pixel score techniques used for assigning pixels from the source images. The best method found uses a method where the score is calculated as a combination of the distance to the source images’ nadir points and the distance to obscured areas. A histogram matching algorithm is used for giving the source images the same radiometric properties, and feathering is applied along the seamlines to hide remaining differences.

The method is tested on a range of areas, and the overall result shows that the method gives reasonable results, even if the surface model is inaccurate or incomplete. It is furthermore assessed that the method can be applied to large-scale true orthophoto projects.

Keywords: Orthophoto, Digital Surface Models, Aerial photography, Photogrammetry, Color matching.

Download the full thesis:
  - Master thesis (PDF - 8.36mb - Language: English - 142 pages)

Furthermore you can download my preliminary thesis. It's full of errors and in danish though:
- True Orthophoto Generation. Preliminary Investigation.
     (PDF - 1.65mb - Language: Danish - 27 pages)

Below you can find some illustrations of the problem at hand, and examples of the results.

Theory

The Orthorectification process traces rays back to the camera to determine the color at a certain point. When raytracing from a point back to the image, the first ray finds the topmost intersection above the point, and the second ray checks for visibility between the point and the camera.

True orthophotos require several images of the same area, taken from different points. The image below illustrates the need for four photos to have enough data to ensure that only very few areas will be obscured in all four images. The yellow area are covered by all four images.

The imagery used in this project are shot with a normal-angle lens (focal length: 300mm) from 1500m above ground. Normally, aerial photography uses wide-angle lenses (focal length: 150mm) from a lower altitude, which makes the displacement of buildings more pronounced, and thus increasing the obscured areas. This is also illustrated below.

Normal-angle lens (altitude: 1500m)
Images courtesy of Blominfo A/S
Wide-angle lens (altitude: 750m)

The above images are both taken from exactly the same location, but with different flight altitudes and different camera lenses. Because the right image are taken from a lower altitude and uses a wide-angle lens, the coverage are exactly the same, but the displacement is much larger.

Generating a true orthophoto

The first step in creating true orthophotos, is normal orthorectification of the imagery and in addition detection of the obscured areas in the images:

Ortho rectified image
Image rectified and obscured areas marked

Below is a distance transformation indicating the distance between the obscured areas and the pixel. This is used later in the mosaicking process.

Euclidean Distance Transformation
Distance transformation of obscured areas

This process can only be done by having an exact model of the area to be processed. Below is an example of the a detailed surface model used to rectify the image.

Digital Surface Model
Digital Surface Model

If this process is repeated for several images covering this area, they can be mosaicked to form a complete true orthophoto. Below non-obscured data from neighbouring images have been merged into the true orthophoto mosaic.

True Orthophoto
True Orthophoto

Color matching

When mosaicking images shot with different radiometric properties, the results are often very poor as illustrated at the image below.

Poor image mosaic due to different color and brightness

Histogram matching is a method for matching the histogram of an image, h0(vin),to another histogram h1(vout), in this case the histogram of a reference image. The method is illustrated below. c0(vin) and c1(vout) are the cumulated histograms. An in-depth description of the method is described in "W. Niblack: An introduction to Digital Image Processing".

The histogram matching method

Below is a result of the same image mosaic as above, but created with automatically histogram-matched images. The result is very convincing.

Mosaic from histogram matched images

True orthophotos vs. orthophotos

The normal orthophoto is only "correct" at the terrain level. True orthophotos is geometrically correct over in the entire image.

Normal Orthophoto with vectormap overlayed
Orthophoto with vector maps overlayed

True Orthophoto with vectormap overlayed
True orthophoto with vector maps overlayed


Illustrations

Below are some preliminary results (Click for larger version).

Normal orthophoto (normal angle)
Ghost images are a big problem when the visibility test isn't performed.
Normal orthophoto (wide angle)
This wide angle photo illustrates the much larger displacements generated.
   
True orthophoto
Created fully automatic

The mosaic pattern used
True orthophoto draped on surface model