1. A method of scaling image data, comprising: receiving image data at a processor in at least two channels, a first high resolution channel having the image data at a first, high resolution, and at least a second low resolution channel having image data at a lower resolution than the high resolution; obtaining low resolution image data for the first channel from the high resolution image data; for each high resolution pixel, generating at least three estimates of the high resolution pixel in the first channel from the low resolution image data for the first channel using at least three different interpolation functions; selecting at least a first interpolation function that produces a first estimate that is a closest estimate of estimates that have values higher than the high resolution image data and a second interpolation function that produces a second estimate that is a closest estimate of estimates that have values lower than the high resolution image data; selecting the first and second interpolation functions to interpolate the image data in the second low resolution channel; and blending outputs of the first and second interpolation functions in the second low resolution channel to produce interpolated high resolution image data.