Bonjour,
J'ai une série de coordonnées(latitudes et longitudes) stockés dans une base de données.
Le but: Faire la moyenne du nuage de points.
Lorsque j'ai qu'une seule zone de coordonnés proches, rien de difficile: Il suffit d’additionner les coordonnées et de diviser le résultat par leur nombre.
(43,1);(42,1.5);(41,1.2);(41.3,1.5);
Xm = (x1,x2,x3,x4)/4
Ym = (y1,y2,y3,y4)/4
Mais, parmi cette série il y a une brebis galeuse:
(43,1);(42,1.5);(141,1.2)*;(41,1.2);(41.3,1.5);
Pour la détecter, je pense fonctionner sur un système de pourcentage(X/Ym +- 20%).
Maintenant admettons qu'il y ait plusieurs zones éloignés avec des points proches et des solo:
(41.3,101.5);(442,10.5);(43,1);(142,10.5);(42,1.5);(42,101.5);(141,10.2);(41,1.2);(41.3,1.5);(41,101.2);(41.3,101.5);(141.3,10.5);(12,342.5);
Si je fais une moyenne globale, cela va donner un point moyen sans intérêts.
Je cherche à faire un algo qui puisse séparer intelligemment les groupes afin de pouvoir calculer plusieurs points moyens et séparer les points solo:
Résultat:
g1=(43,1);(42,1.5);(41,1.2);(41.3,1.5);
g2=(42,101.5);(41,101.2);(41.3,101.5);
g3=(142,10.5);(141,10.2);(141.3,10.5);
solo1=(442,10.5);
solo2=(12,342.5);
Si quelqu'un a une idée sur la meilleure façon de procéder?
Merci!
Partager