This paper proposes a rain detection and removal algorithm that is robust against camera motion. The proposed algorithm initially detects possible rain streaks by using spatial properties, such as the luminance and structure of rain streaks. Then, the rain streak candidates are selected based on a Gaussian distribution model. Finally, these detected regions are improved with an advanced temporal property in a block-matching process. After the rain detection step, a non-rain block-matching algorithm for each block is performed between adjacent frames to find blocks similar to the block that has rain pixels. If similar blocks are obtained, the rain region of the block is reconstructed by spatio-temporal non-local mean filtering using similar neighboring regions. Finally, a specific post-processing is performed for visibility enhancement and flickering artifact removal. Experiment results show that the proposed algorithm uses only five temporally adjacent frames for rain removal but outperforms previous methods in terms of subjective visual quality.
Read full abstract