Bonjour
Je voudrais savoir s'il est possible de trouver l'équation d'un cercle (en fait savoir les coordonnées de son centre et son rayon) à partir d'un nuage de points (le cercle qui ajuste le mieux le nuage de points)
Merci
-----
Bonjour
Je voudrais savoir s'il est possible de trouver l'équation d'un cercle (en fait savoir les coordonnées de son centre et son rayon) à partir d'un nuage de points (le cercle qui ajuste le mieux le nuage de points)
Merci
Chaque point doit vérifier l'equation du cercle, tu options donc un system. Ensuite il faut résoudre le system.
C'est ça le problème, comment résoudre un système de la forme
(x-a)²+(y-b)²=r²
où (x,y) sont les coordonnées des points (les données)
(a,b) le centre du cercle (les inconnues)
r le rayon du cercle (les inconnues)
Tu remplace x et y par les coordonnées des points que tu as.
Tu obtiens donc un system avec autant d'équation que de points.
Et avec les methodes de résolution de systemes tu devrais pouvoir t'en sortire.
Soit ton équation du cercle f(x,y,a,b,r)=0, soit tes points (xi,yi). Je te propose de trouver la solution au sens des moindres carrés:
L'erreur pour des a,b et r donnés et un couple de point (xi,yi) donné est :
[code:1:8634d692bd]€i = f(xi,yi,a,b,r).[/code:1:8634d692bd]
Fourre les points et l'équation dans une feuille de calcul et calcule
[code:1:8634d692bd]E = Somme( €i^2 ) (la somme porte sur tout ton nuage de points).[/code:1:8634d692bd]
Demande à la feuille de minimiser E en faisant varier les paramètres a,b,r.
Bàt,
Ne soldez pas grand mère, elle brosse encore.
désolé de revenir sur ce sujet mais je n'arrive pas à résoudre mon problème.
Si je résous un système de 3 équations avec 3 inconnues (j'ai 3 points) je ne trouve pas le meilleur cercle d'ajustement.
Et je ne trouve pas une méthode des moindres carrés pour le cercle.
Monoliv me dit de mettre les points et l'équation dans la feuile de calcul et de demander à la feuille de minimiser E. Mais la feuille de calcul c'est moi.
Je cherche le système à résoudre pour minimiser l'erreur.
Bonjour,
si la solution de monnoliv ne te convient pas, cela va être dur de t'aider.
Je ne sais pas si j'aurai une solution à ton problème mais je pense que tu devrait préciser ta demande:
Combien as-tu de points?
Pourquoi penses-tu qu'ils sont sur un cercle?
Quelles sont les sources d'erreurs qui les éloignent de ton cercle idéal?
Tu cherche à "minimiser l'erreur". Mais comment définis-tu l'erreur? Monnoliv en donnait une définition possible.
Qu'appelles-tu travailler "à la main"? Si tu as lu le sujet "centre du cercle inscrit" (lire circonscrit), tu as vu que même pour trouver le centre du cercle circonscrit à un triangle, les calculs sont lourds et c'est la machine qui les fait à notre place.
J'espère qu'en donnant plus de précisions tu trouveras quelqu'un qui te proposera une méthode réalisable.
A bientôt.
J'ai un cercle interpolé (il est défini par qques points). Ce cercle peut être traversé par une droite par exemple. Je cherche à retrouver mon cercle.
Cercle + droite = un nuage de points
Je prends 3 points (dont je suis sur qu'ils appartiennent au cercle)et je détermine l'équation du cercle passant par ces 3 points (cercle circonscrit donc son centre est l'intersection des médiatrices des segments du trianlge formé par les 3points). Jusque là ça va.
Etape suivante, je rajoute un point. Je ne suis pas sur qu'il appartiennne au cercle (il peut appartenir à la droite) donc pour vérifier s'il appartient au cercle, je cherche l'équation du cercle passant au plus près de ces 4 points. Si l'erreur (somme des carrés des distances des points au cercle) n'est pas trop grande (on fixe un seuil), on considère que les 4 points sont sur un cercle.(Sinon c'est qu'il appartient à la droite). On ajoute un 5ième point, on calcule l'équation du cercle passant au plus près des 5 points...
Jusqu'à ce que le point qu'on rajoute entraine une trop gde erreur donc il ne fait pas parti du cercle.
Voilà le problème, je ne sais pas si c'est plus clair![]()
Bien,
Je n'ai toujours pas la solution à ton problème mais quelques pistes de réflexion.
Pour une notation: le centre C a pour coordonnées (a,b)
les points M<sub>i</sub> ont pour coordonnées (x<sub>i</sub>, y<sub>i</sub>)
la distance CM<sub>i</sub> = sqrt((a-x<sub>i</sub>)² + (b-y<sub>i</sub>)²) = d<sub>i</sub>
Pour un centre C donné, la somme des carrés des distances des points M<sub>i</sub> au cercle est minimale quand le rayon est la moyenne des d<sub>i</sub>
Cette erreur est alors de Somme(d<sub>i</sub>²) - (1/n)(somme des d<sub>i</sub>)² = E(a,b)
Si tu ne changes pas le centre du cercle, ton problème est résolu....
Mais, en réalité il existe un centre qui va rendre minimale la quantité Somme(d<sub>i</sub>²) - (1/n)(somme des d<sub>i</sub>)² = E(a,b).
Il s'agit de trouver le minimum d'une fonction à deux variables E(a,b). Je ne fais pas de maths appliquées, donc je ne sais pas s'il existe un outil simple répondant à la question de manière répétitive (puisque tu augmentes successivement le nombre de points M<sub>i</sub>)
Mais j'ai une objection à formuler à cette manière de faire: supposons que tes points 1, 2, 3, 4 soient sur le cercle , que le 5 ne le soit pas et que le 6 le soit
Tu calcules l'erreur sur 1,2,3,4. L'erreur est largement sous le seuil.
tu calcules l'erreur sur 1,2,3,4,5. L'erreur s'est dangereusement rapprochée du seuil mais reste en dessous du seuil.
Tu calcules l'erreur sur 1,2,3,4,5,6. l'erreur est passée au dessus du seuil , tu élimines 6 alors qu'il aurait fallu éliminer 5.
Une suggestion qui ne correspond peut-être pas à ta modélisation.
Choisis un centre fixe, et détermine seulement le rayon pour que l'erreur soit minimale.
Chaque fois que tu ajoutes un point, essaye TOUS les points restant pour choisir celui qui rendra l'erreur minimale. Ainsi quand tu atteindras le seuil tu auras la certitude que tous les points qui restent ne sont pas sur le cercle.
J'espère que quelqu'un d'autre apportera une solution définitive à ton problème
Merci pour ta réponse.
Par contre je ne suis pas d'accord quand tu dis que l'erreur augmente et dépasse un seuil quand on rajoute le 5 et 6ième point.
A chaque fois qu'on ajoute un point, on recalcule un cercle qui aura un centre différent un rayon différent et donc une erreur différente
Non, je pense que, plus tu ajoutes des points, plus ton erreur augmente.
Ton erreur est la somme des carrés des distances de tes points à un cercle.
Si tu a n+1 points et si tu considères la somme des carrés des distances de tes n premiers points au cercle, tu sais que cette valeur est supérieure ou égale à l'erreur précedemment calculée sur les n points (tu a éventuellement changé de centre et de rayon donc tu n'as peut-être plus l'erreur minimale du coup d'avant), et tu ajoutes en plus le carré de la n+1ème distance. Ton erreur augmente donc à chaque étape.
Ca ne serait pas plus simple en voyant que géométriquement le centre est à l'intersection des 2 droites que sont les médiatrices passant chacune par 2 pts différents, de calculer leurs équations de droite, puis de trouver leur pt d'intersection qui est le centre. Avec le centre et un seul des 3 pts on a le rayon. Donc avec le centre et le rayon on a son équation:
https://cral-perso.univ-lyon1.fr/lab...ercle_3pts.pdf
dls, j'avais pas lu le mot "nuage" .
S'il était possible de supprimer mon message je le ferais, mais c'est pas le cas.
pm42, mais en tant que vérité scientifique ça reste d'actualité, la preuve je me posais la question.
PAr contre je regrette d'avoir lu un peu trop vite.
Déterminer le rayon et les coordonnées du centre d'un cercle passant "au plus près" d'un nuage de points est un problème de "régression circulaire". Encore faut-il définir mathématiquement la notion de "au plus près" . Ceci est discuté dans le papier suivant, ainsi que la méthode de calcul (très simple) donnée pages 11-13.
https://fr.scribd.com/doc/14819165/R...aire-spherique
![]()