La vision par ordinateur

 
La vision assistée par ordinateur est un ensemble de technologies (matériel et logiciel) qui permet d’extraire des données sémantiquement pertinentes à partir d’images. La vision par ordinateur est donc un ensemble d'outils qui permet à un ordinateur de « voir », et surtout de comprendre son environnement et d’en tirer des conclusions.
 
À quoi cela sert de donner des yeux à une application ? Comment y parvenir ? Quels sont les logiciels, les techniques, les algorithmes qui permettent cette prouesse ? NumeriCube vous aide à y voir plus clair.
 
  • Qu’est-ce que la vision par ordinateur ?
  • Les domaines d'application
  • Computer vision : comment ça marche ?
  • Les avancées récentes et le Deep Learning
  • Le marché de la Computer Vision
  • Vision et éthique

vision ordinateur

Qu’est-ce que la vision par ordinateur ?

La vision par ordinateur est une discipline informatique qui consiste à mettre en œuvre des outils et techniques pour permettre à un ordinateur d’interpréter un élément visuel. Quelque synonymes existent pour désigner cette discipline :

  • Vision assistée par ordinateur
  • Computer Vision
  • Vision industrielle

Pour se rendre compte de l’utilité que peut avoir la vision par ordinateur, il suffit de s’imaginer le handicap que peut représenter la perte de la vue. Imaginez que vous avez les yeux bandés. Vous y êtes ? Eh bien, vos programmes informatiques, eux, sont dans cette situation : vos logiciels sont aveugles.

Femme yeux bandés

Et pourtant, nombre de décisions que nous prenons dans la vie quotidienne le sont sur la base d’un feedback visuel d’une situation. Cette porte, est-elle ouverte ou fermée ? Cette lumière est-elle allumée ou éteinte ? Ce carton est-il rempli ou vide ? Cette situation est-elle dangereuse ou pas ?

La vision par ordinateur consiste donc à répondre à des questions de ce type — dans le contexte du métier d’une entreprise — et permettre ainsi d’assister femmes et hommes dans l’exécution de leurs tâches.

Les outils et méthodes mis en œuvre peuvent être matériels (caméras, dispositifs d’imagerie) et logiciels (algorithmes, ou intégration de programmes « prêts à l’emploi »). Il en existe plein ! Mais la tendance globale est à la généralisation des algorithmes sur la base de dispositifs de prise de vue courants (notamment smartphone). Après tout, nous avons quasiment tous dans la poche un appareil photo et une connexion internet, pourquoi ne pas s’en servir ? Et les avancées récentes de la vision par ordinateur se sont donc concentrées tant sur la partie matérielle (amélioration des dispositifs de prise de vue) que sur la partie logicielle.

Naturellement, il est tout à fait possible d’utiliser des technologies de computer vision sur des images déjà existantes ! Internet est une mine d’or qui ne demande qu’à être exploitée. À vrai dire, dans beaucoup de projets que nous mettons en œuvre, nos clients disposent déjà d’une base d’images conséquente. Et vous ? N’avez-vous pas dans votre entreprise une banque d’images ? N’effectuez-vous pas des prises de vues dans le cadre de vos process ? Souvent, ces images « dorment » dans un disque dur... La vision par ordinateur leur donne une valeur parfois immense — nous y reviendrons.

Quels sont les domaines d’application de la vision par ordinateur ?

À quoi peut bien être utile un ordinateur qui « voit » ? Les domaines d’application sont immenses, nous listons ici quelques cas d’usage :

  • Imagerie médicale

  • Manufacturing / Supply Chain

  • Sécurité / Sûreté

  • Recherche scientifique

  • Informatique de gestion (si, si !)

Capture d’écran 2019-04-01 à 13.04.18

Imagerie médicale

L’application de l’informatique à l’imagerie médicale représente l’une des plus grandes promesses de la vision par ordinateur. Imaginez par exemple un radiologue qui serait assisté par un logiciel permettant de détecter des anomalies sur un cliché. Le gain de temps pour le radiologue et le gain en sécurité pour le patient peuvent être énormes s’il est possible de réaliser un logiciel suffisamment fiable.

Ces logiciels ultra-spécialisés commencent à apparaitre, et permettent déjà de repérer des éléments sur des radios avec une acuité égale voire supérieure à celle de l’humain. Il s’agit là d’une véritable révolution dans le domaine de la médecine !

Certains praticiens ou intellectuels sont inquiets de ces avancées car elles risqueraient de rendre le médecin (ou, dans le cas présent, le radiologue) obsolète d’ici quelques années. En réalité, ce n’est pas un risque majeur — mais notre section consacrée à l’éthique développe ce point.

L’imagerie médicale bénéficie ainsi des caractéristiques intrinsèques de l’algorithme : pouvoir être exécuté à grande échelle, avec un résultat constant. En somme, c’est comme si le médecin se dotait d’un assistant qui n’est jamais fatigué et qui donne son analyse avec toujours la même acuité. Plus de patients traités avec moins de risques d’erreurs, n’est-ce pas là une noble cause ?

Manufacturing / Supply Chain

L’industrie et la distribution sont des métiers qui ne sauraient se passer d’un œil vigilant.

Dans une usine, le contrôle qualité est très souvent réalisé visuellement. Comme dans le cas précédent, il s’agit d’une activité qui présente un risque potentiel en cas d’inattention, et qui pourtant est fondamentale à la bonne marche d’une chaine de fabrication.

Et s’il était possible de multiplier les points de contrôle pour détecter les défauts le plus tôt possible dans le processus de fabrication ? Les économies en terme de taux de rebut et de réactivité sont énormes.

La vision par ordinateur permet de détecter des anomalies avec un processus rigoureux, prouvé et répétable. Ainsi, plus de risque d'inattention et un repérage au plus tôt des défauts potentiels.

Sécurité / Sureté 

Tout comme l'industrie et la distribution, la sécurité se doit d'avoir un oeil vigilant, tout particulièrement aujourd'hui.

Dans les rues, les magasins, les musées, les banques il y a des caméras de surveillance qui filment et enregistrent des images. La reconnaissance visuelle permet d'analyser les images enregistrées et d'y repérer des visages et des personnes.

Une inspection visuelle automatisée avec des drones est possible et entraine un gain de temps prodigieux lors de la détection d'un délit.

Recherche scientifique 

La vision par ordinateur permet d'identifier des choses invisibles à l'oeil humain. Il est possible de repérer de petits éléments dans une grande image et ainsi prévenir le diagnostique de maladies qui se détectent habituellement trop tard.

De plus, la vision assistée par ordinateur facilite les études et réduit les erreurs humaines liées notamment à l'inattention.

Informatique de gestion

Enfin, la vision par ordinateur peut classer un grand nombre d'images en temps réel, ce qui aide à la collecte et à l'organisation des données indispensables à l'informatique de gestion.

Pour finir, la vérification des données peut être faite par inspection visuelle automatisée, ce qui entraine encore une fois un gain de temps.

En quoi la vision par ordinateur a été bouleversée ces dernières années ?

 Aujourd'hui, la vision par ordinateur est utilisée par tous dans nos vies quotidiennes.

Avec Google Lens, une application mobile capable de reconnaître et analyser plus d'un milliard d'images, ou alors avec l'application Snapchat qui reconnait à présent les animaux et peut leur appliquer des filtres.

Giraffe photographie

Autre exemple, un dispositif testé en Suisse permettant à des panneaux publicitaires de s'adapter aux envies des passants en étudiant leur âge, leur sexe et bientôt leurs vêtements et leurs émotions afin de mieux cibler le contenu qui pourrait les intéresser.

Aujourd'hui, la vision par ordinateur est capable de répliquer avec succès les capacités humaines, voir de les dépasser. Prenons l'exemple de AlphaGo Zero, qui a réussi à apprendre le jeu de go en 3 jours et à battre le champion du monde 4 manches à 1.

Qu’est-ce que le Deep Learning permet à la vision par ordinateur ?

 Le Deep Learning, contrairement aux autres méthodes, construit lui même ses caractéristiques d'analyse. Ainsi, le Deep Learning peut identifier des caractéristiques non visibles par l'homme, faciliter les études et automatiser les actions, donc de gagner énormément de temps. Les voitures autonomes utilisent ce système pour se repérer dans l'espace et réagir aux événements exterieurs.

Tesla voiture autonome

Le Deep Learning a aussi la capacité de transformer ses réseaux et  d'inverser son processus. C'est à dire qu'il est possible de fournir une entrée semblable aux sorties précédentes afin d'obtenir une image en sortie.

Il permet donc à la vision par ordinateur d'approfondir ses capacités premières et surtout, de comprendre l'image qui est analysée. 

Quelle est la différence entre classification, détection et segmentation ?

 La classification, c'est identifier à quelle catégorie prédéterminée appartient une image. C'est à dire identifier le sujet principal ou si l'image a une composition particulière.

La détection utilise la classification et la localisation. La localisation détermine combien il y a d'objet connus (entrés dans la base de données) sur l'image. Donc, la détection, c'est rechercher des objets ou caractéristiques dans des images et déterminer leurs emplacements.

La segmentation est la découpe de différents éléments qui composent une image. Elle transforme les pixels dans des polygones, permettant ainsi une description plus condensée de l'image.

L’Intelligence Artificielle est-elle un danger pour l’homme ?

Nous l’avons vu plus haut, les avancées en terme d’intelligence artificielle, poussées majoritairement par le Deep Learning, posent des questions par rapport à l’usage qui pourrait en être fait. Les craintes sont généralement de deux ordres :

  • les progrès en intelligence artificielle risquent de rendre complètement obsolète certains métiers ;

  • les progrès en intelligence artificielle risquent de provoquer la destruction de l’humanité (rien que ça !) ;

    Image de fin du monde

Les arguments des défenseurs de cette seconde théorie reposent sur le fait qu’une intelligence artificielle étant par essence totalement dénuée d’humanité, si elle était connectée à Internet et estimait que la destruction de l’humanité, directe ou indirecte, était un frein à la réalisation de sa mission, alors… Un article extrêmement intéressant explique en détail ce risque et présente un tel scénario.

Pour répondre de façon abrupte, l’intelligence artificielle est aujourd’hui bien trop stupide pour représenter un tel risque à court ou moyen terme. D’une façon générale, les personnes qui alertent sur ce risque sont soit des personnes dont l’IA n’est pas le domaine d’activité principal, soit des personnes ayant un intérêt politique ou commercial à ce que l’IA soit régulée (bonjour Elon Musk).

Les problèmes que nous savons résoudre aujourd’hui avec l’IA ne sont pas très complexes, et surtout, nécessitent de fonctionner en un environnement « restreint ». Les algorithmes qui manipulent aujourd’hui des images doivent être au minimum adaptés pour savoir traiter du son, par exemple. Le logiciel de Google, AlphaGo Zero, qui a battu le meilleur joueur du monde au Go, est incapable de jouer à la bataille navale, au 1000 bornes ou au Scrabble. On est très, très loin de ce que Raymond Kurzweil appelle « la singularité », c’est à dire le moment où une intelligence dépassera l’humain.

AlphaGo Zero est un bon exemple car il permet de mieux comprendre en quoi l’humain est plus intelligent que la machine — et il ne s’agit pas d’un problème de puissance de calcul (d’ailleurs, à titre personnel, je confie que la moindre calculatrice électronique m’écrabouille totalement en terme de calcul mental… mais d’un autre côté, c’est pas ma calculette qui aurait pu écrire cet article !). Pour fonctionner correctement, AlphaGo Zero a dû apprendre des millions de parties. Plus qu’un joueur de Go qui ne vivrait que pour son jeu ne pourrait jouer en une vie entière. AlphaGo Zero a pourtant été un énorme progrès dans le sens où il lui a fallu nettement moins d’entrainement que d’autres programmes pour arriver à sa prouesse, mais n’empêche : il a « joué », pour arriver à son niveau, beaucoup plus de parties que son malheureux adversaire humain.

Par ailleurs, AlphaGo Zero fonctionne en environnement totalement fermé — et c’est peut-être cela qui est déroutant lorsque l’on est confronté à une machine. La machine considère le plateau de jeu, uniquement le plateau de jeu, rien que le plateau de jeu. Un joueur se base souvent sur les émotions qu’il perçoit de son adversaire, sur ses propres émotions aussi, peut être distrait par un bruit parasite, peut se sentir moins en forme ou au contraire plus en forme… bref, humain, dans toute sa complexité. La machine, elle, effectue ses calculs avec brio, mais en ne prenant en compte que le périmètre, somme toute restreint, du plateau de jeu. Certes il existe des millions et des millions de combinaisons, mais l’humain est confronté à un nombre encore plus incalculable de stimuli et d’opportunités de prendre une décision.

intelligence artificielle / vision ordinateur

Ainsi, l’IA, aujourd’hui, reste très « bête ». Et ajouter de la puissance de calcul n’y changera rien : cela permettra simplement d’obtenir ces résultats plus rapidement. Nous sommes de toutes façons dépassés depuis longtemps par la puissance de nos ordinateurs, est-ce pour cela qu’ils sont plus intelligents que nous ? Non. L’IA généralisée n’est donc pas pour demain, et rien, dans les recherches les plus récentes menées par les chercheurs les plus compétents des entreprises et universités les plus prestigieuses, rien ne s’en rapproche.

Et pourtant, la puissance de calcul augmente, les algorithmes s’affinent… Et donc, les tenants de la première théorie, ceux qui affirment que l’IA va détruire des millions d’emplois, nous alertent sur ce risque.

N’étant pas économistes, nous ne pourrions répondre avec certitude à cette question, mais nous pouvons tout de même constater que dans l’Histoire de l’humanité, il s’est produit des centaines et des centaines de fois ce bouleversement où une technologie rend totalement obsolète une activité humaine.

L’apparition de la voiture a sonné le glas du maréchal-ferrant. La moissonneuse-batteuse a mis fin au métier de glaneuse. L’imprimerie a certainement mis fin à une tradition orale. Excel (ou Multiplan) a dû donner des sueurs froides aux comptables et analystes des années 80. La mécanisation au sens large (pensons aux domaines du bâtiment, à la mobilité, à l’agriculture) a transformé des centaines de métiers. Mais le plus grand bouleversement récent en terme de technologie, vous l’avez devant vous : Internet. Le développement d’Internet a totalement transformé nos vies, tant personnelles que professionnelles (et je ne parle pas QUE du métier de documentaliste !). Le monde s’est-il arrêté de tourner ? Apparemment pas…

L’Histoire est têtue : à notre connaissance, aucun progrès technologique n’a mené des millions d’hommes au chômage. Les crises économiques, oui. Mais la technologie en elle-même, non. D’ailleurs, crise et technologie ne sont pas corrélés, au contraire : souvent, la technologie permet un gain en productivité (après tout, c’est le but) qui s’accompagne d’une embellie de l’économie. À moins que l’embellie de l’économie qui impose la nécessité d’une amélioration de la productivité. Aussi fascinante que puisse être l’IA, ce n’est qu’un outil, au service de la productivité humaine.

Il y a également une confusion très fréquente entre « tâche » et « métier ». Le but de l’IA est d’assister l’humain dans des tâches, pas de se substituer à un métier. L’activité professionnelle requiert de plus en plus de prise de décision, de choix, de réflexion, de contact humain. Et l’IA permet de s’affranchir de tâches en général répétitives et sans grande valeur, de faire changer ces tâches d’échelle, et d’assister ainsi celui ou celle qui effectue son travail.

Dans les projets que nous menons, en général, nous commençons par interviewer les personnes qui effectuent le travail, la tâche, pour lequel l’algorithme va les aider à mieux décider. La première chose que nous demandons, en général, c’est : « qu’est-ce que vous n’aimez pas faire ? ». Car en général, ce que nos utilisateurs n’aiment pas du tout faire, c’est souvent ce que l’on adore faire à leur place : des tâches qui se répètent, qui réclament de la concentration mais pas de travail « intellectuel », et qui finissent par sembler très désagréables. Nous produisons des antalgiques de tâches répétitives !

Cette vision semble peut-être trop optimiste ? Nous y croyons pourtant fermement. Et, plus qu’y croire, nous y tenons. Nous nous employons, tous les jours, à ce que nos logiciels améliorent la vie des femmes et des hommes qui l’utilisent.

En savoir plus...