Clustering images I do have about 700 matrices (200*200 pixels) and I would like to cluster them into 5-10 groups. 
I wanted to try the k-medoids method for this but am not sure how to implement it. According to what I found out I would have to convert the 200*200 matrix into a 40000 element vector and then use that as input to the clustering. However I am not very convinced about the ability of this algorithm to handle such high dimensional data. 
I read about convolutional neural networks and it seemed more suitable. However I would like to know if there is maybe a simpler algorithm that could do the job instead.
 A: Images clustering using the pixels as features is very unlikely to work well. Standard practice is to embed the images in a feature space designed for images, then apply a clustering method on that feature space. Standard feature representations include HOG (Histogram of Oriented gradients) and SIFT/SURF features. SIFT in particular is widely used for image search, which involves similar measurements of between image distances as for clustering. 
You could use a convolutional neural network to embed the images in a lower dimensional space, then apply clustering in that space. It's a lot of work though. I wouldn't recommend it unless you already have experience with neural networks.
A: Within Stanford's Course on Convolutional Neural Networks (CNN) you can find an implementation for k-Nearest Neighbor. I think the actual function for k-medoids can be applied to that. 
The course will give you a good overview when to use CNN and why they are preferred over the nearest neighbor methods in general for larger datasets.
