[GRASS-user] g.transform: forward and reverse rmse

Glynn Clements glynn at gclements.plus.com
Tue Oct 28 13:51:10 EDT 2008


Maciej Sieczka wrote:

> I have a problem understanding how to interprete the reverse and forward
> rmse returned by g.transform. I found Glynn's explanation [1], but,
> shame one me, I don't quite get it. Is there anybody willing to put the
> explanation some other words so maybe this gives enough clue?

First, best-fit forward and/or reverse transformations are computed
based upon the GCPs. The same algorithm is used for both forward and
reverse transforms, the only difference being that the control points
are swapped.

Note that, unless order=1, the two transformations will typically not
be exact inverses as the inverse of a polynomial containing quadratic
or higher terms is not itself a polynomial.

The RMS error for a transformation is the mean of the squares of the
distances between the transformed source point and the corresponding
destination point.

If you have a GCP pair ((sx,sy),(dx,dy)) and a transformation T, the
transformed source point is (tx,ty) = T(sx,sy). The square of the
distance is (tx-dx)^2+(ty-dy)^2. The total square error is the sum of
these values, the mean square error is the total square error divided
by the number of values, and the root mean square error is the square
root of the mean square error.

The forward and reverse RMS errors correspond to the forward and
reverse transformations.

The forward error provides an estimate of how far a forward-projected
point in the source coordinate system will be from the actual position
of that point in the destination coordinate system.

The reverse error provides an estimate of how far a reverse-projected
point in the destination coordinate system will be from the actual
position of that point in the source coordinate system.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the grass-user mailing list