如何计算像素形成的聚类的质心?
我用RED,BLUE和GREEN值表示像素(例如,pixel(116 133 55)
)。
质心应群集中实例的平均值,但如何计算像素之间的平均值?
[我试图计算每种颜色的平均值(质心[“RED”] = sum_red_pixel_values /像素数等等)但它给出的结果错误]
如果它有任何帮助,我正在使用欧几里德距离函数。
答案 0 :(得分:2)
sum_red_pixel_values/number of pixels
将为您提供平均红色强度。如果你想要质心,你需要找到按像素强度加权的所有像素的平均x和y位置。
centroid.x = sum(pixel.red * pixel.x) / sum(pixel.red)
centroid.y = sum(pixel.red * pixel.y) / sum(pixel.red)
其中sum超过所有像素。
你可以分别为红绿和蓝色计算,然后平均,但如果你只想要平均值,那么平均效率会更高(如果你想要光度,可能是加权平均值)每个像素的红绿蓝通道首先,然后根据它计算质心。