Essayer de créer une recherche KNN à l'aide d'un arbre KD. Je peux former le KD-tree bien (ou du moins, je crois que je peux!). Mon problème est que je cherche à trouver les 2 voisins les plus proches de chaque point dans une liste de points. Donc, y at-il une méthode pour trouver les K voisins les plus proches d'un point en utilisant un arbre KD même si le point est réellement dans l'arbre, ou ai-je besoin de construire un arbre KD séparé pour chaque point, en laissant de côté point que je souhaite rechercher?Est-il possible de trouver le KNN pour un nœud qui est * IN * l'arbre KD?
Mon langage d'implémentation est C++, mais je suis plus à la recherche d'un algorithme ou d'une aide générale, merci!
Merci, Stephen
Comme point de départ, http://en.wikipedia.org/wiki/Kd-tree#Nearest_neighbor_search décrit comment faire un algorithme KNN. Il semble que ce soit essentiellement une répétition de l'alg NN, tout en gardant la trace des hits précédents. Je sais que c'est une aide très générale, mais j'espère que cela vous oriente dans une direction utile. –