Ce fil commence à s'endormir, c'est dommage !
Dans mon post du 15-02-2016 9h56 sur ce fil, j'ai démontré qu'il est impossible de déterminer f si on ne connait pas sa géométrie relative. En réfléchissant à la portée générale de cette démonstration je me suis dit qu'elle est valable pour toutes les méthodes basées sur des mesures de longueurs dans l'image. Mais qu'en est-il des mesures basées sur des angles dans l'image. Afin d'en avoir le coeur net j'ai repris ma démonstration.
J'utilise les mêmes notations et la formule que j'ai démontrée qui permet de passer de l'espace objet à l'espace image (formule que j'ai retrouvée dans le post de Rol007 du 17 février, pdf page 30).
Je prends 3 points quelconques dans l'espace objet : M1(x1, y1, z1), M2(x2, y2, z2) et M3(x3, y3, z3). En passant dans l'espace image j'obtiens : M'1(x1*f/z1, y1*f/z1), M'2(x2*f/z2, y2*f/z2), M'3(x3*f/z3, y3*f/z3), puis je calcule les composantes des vecteurs M'1M'2 et M'1M'3 : M'1M'2 = ( f*(x2/z2-x1/z1), f*(y2/z2-y1/z1) ) et M'1M'3 = ( f*(x3/z3-x1/z1), f*(y3/z3-y1/z1)).
Enfin je calcule l'angle (plus précisément son cosinus) entre les 2 vecteurs en utilisant le produit scalaire.
Je trouve au numérateur : f*f*[ (x2/z2-x1/z1)(x3/z3-x1/z1) + (y2/z2-y1/z1)(y3/z3-y1/z1) ]
et au dénominateur le produit des modules des 2 vecteurs : f*f* [ (x2/z2-x1/z1)^2 + (y2/z2-y1/z1)^2 ]^0,5 [ (x3/z3-x1/z1)^2 + (y3/z3-y1/z1)^2 ]^0,5
Je constate que la distance focale f disparait du calcul de l'angle (entre points quelconques) donc les mesures d'angles dans l'image ne permettent jamais de trouver directement f.
Je constate aussi que si je change l'échelle des z sans changer celle des x ni des y (il s'agit d'une affinité, pas d'une homothétie) l'angle est invariant dans l'image. Par exemple si sans changer x1, y1, x2, y2, x3, y3 je remplace z1 par 2*z1, z2 par 2*z2, z3 par 2*z3, le numérateur est divisé par 4 mais la dénominateur aussi donc l'angle est inchangé.
Conclusion
Les angles sont insensibles à l'échelle en z. On a vu dans mon post précédent que l'ambiguïté sur f lors de mesures de longueurs provenait justement de la méconnaissance de cette échelle.
Donc que l'on procède par des mesures de longueurs ou des mesures d'angles dans l'image, on ne peut trouver la distance focale que si on connait à priori la forme d'au moins un des objets de l'image. Par exemple on sait que l'un des objets est un cube. Si cette reconnaissance est impossible alors la mesure de f est impossible.
Exemple : photo d'une pièce où il y a une table dont le plateau est rectangulaire. Si on ne sait rien de plus la détermination de f est impossible. Si on sait qu'un des côtés du plateau (précisé sur la photo) est 2 fois plus long que l'autre, c'est possible. Ou alors sur la table il y a un verre dont le bord supérieur est probablement circulaire (son image est une ellipse), alors il est possible de mesurer f (possible ne veut pas dire facile, ni même certain, voir le cas de la sphère que j'ai cité dans mon post précédent).
Peut-être existe-t-il un méthode d'étude de l'image, qui ne soit pas exclusivement basée sur des mesures de longueurs et d'angles, qui permette de trouver f sans ambiguïté. Pas sûr !
Je songe à la profondeur de champ ?
Cordialement