Vision par Ordinateur

 

 

Introduction

 

 

 

 

La vision par ordinateur est un procédé dans l’ensemble de l’intelligence artificielle. Son principal objectif est de permettre à une machine d’analyser, de traiter de comprendre une ou plusieurs images prises par un système d’acquisition comme une caméra.

Ce principe consiste donc à tenter d’imiter la vision humaine ou animale par le moyen de composants électroniques. Cette manière de procéder peut-être vu comme un traitement de données visuelles par le biais de modèles fondés sur la géométrie, la physique, la biologie, les statistiques et les théories d’apprentissage. La vision par ordinateur est une initiative dans l’automatisation et l’intégration d’une vaste gamme de processus et de modèles sur la perception visuelle.

 

Elle Intervient dans plusieurs domaines telle que la  navigation avec conduite autonome , dans la modélisation d’objets ou d’environnements comme l’analyse d’image médicale…

 

I.                D’où vient la Vision par Ordinateur

 

A.    L’Intelligence Artificielle

 

 

L’intelligence Artificielle (IA) est l’ensemble des techniques mises en œuvre en vue de réaliser des machines capables de simuler l’intelligence.

 

L’intelligence artificielle est classée dans le groupe des sciences cognitives c’est-à-dire ayant pour objet la description, l’explication et en cas échéant la simulation des mécanismes de la pensée humaines animale ou artificielle. Elle fait donc appel à la neurobiologie computationnelle (particulièrement aux réseaux neuronaux), à la logique mathématique (sous-discipline des mathématiques et de la philosophie) et à l’informatique. Ainsi elle rechercher des moyens de résolution de problèmes a forte complexité logique ou algorithmique afin d’imiter ou remplacer l’humain.

 

Ce terme IA a été créé par John McCarthy, pionner de cette discipline. On y trouve le côté « Artificiel » grâce à l’usage des ordinateurs ou de processus électroniques et le côté « Intelligence » car son but est d’imiter cette dernière. Cette imitation peut se faire dans le raisonnement, la compréhension des langues naturelles ou dans la perception.

 

 

Son point de départ est dans les années 50 avec les travaux d’Alan Turing (connu pour la machine Enigma qui a permis de déjouer les plans des Allemands pendant la 2nd Guerre Mondiale) qui se demande si une machine peut penser. Le développement des technologies informatiques et des techniques d’algorithmiques (« Deep Learning » ) ont permis la réalisation de programmes informatiques permettant de surpasser l’Homme comme on a pu le voir dans certains jeux emblématiques : Le jeu d’échecs en 1997, le jeu de go en 2016 et le poker très récemment en 2017.

 

Turing a donc dans son article « Computing Machinery and Intelligence » proposé une expérience connue sous le nom de « Test de Turing » afin de qualifier une machine de Consciente. Il développe ainsi cette idée dans plusieurs forums, dans la conférence « L’intelligence de la machine une idée hérétique » dans une conférence accordée à la BBC...

 

Ainsi un test est proposé par Turing. Il propose ainsi le « jeu de l’imitation » qui fixait pour objectif précis à la science naissante des ordinateurs. Ce jeu de l’imitation suggérait qu’un juge fictif puisse dialoguer à la fois avec une machine et à la fois avec un terminal sans pouvoir les discriminer.

 

 

 

 

Jusqu’à aujourd’hui aucun logiciel n’a pu réussir ce test sans se comporter afin de ne pas être discriminer par un Humain. De nos jours, une machine peut certes réviser et faire évoluer des objectifs qu’on lui a attribués. Une machine peut même être programmée pour pouvoir restructurer sa connaissance initiale à partir d’informations reçues ou perçues. Mais la machine d’aujourd’hui ne pense pas à proprement parler, car elle n’a pas conscience d’elle-même (et en particulier de ses limites), elle ne peut pas ultimement décider de ses buts ni imaginer de nouvelles formes de représentations du monde.

 

Schéma du test de Turing :

 

 

 

 

 

L’autre origine de l’« IA » est en 1949 avec la publication du mémorandum de Warren Weaver sur la traduction automatique des langue qui suggère qu’un machine puisse réaliser cette tâche typique de l’intelligence humaine.

 

On considère que l’intelligence artificielle, en tant que domaine de recherche, a été créée à la conférence pendant l’été 1956 dans le campus de Dartmouth College. L’ « IA » se développe surtout aux Etats-Unis . Toutefois les bornes de l’ « IA » peuvent varier ainsi au début la recherche d’in itinéraire était considéré comme un problème lié a ce dernier mais n’est maintenant plus considérée comme de l’Intelligence Artificielle.

 

 

 

Plusieurs faits qui ont marqué les années 2000 :

 

En 2005, le projet Blue Brain vise à simuler le cerveau des mammifères. Il s’agit d’une des méthodes envisagées pour réaliser une IA.

En novembre 2009, l'US Air Force cherche à acquérir 2 200 PlayStation 3 pour utiliser le processeur cell à 7 ou 8 cœurs qu'elle contient dans le but d'augmenter les capacités de leur superordinateur constitué de 336 PlayStation 3. Le nombre sera réduit à 1 700 unités le 22 décembre 2009. Le projet vise le traitement vidéo haute-définition, et l'« informatique neuromorphique », ou la création de calculateurs avec des propriétés/fonctions similaires au cerveau humain.

Le 27 janvier 2010, l'US Air Force demande l'aide de l'industrie pour développer une intelligence avancée de collecte d'information et avec la capacité de décision rapide pour aider les forces américaines pour attaquer ses ennemis rapidement à leurs points les plus vulnérables.

L'US Air Force utilisera une intelligence artificielle, le raisonnement ontologique, et les procédures informatique basées sur la connaissance, ainsi que d'autres traitement de données avancées afin de frapper l'ennemi au meilleur point. D'autre part, d’ici 2020, plus de mille bombardiers et chasseurs F-22 et F-35 de dernière génération, parmi plus de 2 500 avions militaires, commenceront à être équipés de sorte que, d’ici 2040, tous les avions de guerre américains soient pilotés par intelligence artificielle.

 

Le 16 février 2011, Watson, le superordinateur conçu par IBM, remporte deux des trois manches du jeu télévisé Jeopardy! en battant largement ses deux concurrents humains en gains cumulés. Pour cette IA, la performance a résidé dans le fait de répondre à des questions de culture générale (et non un domaine technique précis) dans des délais très courts.

En février 2016, l'artiste et designer Aaron Siegel propose de faire de Watson un candidat à l'élection présidentielle américaine afin de lancer le débat sur « le potentiel de l’intelligence artificielle dans la politique »

 

En 2014-2015, à la suite du développement rapide du deep learning, quelques scientifiques craignent que l’ « IA » à terme dépassent les performances de l’intelligence Humaine. Parmi eux, Stephen Hawking, Bill Gates et Elon Musk.

 

 

 

 

 

 

L’intelligence Artificielle interagit dans beaucoup de domaines d’application tel que :

  • La banque, avec des systèmes permettant d’évaluer le risque lié a l’octroi d’un crédit.
  • Le militaire, avec des systèmes tels que les drones, les systèmes de commandement et l’aide à la décision.
  • Les jeux vidéos, avec les Personnages Non Jouables (PNJ) par exemple.
  • Générateur de film complet, en image de synthèse, de A à Z, à partir des souhaits des utilisateurs.
  • Le traitement, compréhension d’images grâce à la vision par ordinateur par exemple.

 

 

 

B.     L’historique du traitement d’images.

 

 

Le besoin de traiter les images est rapidement devenu une évidence, dans les années 1950 en physique des particules où les scientifiques scrutent les composants ultimes de la matière en bombardant des atomes les uns contre les autres, pour détecter de trajectoires particulièrement complexes.  Dans les années 1960 il fallait analyser 10 000 à 100 000 images par expériences dans les chambres à bulles.

 

 

 

 

 

 

 

 

Dans les années 1960, les chercheurs se sont intéressés à la lecture optique pour reconnaitre les caractères dactylographiés d’un texte.  En termes d’images, cette application semblait abordable mais le nombre de caractères est limité et l’image est contrastée.

 

Mais pour l’écriture manuscrite, il a fallu attendre une vingtaine d’années de plus pour que de telles techniques soient opérationnelles, par exemple pour lire les adreses postales ou les montants des chèques bancaires.

 

 

 

 

 

 

 

 

 

 

Système de reconnaissance d'écriture manuscrite.

 

 

 

Jusqu’à la fin des années 60, les images, que ce soient photos de satellites, des images d’ADN au microscope électronique ou des radiographies, étaient de mauvaise qualité et difficile a exploiter. Les optiques étaient très peu performantes ce qui provoquait de nombreuses aberrations géométriques et chromatiques.

 

Deux problèmes se posaient alors : Le volume des images qui étaient difficiles à traiter au vu du nombre de pixels, mais surtout le traitement qui était très long. Il fallait donc comprimer les images, sans trop les détériorer afin de les traiter en temps réel.

Les codages actuels des images numériques ou des vidéos sont des descendants des ces travaux.

 

 

L’idée d’automatiser l’interprétation des images est apparue dès le début : il a d’emblée paru opportun de les classer, de les faire traiter par des ordinateurs.

Dans les années 1960, on a assisté à un fabuleux essor de la radiologie, en particulier des radiographies pulmonaires. A cette époque, en France, quelques 40 millions de radiographies étaient prises par an.

Autant d’images qu’il fallait ensuite analyser pour détecter des tumeurs, des anomalies. On pratiquait aussi de plus en plus d’examens de sang, de cellules, de tissus.

 

 

L’idée était de faire une présélection des images, pour limiter le travail des médecins à une ultime expertise. Il s’est avéré quasi impossible de remplacer l’œil humain à l’œil averti d’un expert par un ordinateur. A l’époque, les modélisations étaient trop complexes à mettre au point mais les travaux continuaient.

 

Dans les années 1960, les images aériennes ou satellitaire se multipliaient. Ainsi on pouvait voir la progression de la désertification d’une région, l’évolution des zones urbaines ou des informations tactiques pour les militaires. Pendant cette période, les USA ont beaucoup investi dans ce domaine pour leur défense.

 

 

 

 

 

 

 

Que ce soit pour déchiffrer un texte dactylographié ou manuscrit, pour compter des chromosomes, reconnaître une tumeur, un char, la compréhension de l’image se fait toujours par la reconnaissance d’une forme.

 

Un peu partout dans le monde, les chercheurs ont mis au point des méthodes mathématiques permettant de détecter les contours des objets à partir des changements rapides de contraste dans l’image des ombres et des lumières, des régions homogènes en couleur en intensité, en texture.

 

 

 

 

 

 

 

 

 

 

Des chercheurs américains, Marvin Minsky et Seymour Papert on chercher à formaliser et à faire reproduire par l’ordinateur notre propre processus de reconnaissance d’images donc notre propre vision. Cette démarche était dans l'air du temps, au cœur des promesses de « l'intelligence artificielle » qui devait permettre de mettre l'intelligence en équations et doter les ordinateurs de toutes les capacités humaines de raisonnement, mémoire, perception. Or la vision s'est révélée être un domaine particulièrement complexe à modéliser tant elle est basée sur une quantité phénoménale de connaissances a priori fondées sur notre intelligence et notre expérience.

 

« Un grand nom de la vision par ordinateur est assurément David Marr (1945-1980) », rappelle Radu Horaud. « Ce neurophysiologiste et mathématicien anglais qui travaillait aussi au MIT a été un des premiers à définir les bases formelles de la vision par ordinateur en intégrant des résultats issus de la psychologie, de l'intelligence artificielle et de la neurophysiologie. Selon son formalisme : dans un premier temps, on observe ce que l'on peut détecter, une vision « brute » de l'image. Dans un second temps, on perçoit ce qu'on désire voir, une vision abstraite qui nous permet de reconnaître comme tel un chien, une table ou la tour Eiffel. C'est là que nous faisons appel à notre intelligence, notre mémoire, nos connaissances a priori. » À ce titre, David Marr a jeté les bases des sciences cognitives.

 

La vision par ordinateur s’est ainsi d’abord développée à partir de reconnaissance de formes simples et abstraites comme des cubes ou des polyèdres dont on détectait les sommets et les côtés. Par la suite, des images numérisées ont progressivement été utilisées au gré des possibilités des ordinateurs.

 

I.                Les techniques utilisées en Vision par ordinateur

 

A.    Transformée de Hough

 

Le transformée de Hough est une technique de reconnaissance de formes inventée en 1962 par Paul Hough. Cette technique est utilisée dans le traitement d’images numériques.

 

Le problème est celui de la recherche de détection de ligne qui seraient éventuellement présentes dans une image analysée. Le principe est qu’il existe une infinité de lignes qui passent par un point, la seule différence de ces lignes est l’orientation. Ainsi le but est de déterminer lesquelles de ces lignes sont les plus fréquentes dans l’image. Afin de déterminer que deux points se trouvent sur la même ligne potentielle on doit créer une représentation de la ligne qui permet une comparaison dans ce contexte.

 

Tout d’abord on suppose que si de lignes ou segments sont présents dans une image, ils feront partie des contours présents dans l’image. Dans un premier temps on identifie tous les points de contours de cette image, par exemple à l’aide de techniques de mesures de gradients locaux entre les valeurs des pixels autour de chaque point de l’image.

Chacun des points des contours ainsi identifiés (x, y) va alors permettre une projection dans un plan des coordonnées polaires de toutes les droites passant par ce point.  Les équations des droites passant en chacun de ces points sont représentées par l’équation « normalisée »

ρ = y * cos(θ) + x * sin(θ), ou θ est l’angle de la droite et ρ  la distance de la droit à l’origine ( au lieu de c = a * x + b * y).  Au point (x, y) du contour, on fait donc correspondre une courbe [θ, ρ], où θ prend toutes les valeurs possibles de 0 à 2π, ρ prenant la valeur ρ = y * cos(θ) + x * sin(θ). Une fois appliquée à tous les points des contours, et, pour chacun, à tous les angles θ possibles, les points (θ, ρ) de l'espace transformé les plus souvent adressés sont les coordonnées des droites ou des segments de droite les plus représentés dans l'image de départ.

L’espace transformé de Hough sera représenté par une image, dont les abscisses seront les angles θ, et les ordonnées les valeurs de ρ et dont l’intensité au point quelconque (θ, ρ) est le nombre d’occurrences de (θ, ρ) provenant de l’image d’origine.

 

 

 

 

Dans le transformée de Hough, chaque ligne est un vecteur de coordonnées paramétriques :

  • θ: l'angle
  • ρ: la norme du vecteur (la longueur du segment perpendiculaire à la droite d'angle θ et passant par l'origine).

 

En transformant toutes les lignes possibles qui passent par un point, c’est-à-dire en calculant la valeur de ρ pour chaque θ, on obtient une sinusoïde unique appelée espace de Hough. Si les courbes associées à deux points se coupent, l'endroit où elles se coupent dans l'espace de Hough correspond aux paramètres d'une droite qui relie ces deux points.

 

 

 

 

 

B.    Transformée de Radon et de Fourier

 

 

Le théorème de projection de Radon est la possibilité de reconstituer une fonction réelle à deux variables à l’aide de la totalité de ses projections selon des droites concourantes. L’application la plus courante de ce théorème est la reconstruction d’images médicales en tomodensitométrie c’est-à-dire les scanners à rayon X.

 

Il est impossible de disposer de toutes les projections d’un objet solide mais seulement un échantillonnage. Il existe des méthodes pour combler ce manque d’information conformément à ce que l’on sait a priori sur l’image.

 

La transformée de Radon est la formulation mathématique d’une projection. La transformée d’une fonction de deux variables  f  est donnée par l’intégrale double selon une direction  "Phi"

 

Où delta(x) est l’impulsion de Dirac qui peut être informellement considérée comme une fonction qui prend une « valeur » infinie en 0, et la valeur zéro partout ailleurs.

 

 

La transformation de Fourier associe à une fonction intégrable, définie sur l’ensemble des nombres réels ou celui des nombres complexes, une fonction appelée transformée de Frourier dont la variable indépendante peut s’interpréter en physique comme la fréquence ou la pulsation.

 

En traitement d’images, on effectue des transformations de Fourier à deux dimensions : si ƒ est une fonction de " ensemble des couples "sa transformée de Fourier est définie par :

 

 

B.     L’apprentissage profond

 

 

L’apprentissage profond ou « Deep learning » est un ensemble de méthodes d’apprentissage automatique tentant de modéliser avec un haut niveau d’abstraction des données grâce à des articulées de différentes transformations non linéaires. Cela à permis de progrès important et rapide dans les domaines de l’analyse du signal sonore ou visuel et notamment de la reconnaissance faciale, vocale de la vision par ordinateur et le traitement automatisé du langage.

 

Le « deep learning » fait partie d’une famille de méthodes d’apprentissage automatique fondées sur l’apprentissage de modèles de données. Une observation peut être représentée de différentes façons par un vecteur de données, notamment en fonction de :

 

  • L’intensité des pixels ont elle est constituée
  • Ses différentes arêtes
  • Ses différentes régions, aux formes particulières.

 

Les différentes architectures de « deep learning » telles que les « deep neural networks », les « convolutional deep neural networks », et les « deep belief network » ont plusieurs champs d’application :

  • La vision par ordinateur(reconnaissance de formes)
  • La reconnaissance automatique de la parole
  • Le traitement automatique du langage naturel
  • La reconnaissance audio et la bio-informatique

 

Les techniques de « Deep Learning » constituent une classe d’algorithmes d’apprentissage automatique qui :

  • Utilisent différentes couches d’unité de traitement non linéaire pour l’extraction et la transformation des caractéristiques ; chaque couche prend en entrée la sortie de la précédente ; les algorithmes peuvent être supervisés ou non supervisés, et leurs applications comprennent la reconnaissance de modèles et la classification statistique
  • Fonctionnent avec un apprentissage à plusieurs niveaux de détail ou de représentation des données ; à travers les différentes couches, on passe de paramètres de bas niveau à des paramètres de plus haut niveau, où les différents niveaux correspondent à différents niveaux d’abstraction des données.

 

Ces architectures permettent de conférer du sens à des données en leurs donnant la forme d’images, de sons ou de textes.

L'apprentissage profond utilise des couches cachées de réseaux de neurones artificiels, des « Restricted Boltzmann machine  », et des séries de calculs propositionnels complexes. Les algorithmes d'apprentissage profond s’opposent aux algorithmes d’apprentissage peu profonds du fait du nombre de transformations réalisées sur les données entre la couche d’entrée et la couche de sortie, où une transformation correspond à une unité de traitement définie par des poids et des seuils.

 

Le concept de « Deep Learning » prends forme dans les années 2010 avec les réseaux de neurones artificiels multicouches, les algorithmes d’analyse discriminante et apprenants et les machine dont la puissance de traitement permet de traiter des mégadonnées.

 

En Octobre 2015, le programme AlphaGo, qui permet de jouer au Jeu de Go, à appris à y jouer grâce au « deep learning » et a battu le champion européen 5 à 0 et en mars 2016 le champion du monde 4 à 1.

 

Le « deep learning » d’applique à divers secteurs comme :

  • La reconnaissance visuelle
  • La robotique
  • La sécurité
  • La santé
  • L’IA

Et il peut aider à mieux reconnaitre des objets hautement déformables, analyser les émotions sur un visage photographié, améliorer le positionnement automatique d’une caméra.

Le « Deep learning » suscitent de nombreuses craintes comme quoi cela permettrait à l’ « IA » de dépasser l’intelligence humaine. Ces craintes se retrouvent notamment chez Stephen Hawking, Bill Gates et Elon Musk.

Mais ces craintes sont relativisées par des chercheurs qui estime que l’ «IA » est encore loin du stade où l’on peut dire que l’ordinateur « comprend à proprement parler : Il indique que percevoir et créer des concepts, ce n’est pas comprendre et ainsi il affirme qu’il manque encore quelque chose de fondamental pour franchir ce pas.

Enfin, la crainte selon laquelle l'IA pourrait s'améliorer d'elle-même pour échapper éventuellement au contrôle des humains lui semble infondée pour trois raisons : d'abord, les techniques actuelles, extrêmement spécialisées, exigent de très longs temps d'apprentissage, ensuite, elles ne reposent pas sur une forme d'auto-programmation  et enfin, l'auto-programmation n'est pas un axe de recherche.

 

 

 

 

CONCLUSION

 

 

 

La vision par ordinateur est une branche de l’Intelligence Artificielle. L’Intelligence Artificielle fait partie des sciences cognitives. Le Terme « IA » a pris point dans les années 50 notamment avec les travaux de Turing et son test éponyme. L’intelligence Artificielle intéragit dans plusieurs domaines tels que la Banque, les Jeux vidéo, la sécurité…

Le traitement d’image est à la base de la vision par ordinateur. Cela a été rapidement un domaine de recherche. Cela a commencé dans les années 50 dans le domaine de la physique puis pour reconnaitre des écritures même s’il fallut plus de 20 ans pour y arriver. Ensuite il y a eu ce besoin dans le domaine de la sécurité et de la défense notamment avec les Etats Unis qui ont beaucoup investis dans ce secteur.

Plusieurs techniques sont utilisés dans la vision par Ordinateur. La transformée de Hough, de Fourier et de Radon permettent reconnaitre des formes dans des images. Mais il y’a aussi le « Deep Learning » qui aide beaucoup dans la vision par ordinateur.

Plusieurs grands noms du domaine de l’Informatique craignent que  l’IA et le « deep learning » surpassent l’Intelligence humaine.

 

Sources :

https://fr.wikipedia.org/wiki/Vision_par_ordinateur

https://fr.wikipedia.org/wiki/Transform%C3%A9e_de_Hough

https://fr.wikipedia.org/wiki/Th%C3%A9or%C3%A8me_de_Radon

https://fr.wikipedia.org/wiki/Transformation_de_Fourier

https://fr.wikipedia.org/wiki/Apprentissage_profond

https://fr.wikipedia.org/wiki/Intelligence_artificielle

https://interstices.info/jcms/c_5952/histoire-du-traitement-d-images

 

 

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *