1. A method comprising: providing a reference image and a source image to a processor; wherein the processor uses a wavelet transformation to produce a transformed reference image and a transformed source image; uses the transformed reference image and the transformed source image to estimate affine transform parameters; uses the reference image, the source image, and the affine transform estimates to maximize normalized mutual information between the reference image and the source image; uses the normalized mutual information to perform sub-pixel geo-spatial registration of the reference image and the source image to produce an output image; and applies minimum and maximum affine parameter ranges as lower and upper bounds to solve non-linear equations using a modified Conjugate Gradient Descent algorithm with variable time steps to find the global maximum values of the affine transform parameters.