engeje@uts.uni-c.dk (Jacob Engelbrecht) (06/08/91)
I have a problem with an image I want to transform in an inverted 'barrel'
like manner, like this:
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
----->
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
if D is the distorted image and C is the corrected image then I have
in mind to use an indirect polynomial transform:
C_x = a_0 + a_1*D_x + a_2*D_y + a_3*D_x^2 + a_4*D_y^2 + a_5*D_x*D_y
C_y = b_0 + b_1*D_x + b_2*D_y + b_3*D_x^2 + b_4*D_y^2 + b_5*D_x*D_y
I will determine the a's and b's using control points in the image
and the methods of least squares. This method is supposedly used
for transforming sattelite images. Rotation can also be acomplished
which may also be important in my case.
My questions are:
1) Is this the method of choice or are there simpler methods that
can solve the same problem?
2) Has any one implemented this method (preferable i C) or other
methods to solve the same problem?
Jacob Engelbrecht
Dept. of Structural Properties of Materials
The Technical University of Denmark
E-mail: engeje@uts.uni-c.dk