he hecho Kmeans agrupamiento y descubierto los centros de clúster utilizando API OpenCV C++.distancia de Mahalanobis en Kmeans Clustering usando OpenCV
kmeans(data_points, clusterCount, labels, TermCriteria(CV_TERMCRIT_EPS+CV_TERMCRIT_ITER, 10, 1.0), 3, KMEANS_PP_CENTERS, cluster_centers);
entonces estoy usando distancia euclídea a encontrar grupo más cercano para un nuevo punto de datos contra todos los centros de los conglomerados .
int distance = find_EucledianDist(new_datapoint, cluster_centers);
¿Cómo puedo usar Mahalanobis Distancia en lugar de Distancia euclidiana? Sé que tengo que calcular la Matriz de Covarianza e Invertirla y encontrar la Distancia Mahalanobis.
Sin embargo, no sé cómo hago eso y ¿en qué PEDIDO (buscar matriz de covar, matriz invertida de qué datos/matriz)?
hace exactamente lo que quiere, y le da la función correspondiente de cada paso :). – jlengrand
Y simplemente use la función opencv Mahalanobis (edité su respuesta) –
mejor aún ^^ – jlengrand