I need to classify some domain specific images by analysing their color distribution. I have annotated data; this last classification step is supervised.
After some preprocessing and masking and other unrelated tasks, I extract the dominant colors in the image's ROI, by clustering the pixels values with K-means.
I end up with K clusters, their size (i.e. the number of pixels that fall into that cluster) and their centroid (A color is a 3d vector in the Lab* color space, this shouldn't really matter, it could be RGB).
Based on the total number of pixels (which varies from image to image) I convert the absolute cluster size into percentages, and the clusters are sorted by size.
For each image, I end up with features that look like this (for example, with K=3)
image1.png (class A)
|Cluster number||Cluster size||Cluster center L*||a*||b*|
I don't know how to treat this data and what kind of model to use. This is because both the color center and the cluster size are a continuous value, and there are multiple clusters.
I have looked into Computing Image Similarity based on Color Distribution but I have continuous colors and not categorical colors.
I have looked into Classification based on a Clustering Result but I have K clusters per image and not just 1.