Describir: Sparse coding and dictionary learning based on the MDL principle