bureau d’étude : image

16
Lalaoui Jamal - Renaudin Maxime - Stein Jonathan ISNC Bureau d’étude : Image Segmentation Spatio-temporelle

Upload: others

Post on 17-Jun-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Bureau d’étude : Image

Lalaoui Jamal - Renaudin Maxime - Stein Jonathan

ISNC

Bureau d’étude : Image Segmentation Spatio-temporelle

Page 2: Bureau d’étude : Image

INTRODUCTION

Que ce soit pour une utilisation militaire ou pour de la vidéo surveillance, la détection de

mouvement est de plus en plus utilisée. Pour cela, il existe de nombreuses méthodes,

notamment la segmentation spatio-temporelle. A travers ce bureau d’études, nous allons

confronter deux méthodes : la première méthode d’observation d’objets, de piétons en

mouvement est la méthode de différence simple. Nous verrons par la suite la méthode de

détection de mouvement par flot optique.

DETECTION PAR DIFFERENCE

Cette première méthode s’appuie sur les caractéristiques d’une image de référence. Celle-ci ne

doit contenir aucun objet en mouvement. En effet, nous utilisons cette image de référence afin

de repérer les éventuelles différences avec une autre image et enfin détecter les objets qui sont

apparus et donc les objets en mouvement. Cette différence simple se fait pixel par pixel.

L’image de référence est représentée sur la figure 1 :

Figure 1 : Image de référence

Page 3: Bureau d’étude : Image

Le but est alors de détecter du mouvement grâce aux images suivantes :

Figure 2 : Première image

Figure 3 : Deuxième image

Figure 4 : Troisième image

Page 4: Bureau d’étude : Image

Pour cela, il est essentiel de conserver la même dynamique lors de la soustraction des images

avec l’image de référence. En effet, en faisant la différence de deux images ayant pour

dynamique l’intervalle [0 : 255], la dynamique de l’image de différence sera [-255 : 255].

Afin d’afficher cette image de référence, il faut faire un changement d’échelle afin de

retourner dans l’intervalle classique [0 : 255]. Un premier choix serait de place la borne

inférieur -255 à 0 et de conserver la borne supérieur. Pour cela, l’opération de changement de

dynamique serait :

𝑥𝑛𝑜𝑢𝑣𝑒𝑙𝑙𝑒 𝑑𝑦𝑛𝑎𝑚𝑖𝑞𝑢𝑒 =𝑥𝑎𝑛𝑐𝑖𝑒𝑛𝑛𝑒 𝑑𝑦𝑛𝑎𝑚𝑖 𝑞𝑢𝑒 +255

2 (1)

Cependant, le contraste n’est pas optimal pour les images de différences utilisant ce

changement de dynamique là. En effet, la borne inférieure n’est jamais atteinte. Le

changement de dynamique optimal est définie en observant la valeur minimum atteinte lors de

la différence. En notant 𝑥𝑚𝑖𝑛 cette valeur, nous trouvons comme formule de changement de

dynamique :

𝑥𝑛𝑜𝑢𝑣𝑒𝑙𝑙𝑒 𝑑𝑦𝑛𝑎𝑚𝑖𝑞𝑢𝑒 = 𝑥𝑎𝑛𝑐𝑖𝑒𝑛𝑛𝑒 𝑑𝑦𝑛𝑎𝑚𝑖𝑞𝑢𝑒 + 𝑥𝑚𝑖𝑛 ∗255

255+ 𝑥𝑚𝑖𝑛 (2)

La nouvelle dynamique correspondant à la différence des deux images est alors [0 : 255]. Il

est à noter qu’une différence nulle, c'est-à-dire deux pixels soustraits ayant la même intensité,

est affichée avec une intensité de 255∗ 𝑥𝑚𝑖𝑛

255+ 𝑥𝑚𝑖𝑛 .

Les figures suivantes permettent d’observer les images de différence et permettent ainsi une

première analyse quant à la détection de mouvements :

Figure 5 : Différence Image 1 – Image de référence

Page 5: Bureau d’étude : Image

Figure 6 : Différence Image 2 – Image de référence

Figure 7 : Différence Image 3 – Image de référence

Ces figures font clairement apparaître les objets en mouvement : personnes montant les

escaliers en bas à droite des figures. Cependant, en observant attentivement, ces figures font

également apparaître quelques défauts : en effet, l’image n’est pas lisse et du mouvement est

détecté la où il ne devrait pas y ne avoir, comme sur la figure 7 en haut à droite. Ces défaut

peuvent avoir plusieurs explications : différence de luminosité entre les deux images, facteur

extérieur ayant fait bouger sensiblement la caméra de surveillance comme par exemple du

vent…

Pour cela, il peut être intéressant d’améliorer sensiblement cette technique de différence

simple, en faisant non plus la différence pixel à pixel mais bloc par bloc. Pour cela, la

Page 6: Bureau d’étude : Image

moyenne des blocs de 16*16 pixels de l’image à observer est soustraite à la moyenne des

blocs de même taille de l’image de référence. Les résultats sont visibles grâce aux figures

suivantes :

Figure 8 : Différence par bloc Image 1 – Image référence

Figure 9 : Différence par bloc Image 2 – Image référence

Figure 10 : Différence par bloc Image 3 – Image référence

Page 7: Bureau d’étude : Image

Les images sont maintenant beaucoup plus lisses et ne font donc presque plus apparaître de

défauts. Les objets en mouvement sont plus facilement détectables. En effet, on observe

aisément que la partie en bas a droite des images fait apparaître des valeurs de gris différentes,

ce qui est la conséquence d’une différence assez forte des valeurs des pixels de l’image

d’observation et de l’image de référence. Cette différence est alors interprétée comme un

objet en mouvement.

Les deux variantes de cette méthode par différence présentent toutes deux des avantages. En

effet, la méthode par blocs diminue le risque de fausse détection et assure ainsi une

probabilité de détection de mouvement assez élevée. Cependant, contrairement à la méthode

utilisant la différence pixel par pixel, la résolution est assez faible et ne permet pas une bonne

analyse de l’objet.

En fonction du besoin, c’est à dire que l’on veille identifier clairement le type d’objet en

mouvement ou alors qu’on veille juste identifier la trajectoire de l’objet sans avoir besoin de

définir le type de celui-ci, il faudra alors utiliser l’une ou l’autre variante.

CALCUL DU FLOT OPTIQUE

La détection de mouvement peut être affinée en estimant la direction et la vitesse du

mouvement. Pour cela, la méthode de détection par calcul du flot optique est intéressante car

elle permet d’estimer la direction ainsi que l’amplitude du mouvement.

Cette méthode est également intéressante dans le fait qu’elle ne nécessite pas d’image de

référence. En effet, le mouvement est détecté en utilisant les propriétés de l’image précédente.

Les deux images à analyser sont visibles grâce aux figures suivantes :

Figure 11 : Image 1

Page 8: Bureau d’étude : Image

Figure 12 : Image 2

Analysons tout d’abord l’effet d’une simple différence antre ces deux images :

Figure 13 : Différence simple entre les deux images

La figure 13 représente la valeur absolue de la différence pixel à pixel des deux images.

Prendre la valeur absolue de la différence est un traitement peu efficace. L’image 1 est une

image présentant déjà des objets en mouvement. Par ailleurs, un pixel de valeur négative − 𝑥

est affiché de la même couleur qu’un pixel de valeur 𝑥 . Il est difficile d’observer le

mouvement car même les voitures stationnées font apparaître des différences. Cependant, on

note une différence beaucoup plus accentuée pour le taxi central, ce qui peut nous donner

l’intuition que celui-ci bouge réellement.

Page 9: Bureau d’étude : Image

La méthode du flot optique, expliqué dans le sujet de ce bureau d’étude, résulte de la

minimisation par rapport à 𝑑𝑥 et 𝑑𝑦 du critère suivant :

𝐽 = (𝑑𝑥𝐼𝑥 + 𝑑𝑦 𝐼𝑦 + 𝐼𝑡)2𝑖 (3)

Ici 𝐼𝑥 , 𝐼𝑦 et 𝐼𝑡 représentent respectivement la dérivée partielle par rapport à 𝑥, la dérivée

partielle par rapport à 𝑦 de l’image 1, et la différence temporelle des deux images c'est-à-dire

la différence pixel à pixel de l’image 2 par rapport à l’image 1.

Les figures suivantes sont le résultat de l’application des filtres de Sobel dans le but

d’observer les dérivées partielles selon x et selon y de l’image 1.

Figure 14 : Dérivée partielle selon x

Figure 15 : Dérivée partielle selon y

Page 10: Bureau d’étude : Image

Le vecteur de déplacement [𝑑𝑥 , 𝑑𝑦 ] est obtenue par minimisation du critère J (cf équation 3).

Pour cela, il faut résoudre le système suivant :

𝜕𝐽

𝜕𝑑𝑥= 0 𝑒𝑡

𝜕𝐽

𝜕𝑑𝑦= 0 (4)

Ceci implique :

𝑑𝑥 . 𝐼𝑥2 + 𝑑𝑦 . 𝐼𝑥𝐼𝑦 = − 𝐼𝑥𝐼𝑡 (5)

𝑑𝑦 . 𝐼𝑦2 + 𝑑𝑥 . 𝐼𝑥𝐼𝑦 = − 𝐼𝑦𝐼𝑡 (6)

Soit :

𝑑𝑥 = 𝐼𝑥 𝐼𝑦 𝐼𝑦 𝐼𝑡 − 𝐼𝑦

2 ( 𝐼𝑥 𝐼𝑡)

𝐼𝑥2 𝐼𝑦

2 −( 𝐼𝑥 𝐼𝑦 )2 (7)

𝑑𝑦 =− 𝐼𝑥 𝐼𝑡−𝑑𝑥 . 𝐼𝑥

2

𝐼𝑥 𝐼𝑦 (8)

Le flot optique d’un pixel est estimée grâce à un voisinage bidimensionnelle centré sur celui-

ci, paramétré par L , caractérisant la taille de la fenêtre d’étude. Grâce à la fonction ginput de

Matlab, nous pouvons demander à l’utilisateur de sélectionner un pixel et ainsi observer le

mouvement de celui-ci après calcul du flot optique définie par 𝑑𝑥 et 𝑑𝑦 (cf. équation 7 et 8).

Figure 16 : Demande de sélection d’un pixel

Page 11: Bureau d’étude : Image

Figure 17 : Résultat : Calcul du mouvement du pixel séléctionné

Afin de mieux observer le mouvement, les vecteurs de déplacement sont multipliés par 20. Ce

processus peut être répété autant de fois que voulu et ainsi permet une estimation du

mouvement de n’importe que pixel de l’image. Afin de mieux analyser l’influence des

différents paramètres, il est intéressant de calculer le flot optique sur toute l’image en faisant

varier la taille de la fenêtre permettant l’estimation du mouvement du pixel central de la

fenêtre.

L’effet de la taille de la fenêtre est visible grâce aux figures suivantes :

Figure 18 : Flot optique L=2

Page 12: Bureau d’étude : Image

Figure 19 : Flot optique L=8

Figure 20 : Flot optique L=15

Figure 21 : Flot optique L=40

Page 13: Bureau d’étude : Image

Par définition, la taille de la fenêtre permettant l’estimation du mouvement du pixel central

fait intervenir plus ou moins de pixel pour le calcul du mouvement. En fonction de la situation

du pixel et de la valeur du paramètre L, l’estimation sera plus ou moins précise. En effet, en

observant les figures suivantes, les valeurs extrêmes de L ne sont pas satisfaisantes. Pour une

fenêtre d’observation de longueur 2 (cf. figure 18), le mouvement des pixels n’est pas

cohérent : pour un même objet par exemple la voiture noire en bas à gauche de l’image, deux

pixels voisins appartenant à cette voiture ne font pas apparaître le même vecteur de

mouvement, ce qui prouve une incohérence. En effet, la taille de la fenêtre est trop faible pour

éviter les changements de luminosité ou d’autres paramètres pouvant fausser l’estimation. De

même pour une valeur trop grande, par exemple L=40 (cf. figure 21), le mouvement des

objets est incohérent. La fenêtre est trop grande par rapport à la taille de l’image et fait

intervenir beaucoup trop d’objet pour le calcul du mouvement d’un seul pixel. Par exemple,

pour l’estimation du mouvement d’un pixel appartement à la voiture noir, en bas à gauche de

l’image, des pixels de la voiture blanche, au milieu de l’image sont pris en compte : le calcul

est alors faussé. Vues les dimensions de l’image, une valeur cohérente de la fenêtre

d’observation est comprise entre 8 et 15 (cf. figure 19 et 20).

En choisissant une valeur de flot optique L=15, nous pouvons faire plusieurs conclusions sur

la direction et la vitesse des différents objets.

Déplacement uniforme – Vitesse assez rapide

Déplacement non uniforme – Vitesse plus faible que la voiture noire

Page 14: Bureau d’étude : Image

Pas de déplacement

Cette interprétation peut être faite automatiquement en faisant un seuillage du flot optique. On

peut donc décider de ne conserver que les objets en déplacement (seuil sur la norme du

vecteur de déplacement, seuil=0,6).

Figure 22 : Objets en déplacement

Figure 23 : Masque de seuillage – seuil = 0,6

Page 15: Bureau d’étude : Image

Il est également possible de ne conserver que les objets se déplaçant rapidement en

augmentant le seuil (seuil = 2,2).

Figure 24 : Objet se déplacement rapidement

Figure 25 : Masque de seuillage correspondant à l’image précedente

Le seuillage permet de visualiser et détecter facilement les objets en mouvement. Cette

détection peut être complétée grâce aux techniques vues au cours de deux dernières années,

notamment en effectuant un étiquetage sur chaque objet et en prenant le barycentre de celui-ci

pour permettre un suivi précis de chaque objet.

Page 16: Bureau d’étude : Image

CONCLUSION

Au cours de ce bureau d’études, nous avons pu découvrir et implémenter deux

différentes méthodes de détection de mouvement. La méthode du flot optique est plus

complète que la méthode par simple différence car elle permet d’avoir une estimation de la

vitesse et de la direction des objets en mouvement.

En généralisant ces méthodes dans des buts de traiter des séquences vidéo, il sera nécessaire

de prendre en compte quelques effets perturbateurs tels que le changement de luminosité, la

disparition d’objets temporaires, le croisement de deux objets, le mouvement de la caméra de

surveillance dû au vent…