Patent Document ID: 8295632
Application ID: 12657503
Patent Status: 1

Claim One:
1. A computing system for performing any one or more of edge-preserving image sharpening, edge-preserving image smoothing, edge-preserving image dynamic range compression, and edge-aware data interpolation on digital images, the system comprising: a computing processor; and one or more modules, executed by the computing processor, configured to perform forward transformations and backward transformations by performing a method comprising: computing forward transformation of pixels in said image by: predicting from pixel data representative of a digital image predicted pixel values using robust smoothing by computing weighted averages of pixel values that gives more weight to pixels that are close in spatial distance and color attributes to the pixel being predicted than to distant pixels with different color attributes, and storing in a memory detail values each equal to a respective difference between an original and predicted value; updating pixel values by averaging the respective detail values with original pixel values using robust smoothing by computing weighted averages of pixel values that gives more weight to pixels that are close in spatial distance and color attributes to the pixel being predicted than to distant pixels with different color attributes so as to compute approximation values, and storing the approximation values; and subsampling by copying a portion of the approximation values to a coarser grid having fewer pixels than said portion; repeating the forward transformation recursively using the newly computed approximation values as original pixel values; increasing or decreasing the detail values and the approximation values depending on their magnitude and depending on whether edge-preserving image sharpening or edge-preserving image smoothing or edge-preserving image dynamic range compression or edge-aware data interpolation is to be performed; computing backward transformation of the approximation values and the detail values by: upsampling the approximation values by copying the approximation values to a finer grid having more pixels than the number of approximation values; predicting from the approximation values predicted pixel values using those pixels that are missing in the finer grid using robust smoothing; and updating pixels values by summing the respective detail values and the predicted pixel values using robust smoothing; and repeating the backward transformation recursively using the newly computed approximation values as the approximation values.