1. A computer-implemented method for stabilizing image frames in a video data stream comprising: a. using a computer, calculating a centroid of a given image frame in the video data stream, the centroid consisting of a weighted average of a value associated with each pixel as a function of the pixel's position in the image frame for at least a portion of the image frame, the portion situated at the same vertical and horizontal position in each image frame in the video data stream, wherein the value associated with a given pixel is eliminated from the centroid calculation when the value is outside a selected range of values; and b. using the computer, translating the given image frame by an amount equal to the difference in position between the centroid of the portion of the given image frame and the centroid of the same portion of a reference image frame, where the value associated with each pixel is one of a hue, an intensity or another quality of the image and the weighted average of a value associated with each pixel is defined as: X ⁢ ⁢ centroid = Sum ⁡ ( CloumnNumberOfPixel * ValueOF ⁢ ⁢ Pixel ) Sum ⁡ ( ValueOfPixel ) Y ⁢ ⁢ centroid = Sum ⁡ ( RowNumberOf ⁢ ⁢ Pixel * ValueOfPixel ) Sum ⁡ ( ValueOfPixel ) .