1. A method implemented by one or more computing devices, the method comprising: capturing one or more images from one or more image scenes; generating a plurality of image patches from the one or more images; and learning a shared basis mixture to model an image patch distribution of the plurality of image patches from the one or more images as part of a Gaussian mixture model, the learning including using independent components of the one or more images and resulting in forming the shared basis mixture as a non-orthonormal shared basis mixture (NSBM).