-
reconstruction 3d ?
Bonjour,
J'essaye de trouver comment faire une reconstruction 3d.
Sur un plateau tournant, j'ai un objet à modéliser.
A 25 cm du centre du plateau tournant, j'ai une webcam qui pointe sur le plateau
J'ai un troisième point qui se trouve sur une droite passant par la webcam ou l'angle formé par ce point, webcam, centre plateau tournant est à 90°
Ce troisième point est doté d'un laser ligne qui pointe vers le plateau
Comment utiliser opencv pour reconstruire l'objet 3d ou formule math
- Sans avoir besoin d'un fond
- en faisant un calibrage automatique
On connait les distances :
- webcam - centre du plateau
- webcam - laser (1/2 de webcam - centre du plateau)
- connait la position du plateau (angle de rotation)
- angle laser, webcam, centre plateau = 90°
Merci
-
J'ai un début de réponse.
La création de mon post date de ce matin mais il y a avait un souci pour le titre où il fallait 3 mots et comme je cherchais des infos et calcul sur papier pour trouver une solution je n'ai pas vu qu'il n'était aps en ligne ;-)
Depuis j'ai avancé mais il me reste des questions
Situation :
Nous avons un objet dans l'espace.
La ligne laser vient dessus donc nous avons une déformation de la ligne.
1/Sur l'image que nous récupérons de la webcam cela se caractérise par un décalage de colonne
Donc pour connaitre l'éloignement du centre de l'objet, on utilise la trigo
Donc comme on connait l'angle du laser.
Donc sin(angle laser) = décalage X / profondeur Z
donc profondeur Z = décalage X / sin(angle laser)
2/
Donc on va utiliser les coordonnées polaire et les coordonnées cartésiennes.
Pour rappel coordonnées polaire : angle et une distance (distance que l'on vient de calculer) et coord axe Z (Z qui reste inchangé dans notre plan)
Donc comme nous sommes sur un plateau tournant et que l'on peut connaitre l'angle depuis le départ ou faire 360/nb de pas possible pour un tour et on obtient l'angle pour une situation à un instant t
Conversion de polaire à cartésien :
x : profondeur Z * cos (angle plateau)
y : profondeur Z * sin (angle plateau)
z : z
3/ c'est coordonnées cartésiennes permettent d'avoir un nuage de point pour utiliser ensuite meshlab ou autre logiciel
4/Comment positionner la hauteur de la webcam et laser ? et cela peut-il jouer un role dans les calculs
5/peut on utiliser en même temps le laser et la reconstruction par le biais de surf... (je ne pense pas car la ligne rouge change à chaque fois).
J'avais pensé mettre un disque sous l'objet avec des signes distinctifs sur le bord afin de faciliter l'appariement
Merci de vos remarques , réponses et orientations