RdF: codage d'un contour

<< Descripteurs de Fourier | Liste des exercices | Comparaison des deux approches >>

Réduction d'une chaîne de contour

la fonction rdfAlgorithmeCorde contenue dans le fichier rdfContours.R permet de réduire le nombre de points décrivant un contour en lui appliquant l'algorithme de la corde.

Cet algorithme permet d'éliminer des points d'un contour en l'approchant par une série de segments de droite.

Il s'agit de rendre la fonction rdfAlgorithmeCorde opérationnelle en modifiant la fonction rdfDistances qui permet de calculer les distances entre chaque point d'un contour et la corde, c'est-à-dire la droite qui relie les deux points extrêmes de ce contour.

La formule de calcul de la distance entre un point est une droite est expliquée dans la page wikipedia suivante. On peut également transformer la formule indiquée dans cette méthode pour traiter directement des points représentés par des nombres complexes.

Compléter le code et vérifier qu'il fonctionne correctement en réduisant le contour décrivant un cercle (fichier cercle-80.txt) en utilisant une distance maximale d'abord de 0.5 pixel, puis de 1 pixel. Afficher les trois contours (initial, avec dmax=0.5 et avec dmax=1) avec trois couleurs différentes dans une même figure.