Definition at line 149 of file lwkmeans.c.
150{
151 memset(centers, 0,
sizeof(
POINT4D) * k);
152
153 for (uint32_t i = 0; i < n; i++)
154 {
155 uint32_t cluster = clusters[i];
156 centers[cluster].
x += objs[i].
x * objs[i].
m;
157 centers[cluster].
y += objs[i].
y * objs[i].
m;
158 centers[cluster].
z += objs[i].
z * objs[i].
m;
159 centers[cluster].
m += objs[i].
m;
160 }
161
162 for (uint32_t i = 0; i < k; i++)
163 {
164 if (centers[i].m)
165 {
166 centers[i].
x /= centers[i].
m;
167 centers[i].
y /= centers[i].
m;
168 centers[i].
z /= centers[i].
m;
169 }
170 }
171}
References POINT4D::m, POINT4D::x, POINT4D::y, and POINT4D::z.
Referenced by kmeans().