【问题标题】:how to estimate the count of clusters for color-quantization with kmeans2如何使用kmeans2估计颜色量化的簇数
【发布时间】:2012-11-07 16:10:45
【问题描述】:

我想用 kmeans2 算法量化一些图像。 我的问题是找到(接近)最佳集群数。

有人知道如何估计集群的数量吗? 我的想法是在 hsv-color-space 中创建色调的累积直方图。但我不知道如何使用这些信息来估计计数。

问候

【问题讨论】:

    标签: opencv k-means quantization


    【解决方案1】:

    我个人使用以下方法:

    伪代码

    int k = 1;
    double oldCompactness = std::numeric_limits<double>::max();
    double compactness = kmeans(data, k);
    while( compactness/oldCompactness < threshold ) {
        oldCompactness = compactness;
        k = k + 1;
        compactness = kmeans(data, k);
    }
    

    紧凑性随着集群数量的增加而降低(如果您拥有与数据点一样多的集群,它应该变为零)。

    我应该指出,集群的最佳数量非常依赖于应用程序。例如,在您的应用程序中,我不知道您是否更喜欢高数据缩减(低 k)或良好的视觉表示(高 k)或折衷(某处介于两者之间)。

    您可以查看here 以获得更多/更好的想法。或者here(第 8 周)如果您喜欢视频。

    【讨论】:

    • 感谢您的回复。机器学习课程看起来很棒:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-03
    • 1970-01-01
    • 1970-01-01
    • 2018-03-14
    • 2016-04-29
    • 1970-01-01
    相关资源
    最近更新 更多