A computer program product for use on a computer system for transforming an input image from a hemispherical source to an output image in rectilinear coordinates using a reusable look-up table, wherein the hemispherical input image is represented by a size and contains a number of pixels and the rectilinear output image is represented by a size calculated based on the input image size, the computer program product comprising a non-transitory computer readable medium having computer readable code thereon, the computer readable program code comprising:
- computer code for determining a location within the output image to transfer each input image pixel, wherein the output image location is represented by a column and a row;
- computer code for determining an input image pixel associated with the output image location based on the row and column of the output image location using the reusable look-up table, the look-up table including input image pixel data locations;
- and
- computer code for transferring the associated input image pixel to the output image location, the reusable look-up table being created based upon image data from a prior hemispherical image, and configured to be used to transform additional input images having defined input image sizes without reference to the optical characteristics of the hemispherical source.