I'm looking for an algorithm to store small dimensions of some pictures and later search on the stored data for matches similar to a new picture. Maybe something with Self Organizing Map in machine learning ?
A popular and performant method is to use a feature vector consisting of binarized nonlinear kernel classifiers, each of which encodes some abstract property of the image. One salient advantage of the method is its scalability, since it condenses each image into a few bits. (That's what the binarization is for.)
A representative paper is Building Kernels from Binary Strings for Image Matching, and here is a presentation on the subject.
If that's too heavy or overkill I'll take another look into my archives.