I'm asking this question with a Computer Vision background (my stat background is limited). I have a set of data that measure the edge strength (based on color gradient) of a set of colors.

Since these was some sort of similarity measure, based on the answer to this question I posted earlier, I ran HAC and got some results. Then, I calculate the mean edge strength of each cluster with its std. deviation.

    (mean)     (#)    (std. dev)
   13.9970   11.0000    1.2536 --- medium strength edge strength cluster
   21.6859    1.0000         0
   22.3964    1.0000         0
   23.1407    1.0000         0
   25.6370    1.0000         0
   26.1904    1.0000         0
   19.5371    2.0000    0.2155
    3.2880    7.0000    1.7849 --- very low edge strength cluster
   25.3500    2.0000    1.4310

These results make sense naturally, as the ones with low edge strength are grouped together.

My actual requirement, is to get a number of clusters (k), that would nicely mix the low edge strength ones with higher edge ones, so that the colors with low edge strength will have a good chance of getting recognized as an edge. I was wondering is there a way to define some cost function so that I can get these sort of clusters, instead of just getting clusters that group based on overall edge strength.

Essentially, if I want 3 clusters, I'd like the best possible 3 clusters (within a certain number of iterations) such that the edge strengths are mixed to get the best possible results.

I think understand that I would have to define my own cost function for this to pre-process the data. But, I'm at a loss as to how to define such a cost function. Any help here is much appreciated.

Note: The actual data after being pre-processed to a symmetrical square matrix is available at this link, for anyone who's interested. I directly feed this to HAC through the matlab linkage function using the 'single' method. matlab hac documentation



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.