1. A single-image-based rain streak removal method, comprising: decomposing an original image into an original high frequency image and an original low frequency image; obtaining a dictionary, wherein the dictionary is the best for representing a plurality of patches of a reference image and the dictionary comprises a rain sub-dictionary and a non-rain sub-dictionary; finding a coefficient of each patch of a plurality of patches of the original high frequency image corresponding to the dictionary according to a first cost function and a prerequisite; producing a non-rain high frequency image using the dictionary and the coefficient of each of the patches of the original high frequency image; and combining the original low frequency image and the non-rain high frequency image into a non-rain image.