Ressources Affichage numérique

L’intelligence artificielle - La détection de mouvements

Rédigé par Erik Hanley | 27 nov. 2020 15:17:19

L’intelligence artificielle comporte plusieurs aspects et champs d'applications. Comme mentionné dans l’article «L’intelligence artificielle - Les principes fondamentaux», un des concepts utilisés dans ce domaine est celui de la vision par ordinateur. La vision par ordinateur se définit par la capacité d’un ordinateur de remplacer l'œil humain, de traiter l’information reçue et, si désiré, de générer une réponse adéquate. Afin d’arriver à un système de détection de mouvement, l’information d’entrée dans le processus est inévitablement une vidéo. Une vidéo est composée d’une succession d’images en un court laps de temps, donnant ainsi l’impression à l'œil et au cerveau humain d’observer une animation.

Bien que les ordinateurs soient de nos jours très performants, il n’en demeure pas moins que l’analyse de contenu d'une vidéo est très lourde en termes de traitement d’information. À titre d’exemple, une vidéo d'une minute, ayant une fréquence d’images de 60 images à la seconde (60 FPS) et une résolution de 1920 x 1080, nécessite de valider pour chaque image plus de 2 millions de pixels. Étant donné que dans ce contexte-ci, nous désirons détecter un mouvement et donc, identifier les différences entre deux images successives, il y a plus de 4 millions de pixels à valider. Cette opération totalise près de 250 millions d’opérations mathématiques à exécuter en une minute, et ce, uniquement pour identifier les différences entre deux images successives. La quantité d’information à traiter en temps réel dépasse largement la capacité des ordinateurs disponibles sur le marché.

Les chercheurs en visions par ordinateur ont élaboré plusieurs méthodes et algorithmes afin de réduire la quantité d'opérations nécessaires afin d’arriver à une détection de mouvement en temps réel. Afin de faciliter la compréhension, nous allons procéder à l’étude d’un cas concret. Le contexte étudié comportera un écran d’affichage numérique affichant un visage qui observe un passant devant une caméra.

L’information d’entrée est donc la vidéo capturée par la caméra du passant. L’objectif à atteindre est d’isoler sur la vidéo le passant et de déterminer sa direction. Prenons par exemple cette vidéo d’une durée de trois secondes:

 

Figure 1. Vidéo d’un passant

La segmentation d’images à partir d’une vidéo

Ayant une fréquence de 60 images par seconde, le vidéo totalise donc un total de 180 images successives pendant 3 secondes. Afin de réduire considérablement la quantité d'opérations de calcul, nous allons utiliser la première et la dernière image, ainsi que deux images par seconde, pour un total de 8 images. Les images analysées seront les suivantes:

Figure 2. Segmentation d’images aux 500 millisecondes à partir d’un vidéo

Le masque logique

La prochaine opération consiste à comparer, dans l’ordre, la différence entre deux images séquencées. Comme nous l’avons vu précédemment, une image de ce format contient plus de 2 millions de pixels. Afin de limiter le nombre de calculs de façon substantielle pour repérer une différence entre deux images, nous établirons les sections à valider dans l’image de départ. Afin de couvrir l’image en entier, un masque d’une forme de mosaïque déterminera les emplacements dans les images à valider. Seules les zones établies par le masque seront validées entre les images, ce qui permettra d’établir un ensemble de zones qui représentera un changement entre deux séquences.

Figure 3. Positionnement d’une mosaïque logique sur une image aux fins de comparaisons entre des images successives

La comparaison entre deux images

En appliquant cette opération sur deux images successives, il devient possible d'identifier les différences observées dans les zones vertes. Les différences de contenu dans les zones vertes entre les deux premières images peuvent être validées. Nous allons illustrer ces différences comme étant des zones rouges.

Figure 4. Représentation visuelle des différences observées entre deux images

Analyser et comprendre le mouvement

Afin d'avoir une représentation entière du mouvement observé, l’opération de validation entre images successives doit être appliquée sur l’ensemble des images retenues aux fins d’analyse et de calculs. Prenons par exemple le résultat de la comparaison entre la première et la deuxième image ainsi que la comparaison entre la deuxième et la troisième image.

Figure 5. Résultat de comparaison entre l’image 1 et 2 ainsi qu'entre l’image 2 et 3

Comme démontré dans les résultats de comparaison d’image, en analysant les coordonnées des zones rouges, nous pouvons mathématiquement déterminer que le déplacement, de ce qui a été établi comme étant la zone d’intérêt, est un mouvement de gauche à droite. Nous voyons que dans la première comparaison des zones rouges apparaissent à partir de la deuxième colonne de la mosaïque alors que dans la seconde comparaison, les zones rouges apparaissent à la troisième colonne, ce qui permet d’en arriver à cette conclusion. Ayant en main les données concernant le mouvement observé, il est possible, par des algorithmes paramétrés, de générer une réaction à ce mouvement. Dans le cas où l’emplacement de la caméra posséderait également un écran d’affichage dynamique, il serait possible, par exemple, d’y afficher un avatar suivant des yeux le passant et de diriger graduellement le regard vers celui-ci.

Le domaine de l’affichage dynamique de concert avec la vision par ordinateur promet des innovations d’ampleur. Les interactions sur des écrans tactiles se transformeront en une interprétation de mouvements qui conduiront à l’exécution de commandes. La transformation d’un domaine qui amorce une nouvelle ère apporte excitation et défis multiples. Ce sont les deux ingrédients nécessaires à l’innovation et à la passion des développeurs de produits. La démonstration d’un exemple de détection de mouvement n’est que la pointe de l’iceberg vers un avenir des plus innovant. La vision par ordinateur permettra de comprendre l’audience devant un écran d’affichage dynamique, d'améliorer la personnalisation de contenu, de développer l'interaction humain-machine, et beaucoup plus!


*Source du contenu multimédia
ITESMEDIA - Étude de cas - Industrielle Alliance