Many signals and natural images can be represented as a sparse linear combination of basis vectors over an overcomplete dictionary.
Signal samples:

Dictionary Learning is solving the following problem:
Where D is an overcomplete dictionary, A is the projection coefficients of x_i onto the columns of D. It adaptively learns D from the input signal, and make sure the projection coefficients are sparse.
Result
Image denoising: