  This paper introduces a new rain removal model based on the shrinkage of the
sparse codes for a single image. Recently, dictionary learning and sparse
coding have been widely used for image restoration problems. These methods can
also be applied to the rain removal by learning two types of rain and non-rain
dictionaries and forcing the sparse codes of the rain dictionary to be zero
vectors. However, this approach can generate unwanted edge artifacts and detail
loss in the non-rain regions. Based on this observation, a new approach for
shrinking the sparse codes is presented in this paper. To effectively shrink
the sparse codes in the rain and non-rain regions, an error map between the
input rain image and the reconstructed rain image is generated by using the
learned rain dictionary. Based on this error map, both the sparse codes of rain
and non-rain dictionaries are used jointly to represent the image structures of
objects and avoid the edge artifacts in the non-rain regions. In the rain
regions, the correlation matrix between the rain and non-rain dictionaries is
calculated. Then, the sparse codes corresponding to the highly correlated
signal-atoms in the rain and non-rain dictionaries are shrunk jointly to
improve the removal of the rain structures. The experimental results show that
the proposed shrinkage-based sparse coding can preserve image structures and
avoid the edge artifacts in the non-rain regions, and it can remove the rain
structures in the rain regions. Also, visual quality evaluation confirms that
the proposed method outperforms the conventional texture and rain removal
methods.
