Page 2 of 3
Previous | Next

OSS and High Speed Satellite Image Registration

Reference and slave image correlation (correl)
That module will register two images together by selecting pairs of matching point features.

The initial link between images is their georefrencements which can sometimes be quite inaccurate, hence the possibility of multiscale registration.

The automatic satellite image registration module computes a cross correlation coefficient on image regions to register a slave image to a reference image. This can be performed at different scales. Features are extracted by computing Harris corners in the reference image and then selecting the most salient corners. Then, for each corner, an image chip (region) is extracted around the corner in the master image.

The border extents of this chip are computed using a user defined radius. A chip is also extracted around the corner position in the slave image. However, a larger radius is used (master radius plus absolute accuracy). The best sub-pixel shift is computed between image chips using Fourier NCC (normalized cross correlation). This allows the creation of tie points between the slave and master images, which can be filtered by the normalised correlation value.

The input parameters for the correlation module include:

  • image bands to use in the master and slave image for correlation
  • the common projection to use
  • scaling factor (between 1 and 0), for reduced resolution image processing
  • absolute accuracy between images
  • maximum density of corner points
  • minimum NCC to consider as a tie connection
  • master chip image radius
The number of tie points impacts on the performance of the algorithm - a large set of tie points slows down the registration process while a much smaller set will demonstrate a considerable speedup in registration time. The input data is restricted to having the following properties:

  • very small rotation
  • very small scale difference
  • small look angle difference
  • there should exist an initial registration (possibly poor)
  • there should be a minimum of 40% overlap between images
  • the master image must be of good quality
The program provides a list of tie points between master and slave image in XML format. A tie point connects a corner feature in the master image (ground point) to the corresponding feature in the slave image (pixels).

Model optimization (modopt)
The model optimization process uses all tie points to optimize a projection model. It creates a new projection or updates an existing one. The input is a set of tie points, between the reference and input image, and a model type. An optimization function and number of degrees of freedom for the model can also be specified. Some models may require an initial state that is then updated. Some of the models currently supported are bilinear and polynomial projection, SPOT5 and LANDSAT models, and the RPC projection, or any OSSIM parameterized projection model. An RMS value and the optimized module (.geom geometry file) are produced as the output of this program.

Model optimization with outlier rejection (rejout)
The modopt program uses all the tie points in a set to optimize the projection. However, there may exist outliers in the set points, which will prevent a good final accuracy. This can be viewed as a manifestation of automatic matching. The rejout module selects inliers and then performs the model optimization. Inputs to this executable are a tie point set, the number of inliers (as a ratio of the total number of tie points), an error estimate for a good fit and model type (as in modopt). The output is a geometry file, an inliers tie point set, the final inlier ratio and the RMS value for the model fit.

Rejout uses RANSAC [3] to select a correct fit. This algorithm is iterative. It randomly chooses a minimum number of tie points to fit the projection model (above the inlier ratio) and compute the model fit over the whole of tie points until a solution below the error threshold is found. In some cases, a solution may not be found. In this scenario, the algorithm halts after a pre-computed number of iterations, which is determined automatically with probability of a tie point being an inlier and model degree of freedom.

Page 2 of 3
Previous | Next