I. Introduction
Undesired reflections of a photo taken in front of a glass often ruin the picture. To remove reflection artifacts, it is impractical to condition the imaging environment (e.g., use polarizers), so using a computational approach is usually preferred. An image containing reflections is a non-linear combination of two layers, the background and reflection layers. Therefore, removing reflection artifacts from the input image is equivalent to decompose the image into two layers. This problem, however, is obviously ill-posed as there will be an infinite number of valid decompositions.