  Convolutional neural networks rely on image texture and structure to serve as
discriminative features to classify the image content. Image enhancement
techniques can be used as preprocessing steps to help improve the overall image
quality and in turn improve the overall effectiveness of a CNN. Existing image
enhancement methods, however, are designed to improve the perceptual quality of
an image for a human observer. In this paper, we are interested in learning
CNNs that can emulate image enhancement and restoration, but with the overall
goal to improve image classification and not necessarily human perception. To
this end, we present a unified CNN architecture that uses a range of
enhancement filters that can enhance image-specific details via end-to-end
dynamic filter learning. We demonstrate the effectiveness of this strategy on
four challenging benchmark datasets for fine-grained, object, scene, and
texture classification: CUB-200-2011, PASCAL-VOC2007, MIT-Indoor, and DTD.
Experiments using our proposed enhancement show promising results on all the
datasets. In addition, our approach is capable of improving the performance of
all generic CNN architectures.
