Calibration de caméra et reconstruction 3D
Noah CUNEO
Tuteur : Stéphane BREUILS
Introduction
Nous allons dans ce compte rendu, voir et comprendre ce qu’est la vision par ordinateur.
Plus particulièrement comment à partir d’une caméra nous pouvons traiter l’information d’une image.
Dans le but d’obtenir divers résultats tel que la création d’un panorama ou bien la reconstruction 3D d’un objet à partir de photos.
Pour cela, nous allons nous aider de la bibliothèque OpenCV.
Qui est une bibliothèque conçue spécifiquement pour la vision par ordinateur et le traitement d’images.
Présentation d'OpenCV
OpenCV est donc, comme dit dans l’introduction, une librairie Python axée sur la vision par ordinateur.
En effet, elle propose une grande variété de fonctions utiles au traitement d’images. Comme par exemple :
sift = cv.SIFT_create() kp = sift.detect(gray,None)
Qui permet de détecter des points clés sur une image.
On également par exemple :
M, mask = cv.findHomography(src_pts, dst_pts, cv.RANSAC,5.0)
Qui permet d’estimer une matrice d’homographie.
Mais nous verrons l’utilité de ces fonctions plus en détails ultérieurement.
OpenCV permet également, à l’instar de Tkinter ou Pygame, de générer une interface graphique.
Elle est cependant très limitée puisqu’elle à été créée seulement à l’intention d’afficher des images.
Voici un exemple de comment on affiche une image sur OpenCV :
image = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE) cv2.imshow('Image', image) cv2.waitKey(0) cv2.destroyAllWindows()
Ce code va par exemple, afficher l’image « image.jpg » en nuance de gris de cette forme :