Sur certains sites d’étude, il peut arriver que la zone couverte par les caméras ne soit pas stable au cours du temps. Des rafales de vent peuvent en effet causer des mouvements haute fréquence. Par ailleurs, une caméra peut bouger avec une fréquence journalière sous l’effet de la dilatation thermique de la structure sur laquelle elle est fixée (voir figure ci-dessous).

Position de ligne d’horizon, où un signal journalier est visible.

Afin de rendre possible une exploitation scientifique des images et vidéos 4K acquises par nos caméras (suivi de trait de côte, topographie, vagues, bathymétrie), nous utilisons et développons des solutions de stabilisation.

Deux cas de figure se distinguent. Le premier, idéal, correspond à la présence d’éléments fixes (fenêtres, arêtes de bâtiments, routes, etc …) dans l’image, qui servent de points de repère pour stabiliser en temps réel une image par rapport à une autre. Une version améliorée de la méthode de Marquadt-Levenberg est utilisée pour optimiser la stabilisation.



Les résultats de stabilisation sont très bons. Voici un extrait de résultats de stabilisation obtenus dans le cadre de notre projet de suivi de trait de côte pour la ville de Cannes:

Dans une configuration où aucun élément présent dans le champ de vision de la caméra n’est fixe, les choses deviennent plus compliquées ! Nous nous sommes retrouvés dans cette situation avec nos caméras à Port-la-Nouvelle, où en plus les conditions de vent peuvent vite devenir extrêmes et donc perturber fortement la stabilité des caméras. Toutefois, le mouvement observé sur les images issues des caméras de ce site s’effectuant selon une translation verticale et une rotation autour de l’axe de caméra, un élément de l’image nous a permis de nous sortir de cette situation délicate: la ligne d’horizon de la mer.

Un algorithme de détection automatique de ligne d’horizon a alors été développé, basé sur l’analyse du gradient vertical de niveau de gris (voir figure ci-dessous).

A partir de cette détection de ligne d’horizon, une correction de rotation et de translation verticale est appliquée à chaque image, pour se recaler sur une image de référence. On obtient ainsi une série d’images stabilisées.

Voici en exemple une animation présentant parallèlement une série d’images brutes et stabilisées en juin dernier:

On peut imaginer que la détection de ligne d’horizon va pouvoir nous aider dans d’autres applications. Elle pourrait servir par exemple, dans le cas de caméras d’opportunités pour lesquelles nous ne pouvons accéder aux paramètres de calibration extrinsèques, à trouver des angles de pose de caméra (tangage, roulis).