Bonjour à tous,
je suis étudiant et dans le cadre d'un projet en MNT (modèle numérique de terrain), je dois sélectionner des points sur un échantillon disposé en grille.
En fait, je pars de points répartis en grille, donc les x et y sont connus. Ils ont aussi une valeur d'altitude. Seulement, cet échantillon est trop important. Je dois donc rédiger un algorithme permettant d'éliminer les points les moins significatifs.
Cet algorithme fonctionne sous le principe suivant:
- on supprime un point,
- on génère une triangulation de Delaunay sur tout l'échantillon, sans ce point.
- A partir de la triangulation, on interpole (linéairement) l'altitude de ce point.
- Puis on calcule la différence d'altitude entre ce point et le point interpolé.
- On le remet alors dans l'échantillon et on fait la même chose à tous les autres points de l'échantillon.
-Une fois effectué, on regarde quel point a la plus petite différence et on le supprime de l'échantillon.
Et le truc c'est qu'alors on prend cet échantillon modifié, et on recommence le processus (génération de triangulation de delaunay etc).
J'ai plusieurs questions:
- je pensais partir avec une matrice, mais comme je vais devoir supprimer des données, comment faire une matrice à trous?
- j'ai essayé la fonction de triangulation de delaunay dans Matlab mais je ne comprends pas la signification de la matrice "Tri".
En gros, comment choisir le triangle qu'il faut pour interpoler l'altitude du point.
Merci d'avance de vos réponses
Vincent
Partager