  Reflections often degrade the quality of the image by obstructing the
background scene. This is not desirable for everyday users, and it negatively
impacts the performance of multimedia applications that process images with
reflections. Most current methods for removing reflections utilize
supervised-learning models. However, these models require an extensive number
of image pairs to perform well, especially on natural images with reflection,
which is difficult to achieve in practice. In this paper, we propose a novel
unsupervised framework for single-image reflection separation. Instead of
learning from a large dataset, we optimize the parameters of two cross-coupled
deep convolutional networks on a target image to generate two exclusive
background and reflection layers. In particular, we design a new architecture
of the network to embed semantic features extracted from a pre-trained deep
classification network, which gives more meaningful separation similar to human
perception. Quantitative and qualitative results on commonly used datasets in
the literature show that our method's performance is at least on par with the
state-of-the-art supervised methods and, occasionally, better without requiring
large training datasets. Our results also show that our method significantly
outperforms the closest unsupervised method in the literature for removing
reflections from single images.
