Outils pour utilisateurs

Outils du site


vision_transfo_rigide_2d

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
vision_transfo_rigide_2d [2021/03/31 01:01]
bvandepo supprimée
— (Version actuelle)
Ligne 1: Ligne 1:
-=====Estimation de transformation rigide 2D===== 
-Cette tache consiste à estimer 3 paramètres (2 en translation + 1 en rotation) pour une transformation rigide 2D entre 2 repères. 
- 
- 
-Télécharger et compléter le programme python: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/rigid_transform_2D_a_completer.py 
- 
-<ifauth @prof> 
-Solution: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/rigid_transform_2D.py 
-</ifauth> 
- 
-Vous devez compléter la fonction **def computeRigidTransform(P2Dimage,P2Drobot):** pour calculer la valeur des paramètres tx,ty et theta 
- 
-Exemple de fichier contenant les correspondances, à mettre dans le même dossier que le programme python pour la fonction main: 
-<file txt rigidtransform.in> 
-83,110,-138.5,520,9,103,-213,514,12,0,-213,410 
-</file> 
- 
- 
-=====Génération d'une image synthétique du bouchon===== 
-Cette tache consiste à synthétiser deux images du bouchon: une image de couleur et une image de masque. 
- 
- 
-Télécharger et compléter le programme python: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/synthese_bouchon_a_completer.py 
- 
- 
-<ifauth @prof> 
-Solution: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/synthese_bouchon.py 
-</ifauth> 
- 
- 
-Pour cela compléter la fonction **create_pattern_and_mask(width, height,d1,d2, bgr_color_center=(0, 0, 0),bgr_color_contour=(0, 0, 0)):** du programme  
- 
- 
-  * width représente la largeur de l'image à générer 
-  * height représente la hauteur de l'image à générer 
-  * d1 correspond au diamètre du contour du bouchon  à colorier en **bgr_color_center**  dans l'image **image** 
-  * d2 correspond au diamètre de la région centrale du bouchon à colorier en **bgr_color_contour**  dans l'image **image** 
- 
-L'image **mask** doit contenir un disque de diamètre d1 blanc, entouré de noir. 
- 
- 
-Les valeurs de couleurs sont indiquées dans un fichier  à mettre dans le même dossier que le programme python: 
-<file txt listecolors.out> 
-  160.0000,  119.0000,  109.0000 
-   58.0000,   58.0000,  249.0000 
-</file> 
- 
- 
-exemple d'images à générer pour les paramètres par défaut du programme: 
- 
-image: {{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/template_bouchon_mm.png}} 
- 
- 
-mask:  {{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/template_mask_bouchon_mm.png}} 
- 
-=====Détection de la position du bouchon dans l'image rectifiée===== 
- 
-Cette tache consiste à rechercher la position dans l'image la plus similaire à l'image de bouchon composée de: 
- 
-  * l'image de couleur: {{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/template_bouchon_mm.png}} 
-  * un masque indiquant le fond et la forme: {{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/template_mask_bouchon_mm.png}} 
- 
- 
-différentes images à traiter: 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon1_rect.jpg}} 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon2_rect.jpg}} 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon3_rect.jpg}} 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon4_rect.jpg}} 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon5_rect.jpg}} 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon6_rect.jpg}} 
- 
- 
-Télécharger et compléter le programme python: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/correlation_a_completer.py 
- 
-<ifauth @prof> 
-Solution: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/correlation.py 
-</ifauth> 
- 
-Vous devez compléter la fonction **def processImage(image): ** pour rechercher la meilleure correlation entre l'image de référence du bouchon et l'image fournie dans **image** en utilisant la fonction **matchTemplate** d'openCV. La fonction **def processImage(image): ** doit retourner l'image avec le bouchon détecté en surimpression, une variable indiquant si le bouchon est détecté dans l'image, et les position x et y du centre du bouchon détécté dans l'image. 
- 
-L'image suivante montre un résultat de détection du bouchon 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon1_rect_trouve.jpg}} 
- 
-=====Rectification de l'image grâce à une homographie===== 
- 
-Cette tache consiste à générer une image rectifiée à partir de l'image fournie par la caméra. Cette image rectifiée doit avoir une résolution de 1 pixel par millimètre et occuper une surface de 169x169 millimètres. Les quatre coins de cette image doivent correspondre aux quatre coins de la mire posée sur le plan de travail du robot. 
- 
- 
-Télécharger et compléter le programme python: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/homographie_a_completer.py 
- 
-<ifauth @prof> 
-Solution: https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/homographie.py 
-</ifauth> 
- 
-Vous devez compléter la fonction **processImage(image,srcPoints):** pour calculer la transformation homographique à partir des coordonnées de points 2D mis en correspondance (avec les 4 coins de l'image à générer). La fonction doit également génerer l'image **dst** rectifiée 
- 
-Exemple de fichier contenant les correspondances, à mettre dans le même dossier que le programme python pour la fonction main: 
-<file txt listepoints.out> 
-  991.2868,  565.0504 
-  655.7476,  490.5274 
-  592.5595,  833.6786 
-  948.9872,  903.2888 
-</file> 
- 
- 
-exemple d'image de la mire en entrée du programme: 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imamire1.jpg}} 
- 
-image avec les contours en surimpression: 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imamire1_contour.jpg}} 
- 
- 
-exemple d'image de la mire en sortie du programme: 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imamire1_rect.jpg}} 
- 
- 
- 
-En appliquant le même traitement à des images de bouchons sur la zone de la mire: 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon1.jpg}} 
- 
- 
-est rectifiée en: 
- 
- 
-{{https://bvdp.inetdoc.net/files/iut/tp_lpro_vision/imabouchon1_rect.jpg}} 
- 
- 
- 
-