KMeans is a heuristic and unsupervised method that guarantee to converge to an (local) optimal solution, since each iteration must reduce the WCSS (within-cluster sum of squares), and there’s only finite number of assignments, the algorithm is gauaranteed to converge on an (local) optimal solution.
K means can be used for image segmentation, specifically, cluster the response of different filters into K clusters, that can be used to assign each pixel in the image to the nearest cluster. The result could be further used to generate feature vector and classify images.
Despite being fast, K mean clustering has quite a few drawbacks:
EM algorithm could be used to yield better results.