  Intrinsic image decomposition is the process of separating the reflectance
and shading layers of an image, which is a challenging and underdetermined
problem. In this paper, we propose to systematically address this problem using
a deep convolutional neural network (CNN). Although deep learning (DL) has been
recently used to handle this application, the current DL methods train the
network only on synthetic images as obtaining ground truth reflectance and
shading for real images is difficult. Therefore, these methods fail to produce
reasonable results on real images and often perform worse than the non-DL
techniques. We overcome this limitation by proposing a novel hybrid approach to
train our network on both synthetic and real images. Specifically, in addition
to directly supervising the network using synthetic images, we train the
network by enforcing it to produce the same reflectance for a pair of images of
the same real-world scene with different illuminations. Furthermore, we improve
the results by incorporating a bilateral solver layer into our system during
both training and test stages. Experimental results show that our approach
produces better results than the state-of-the-art DL and non-DL methods on
various synthetic and real datasets both visually and numerically.
