Bonjour à tous,
Tout d'abord, je ne sais pas si le titre de mon post est exact, donc voilà mon problème plus en détail :
Je souhaite calibrer une caméra pour pouvoir obtenir à partir d'un pixel P(x, y) dans l'image la position du point correspondant dans l'espace P'(x, y, z).
La coordonnée z est fixée (je cherche le point correspondant au niveau du sol).
Je ne peux pas appliqué les méthodes de calibration habituelles (caméra grand angle, correction de distorsion inconnue appliquée à l'image).
J'ai donc tracé une grande grille au sol, et construit une table de correspondance image -> repère caméra à partir de ces points. (j'ai donc une liste de points, avec pour chaque point (xmm, ymm, zmm) (coordonnées dans le repère caméra) et (xpx, ypx) coordonnées correspondantes dans l'image.
Je cherche maintenant à déterminer les coordonnées (xmm, ymm, zmm (fixé)) d'un pixel P(x, y) n'appartenant pas à ma table.
J'arrive facilement à trouver les 4 points de la table les plus proches entourant ce pixel (cf l'image jointe, points P1 à P4, dont on connait les coordonnées dans l'image et dans le repère caméra), et je cherche à calculer P(xmm, ymm) en faisant une interpolation.
Cependant, je n'arrive pas à faire cette interpolation ...
Quelqu'un aurait il une idée sur la manière de procéder?
(Pour info, j'ai tenter la solution suivante : calcul de 4 distances d entre P et P1, P2, P3, P4 (en pixel) puis xmm = somme(1/di * Pi.xmm)/somme (1/di) (ce qui équivaut à calculer une sorte de barycentre) mais cette formule ne donnent pas de bons résultats. Il suffit de tester avec un point situé sur le segment [P3 P4] pour s'en rendre compte)
Merci d'avance pour votre aide
Partager