4 Corrections optiques logicielles - Quentin-LAURENT-git/Projet-ENSISA-CPB1 GitHub Wiki

A-Objectif

L’objectif de cette partie est de corriger les déformations géométriques introduites par le système d’acquisition vidéo afin d’obtenir une image exploitable et donc des mesures fiables. Dans notre cas, la caméra est fixée sur un trépied et filme la scène vers le bas, mais elle ne peut pas être parfaitement perpendiculaire au support. On a donc deux types d’erreurs géométriques à corriger : les déformations liées à l’optique de la caméra ainsi que la déformation de perspective due à l’inclinaison de l’appareil photo.

B-Correction des distorsions optiques

B.1-Calibration de la caméra

La correction des déformations optiques nécessite une phase préalable de calibration. Cette étape consiste à utiliser un motif de référence connu : ici un damier. À partir des points de ce damier , OpenCV calcule les paramètres interne de la caméra (matrice caméra )ainsi que les coefficients de distorsion. Cette étape n’a besoin d’être réalisée qu’une seule fois car on ne modifie pas la caméra, l’objectif, la focale et la mise au point.

B.2-Application de la correction sur la vidéo

Une fois les paramètres de calibration obtenus, ils peuvent être appliqués à chaque image de la vidéo afin de corriger les déformations de l’optique. Dans le cadre d’un traitement vidéo, il faut préparer à l’avance les tables de correspondance géométrique, puis d’utiliser ces tables pour corriger chaque frame de manière plus efficace. À l’issue de cette étape, les images obtenues sont géométriquement plus cohérentes. Cette correction reste toutefois insuffisante pour la mesure, car elle ne supprime pas encore l’effet de perspective lié à l’inclinaison de la caméra par rapport à la table.

C-Correction de la perspective

C.1-Origine du problème

Même après correction optique, la table n’est pas observée selon un axe parfaitement vertical. La caméra étant légèrement inclinée, le plan de la table apparaît déformé dans l’image. Ainsi les objet ne seront pas représenté fidèlement a la réalité. Cette déformation entraîne une variation de l’échelle dans l’image et empêche d’utiliser directement les pixels comme base de mesure.

Homographie

La correction de perspective repose sur le calcul d’une homographie, c’est-à-dire une transformation géométrique qui relie deux vues d’un même plan. Pour calculer cette transformation, il est nécessaire de connaître plusieurs points de référence. pour ce faire, nous allons sélectionner 4 point de notre damier qui forment un rectangle puis nous allons relever leurs coordonnées sur l'image. Ces points sont ensuite associés à leurs positions réelles dans un repère rectangulaire idéal. À partir de ces correspondances, on calcule une matrice de transformation qui permet de redresser le plan. Cette matrice est ensuite appliquée à chaque frame de la vidéo afin de produire une image corrigée de la perspective.

Documentation OpenCV

Suite du wiki :

  1. L'acquisition et le traitement de flux vidéo avec OpenCV en python.

  2. Les différentes mesures possibles grâce à notre montage.