Computer vision

Computer vision

4 min

Des filtres de Snapchat aux voitures autonomes, en passant par la détection de cancers, la Computer Vision est aujourd’hui partout autour de nous. Elle est aussi efficace qu’elle balaie des domaines variés.

L’objectif de cet article est de vous donner un aperçu global de  cette technique de Machine Learning par une définition précise de la Computer Vision ainsi que ses champs d’applications.

Qu’est-ce que la Computer Vision ?

La Computer Vision ou Vision par Ordinateur est une technique d’intelligence artificielle qui consiste à analyser puis interpréter une image ou une vidéo. Au même titre que le NLP pour le texte, les méthodes de Computer Vision ont pour objectif d’interpréter des images ou des vidéos de la même manière qu’un humain. Autrement dit, elles cherchent à donner à un ordinateur la capacité de voir.

Les algorithmes de Computer Vision utilisent majoritairement des réseaux de neurones, et notamment les CNN.

Quoi de mieux qu’un algorithme inspiré du fonctionnement de l’homme, pour imiter le comportement humain ?

Pour ceux qui ne sont pas encore familiers avec les réseaux de neurones, voici comment cela peut être résumé en quelques lignes, même s’il en faudrait plus pour une réelle introduction. (Pour comprendre plus en détail leur fonctionnement, découvrez cet article )

Un neurone artificiel est un modèle linéaire simple, prenant une valeur en entrée, et donnant en sortie une valeur ne dépendant que de cette entrée.

computer vision

Une couche de neurones est un ensemble de neurones, qui ne sont pas reliés entre eux. Ainsi, les neurone d’une même couche fonctionnent indépendamment les uns des autres. 

computer vision

Un réseau de neurones est un ensemble de couches. Chaque couche étant reliée les unes aux autres. Dans le cadre de la Computer Vision, la première couche prend en entrée une image ou une vidéo, et la dernière couche renvoie l’interprétation de cette image par le réseau de neurones. 

Le terme Computer Vision regroupe tous les algorithmes qui analysent et interprètent des images ou des vidéos. Il s’agit d’un domaine à part entière en intelligence artificielle, que l’on peut diviser en quatre grandes catégories :

  • Classification
  • Détection
  • Identification
  • Segmentation

Classification : 

Un algorithme de classification prend en entrée une image à classer parmi une liste de possibilités. Par exemple, un algorithme qui détermine à quel espèce appartient un animal à partir de sa photo entre dans cette catégorie.

computer visions
Source : Deep Learning for Computer Vision by Rajalingappaa Shanmugamani

Détection : 

Ici, l’objectif est de détecter sur une image la position de certains objets. Les objets « à détecter » ont été définis à l’avance, il n’est pas nécessaire d’en détecter d’autres.  La présence de ces objets est généralement représentée grossièrement par un rectangle et un nom sur l’image.

computer vision
Source : Medium, « Real-time Object Detection with YOLO, YOLOv2 and now YOLOv3 »

Identification : 

L’identification est utilisée pour reconnaître un objet (souvent une personne). La différence avec les algorithmes précédents est que cet algorithme est capable de faire la différence entre 2 personnes différentes. 

C’est ce genre d’algorithme qu’utilisent Facebook, Apple, ou Google Photos pour nous identifier sur nos photos. 

Segmentation: 

Ce type d’algorithme vise à délimiter les frontières entre les différents objets présents sur une image, et à classer ces derniers. Contrairement aux algorithmes de détection, ici chaque pixel appartient précisément à un unique objet.

heartbeat computer vision
Source : Heartbeat, « The 5 Computer Vision Techniques That Will Change How You See The World »

Ces catégories ne sont là que pour donner un aperçu de la diversité des algorithmes de Computer Vision. Il en existe d’autres, et certains algorithmes appartiennent à plusieurs d’entre elles à la fois. 

Quels sont les domaines d’application de la Computer Vision ?

La Computer Vision est omniprésente dans la technologie d’aujourd’hui. Il est donc impensable d’en faire une liste exhaustive. La suite de cet article a pour but de donner un aperçu de la grande diversité des domaines où la Computer Vision peut s’appliquer. 

Voitures autonomes : Pour être capable de rouler sans conducteur, les voitures autonomes sont dotées de très nombreux capteurs, dont des caméras. Ces dernières filment l’environnement, notamment les panneaux de signalisation et le marquage au sol. 

Les méthodes de Computer Vision sont alors utilisées pour interpréter ces images et permettre au véhicule d’agir en conséquence.

La question que l’on peut alors se poser est de savoir si ces algorithmes sont suffisamment fiables et performants pour qu’on puisse leur confier d’aussi grandes responsabilités.

Reconnaissance faciale : Beaucoup de smartphones proposent aujourd’hui d’être déverrouillés par reconnaissance faciale. Les algorithmes utilisés varient en fonction des marques mais ils sont aujourd’hui très performants. De telles méthodes sont aussi utilisées par Facebook, Google Photos ou Snapchat pour reconnaître les visages sur les photos. Suite à la pandémie du Covid19, nombreux sont les algorithmes à avoir été mis en défaut par la présence d’un masque sur le visage des utilisateurs. Aurait-on découvert le talon d’achille de Big Brother ? 

Imagerie médicale : Sans s’être réellement imposée en tant que standard dans ce domaine, la Computer Vision montre des résultats plus que prometteurs dans la détection de maladie. Une équipe de chercheurs du MIT a notamment développé une IA rivalisant avec les médecins pour détecter précocement les cancers du sein en utilisant les mammographies des patients.

Google Maps : Google utilise les images des panneaux prises par les google cars pour répertorier les noms de rue automatiquement. Le même procédé est appliqué aux panneaux de signalisation, notamment ceux de limitation de vitesse. 

Tri des déchets : Le robot Max-ai détecte et retire certains déchets indésirables en utilisant la Computer Vision. Ce genre de robot pourrait révolutionner la manière dont les déchets sont triés aujourd’hui.

La Computer Vision est le premier pas vers une intelligence artificielle capable d’imiter le comportement humain. Lorsqu’elle est couplée à d’autres méthodes, elle peut réaliser des tâches très complexes, qui étaient jusqu’à lors réservées aux humains. 

Par exemple, l’entreprise Captricity a développé un algorithme capable de lire et de comprendre des textes écrits à la mains, grâce à des méthodes de Computer Vision, et de NLP. 

Vous êtes intéressés par ce sujet ? Découvrez vite les possibilités de l’IA en compréhension du langage humain.