Maybaygiare.org

Blog Network

Une introduction en douceur à la vision par ordinateur

Tweet Partager Partager

Dernière mise à jour le 5 juillet 2019

La vision par ordinateur, souvent abrégée en CV, est définie comme un domaine d’étude qui cherche à développer des techniques pour aider les ordinateurs à « voir” et à comprendre le contenu des images numériques telles que les photographies et les vidéos.

Le problème de la vision par ordinateur semble simple car il est trivialement résolu par des personnes, même de très jeunes enfants. Néanmoins, il reste en grande partie un problème non résolu basé à la fois sur la compréhension limitée de la vision biologique et en raison de la complexité de la perception de la vision dans un monde physique dynamique et presque infiniment variable.

Dans cet article, vous découvrirez une introduction en douceur au domaine de la vision par ordinateur.

Après avoir lu cet article, vous saurez:

  • L’objectif du champ de la vision par ordinateur et sa distinction avec le traitement d’image.
  • Ce qui rend le problème de la vision par ordinateur difficile.
  • Problèmes ou tâches typiques poursuivis en vision par ordinateur.

Lancez votre projet avec mon nouveau livre Deep Learning for Computer Vision, comprenant des tutoriels étape par étape et les fichiers de code source Python pour tous les exemples.

Commençons.

Une Introduction en Douceur à la Vision par ordinateur

Une Introduction en douceur à la Vision par ordinateur
Photo d’Axel Kristinsson, certains droits réservés.

Aperçu

Ce tutoriel est divisé en quatre parties ; elles sont:

  1. Désir pour les Ordinateurs de Voir
  2. Qu’est-Ce que la Vision par Ordinateur
  3. Défi de la Vision par Ordinateur
  4. Tâches en Vision par Ordinateur

Désir pour les Ordinateurs de Voir

Nous sommes inondés d’images.

Les smartphones ont des appareils photo, et prendre une photo ou une vidéo et la partager n’a jamais été aussi facile, ce qui a entraîné l’incroyable croissance des réseaux sociaux modernes comme Instagram.

YouTube pourrait être le deuxième plus grand moteur de recherche et des centaines d’heures de vidéo sont téléchargées chaque minute et des milliards de vidéos sont regardées chaque jour.

Internet est composé de texte et d’images. Il est relativement simple d’indexer et de rechercher du texte, mais pour indexer et rechercher des images, les algorithmes doivent savoir ce que contiennent les images. Pendant longtemps, le contenu des images et des vidéos est resté opaque, mieux décrit à l’aide des méta-descriptions fournies par la personne qui les a téléchargées.

Pour tirer le meilleur parti des données d’image, nous avons besoin d’ordinateurs pour « voir” une image et en comprendre le contenu.

C’est un problème trivial pour un humain, même les jeunes enfants.

  • Une personne peut décrire le contenu d’une photographie qu’elle a vue une fois.
  • Une personne peut résumer une vidéo qu’elle n’a vue qu’une seule fois.
  • Une personne peut reconnaître un visage qu’elle n’a vu qu’une seule fois auparavant.

Nous avons besoin d’au moins les mêmes capacités des ordinateurs pour déverrouiller nos images et vidéos.

Vous voulez des résultats avec l’apprentissage en profondeur pour la vision par ordinateur?

Suivez mon cours intensif gratuit de 7 jours par e-mail maintenant (avec un exemple de code).

Cliquez pour vous inscrire et obtenez également une version PDF Ebook gratuite du cours.

Téléchargez Votre Mini-Cours GRATUIT

Qu’Est-Ce Que La Vision Par Ordinateur?

La vision par ordinateur est un domaine d’étude axé sur le problème de l’aide aux ordinateurs à voir.

Au niveau abstrait, le but des problèmes de vision par ordinateur est d’utiliser les données d’image observées pour déduire quelque chose sur le monde.

— Page 83, Vision par ordinateur: Modèles, Apprentissage et inférence, 2012.

Il s’agit d’un domaine multidisciplinaire que l’on pourrait largement qualifier de sous-domaine de l’intelligence artificielle et de l’apprentissage automatique, qui peut impliquer l’utilisation de méthodes spécialisées et faire usage d’algorithmes d’apprentissage généraux.

Aperçu de la Relation entre l'Intelligence Artificielle et la Vision par ordinateur

Aperçu de la Relation entre l’Intelligence Artificielle et la Vision par ordinateur

En tant que domaine d’étude multidisciplinaire, il peut sembler désordonné, avec des techniques empruntées et réutilisées dans une gamme de domaines disparates de l’ingénierie et de l’informatique.

Un problème particulier de la vision peut être facilement résolu avec une méthode statistique artisanale, tandis qu’un autre peut nécessiter un ensemble important et complexe d’algorithmes d’apprentissage automatique généralisés.

La vision par ordinateur en tant que champ est une frontière intellectuelle. Comme toute frontière, elle est passionnante et désorganisée, et il n’y a souvent pas d’autorité fiable à laquelle faire appel. De nombreuses idées utiles n’ont pas de fondement théorique, et certaines théories sont inutiles dans la pratique; les zones développées sont largement dispersées, et souvent l’une semble complètement inaccessible de l’autre.

— Page xvii, Vision par ordinateur: Une approche moderne, 2002.

L’objectif de la vision par ordinateur est de comprendre le contenu des images numériques. En règle générale, cela implique de développer des méthodes qui tentent de reproduire la capacité de la vision humaine.

Comprendre le contenu des images numériques peut impliquer d’extraire une description de l’image, qui peut être un objet, une description textuelle, un modèle tridimensionnel, etc.

La vision par ordinateur est l’extraction automatisée d’informations à partir d’images. L’information peut signifier n’importe quoi, des modèles 3D, la position de la caméra, la détection et la reconnaissance d’objets au regroupement et à la recherche de contenu d’image.

— Page ix, Programmation de la vision par ordinateur avec Python, 2012.

La vision par ordinateur et le traitement d’image

La vision par ordinateur est distincte du traitement d’image.

Le traitement d’image est le processus de création d’une nouvelle image à partir d’une image existante, généralement en simplifiant ou en améliorant le contenu d’une manière ou d’une autre. Il s’agit d’un type de traitement numérique du signal et ne concerne pas la compréhension du contenu d’une image.

Un système de vision par ordinateur donné peut nécessiter l’application d’un traitement d’image à une entrée brute, par exemple un prétraitement d’images.

Des exemples de traitement d’image incluent:

  • Normaliser les propriétés photométriques de l’image, telles que la luminosité ou la couleur.
  • Recadrer les limites de l’image, comme centrer un objet dans une photographie.
  • Suppression du bruit numérique d’une image, tel que des artefacts numériques provenant de faibles niveaux de lumière.

Défi de la vision par ordinateur

Aider les ordinateurs à voir s’avère très difficile.

L’objectif de la vision par ordinateur est d’extraire des informations utiles des images. Cela s’est avéré une tâche étonnamment difficile; il a occupé des milliers d’esprits intelligents et créatifs au cours des quatre dernières décennies, et malgré cela, nous sommes encore loin de pouvoir construire une « machine à voir » à usage général.”

— Page 16, Vision par ordinateur: Modèles, Apprentissage et inférence, 2012.

La vision par ordinateur semble facile, peut-être parce qu’elle est si facile pour les humains.

Au départ, on pensait que c’était un problème trivialement simple qui pouvait être résolu par un étudiant connectant une caméra à un ordinateur. Après des décennies de recherche, la « vision par ordinateur” reste non résolue, du moins en termes de réunion des capacités de la vision humaine.

Faire voir un ordinateur était quelque chose que les principaux experts dans le domaine de l’intelligence artificielle pensaient être au niveau de difficulté d’un projet d’étudiant d’été dans les années soixante. Quarante ans plus tard, la tâche n’est toujours pas résolue et semble redoutable.

— Page xi, Géométrie à vues multiples en vision par ordinateur, 2004.

L’une des raisons est que nous n’avons pas une bonne compréhension du fonctionnement de la vision humaine.

L’étude de la vision biologique nécessite une compréhension des organes de perception comme les yeux, ainsi que l’interprétation de la perception dans le cerveau. Beaucoup de progrès ont été réalisés, à la fois dans la cartographie du processus et en termes de découverte des astuces et des raccourcis utilisés par le système, bien que, comme toute étude impliquant le cerveau, il y ait un long chemin à parcourir.

Les psychologues perceptifs ont passé des décennies à essayer de comprendre le fonctionnement du système visuel et, même s’ils peuvent concevoir des illusions d’optique pour démêler certains de ses principes, une solution complète à ce casse—tête reste insaisissable

– Page 3, Vision par ordinateur: Algorithmes et applications, 2010.

Une autre raison pour laquelle c’est un problème aussi difficile est la complexité inhérente au monde visuel.

Un objet donné peut être vu de n’importe quelle orientation, dans n’importe quelle condition d’éclairage, avec n’importe quel type d’occlusion d’autres objets, et ainsi de suite. Un véritable système de vision doit être capable de ”voir » dans n’importe laquelle d’un nombre infini de scènes et d’extraire toujours quelque chose de significatif.

Les ordinateurs fonctionnent bien pour les problèmes étroitement liés, pas pour les problèmes ouverts sans limites comme la perception visuelle.

Tâches en vision par ordinateur

Néanmoins, il y a eu des progrès dans le domaine, en particulier ces dernières années avec des systèmes de base pour la reconnaissance optique des caractères et la détection des visages dans les caméras et les smartphones.

La vision par ordinateur est à un point extraordinaire de son développement. Le sujet lui-même existe depuis les années 1960, mais ce n’est que récemment qu’il a été possible de construire des systèmes informatiques utiles en utilisant des idées de vision par ordinateur.

— Page xviii, Vision par ordinateur: Une approche moderne, 2002.

Le manuel de 2010 sur la vision par ordinateur intitulé « Vision par ordinateur: Algorithmes et applications » fournit une liste de problèmes de haut niveau pour lesquels nous avons connu du succès avec la vision par ordinateur.

  • Reconnaissance optique de caractères (OCR)
  • Inspection de la machine
  • Vente au détail (par ex. caisses automatisées)
  • Construction de modèles 3D (photogrammétrie)
  • Imagerie médicale
  • Sécurité automobile
  • Déplacement de correspondance (par ex. Capture de mouvement (mocap)
  • Surveillance
  • Reconnaissance d’empreintes digitales et biométrie

C’est un vaste domaine d’étude avec de nombreuses tâches et techniques spécialisées, ainsi que des spécialisations pour cibler les domaines d’application.

La vision par ordinateur a une grande variété d’applications, à la fois anciennes (par exemple, la navigation par robot mobile, l’inspection industrielle et le renseignement militaire) et nouvelles (par exemple., interaction homme-machine, récupération d’images dans des bibliothèques numériques, analyse d’images médicales et rendu réaliste de scènes synthétiques en infographie).

— Page xvii, Vision par ordinateur: Une approche moderne, 2002.

Il peut être utile de zoomer sur certaines des tâches de vision par ordinateur les plus simples que vous êtes susceptible de rencontrer ou que vous souhaitez résoudre étant donné le grand nombre de photographies et de vidéos numériques disponibles au public.

De nombreuses applications de vision par ordinateur populaires impliquent d’essayer de reconnaître des choses sur des photographies; par exemple:

  • Classification des objets : Quelle est la grande catégorie d’objets dans cette photographie?
  • Identification d’objet : Quel type d’objet se trouve sur cette photographie ?
  • Vérification de l’objet : L’objet est-il sur la photo ?
  • Détection d’objets : Où sont les objets sur la photo ?
  • Détection de repère d’objet : Quels sont les points clés de l’objet sur la photo ?
  • Segmentation d’objet : Quels pixels appartiennent à l’objet de l’image ?
  • Reconnaissance d’objets : Quels sont les objets sur cette photo et où sont-ils ?

D’autres exemples courants sont liés à la recherche d’informations; par exemple: trouver des images comme une image ou des images contenant un objet.

Pour en savoir plus

Cette section fournit plus de ressources sur le sujet si vous cherchez à aller plus loin.

Livres

  • Vision par ordinateur: Modèles, Apprentissage et inférence, 2012.
  • Programmation de la vision par Ordinateur avec Python, 2012.
  • Géométrie à vues multiples en Vision par ordinateur, 2004.
  • Vision par ordinateur: Algorithmes et applications, 2010.
  • Vision par ordinateur: Une approche moderne, 2002.

Articles

  • Vision par ordinateur, Wikipedia.
  • Vision industrielle, Wikipedia.
  • Traitement d’images numériques, Wikipedia.

Résumé

Dans cet article, vous avez découvert une introduction douce au domaine de la vision par ordinateur.

Plus précisément, vous avez appris:

  • L’objectif du champ de la vision par ordinateur et sa distinction avec le traitement d’images.
  • Ce qui rend le problème de la vision par ordinateur difficile.
  • Problèmes ou tâches typiques poursuivis en vision par ordinateur.

Avez-vous des questions?
Posez vos questions dans les commentaires ci-dessous et je ferai de mon mieux pour y répondre.

Développez des Modèles d’Apprentissage profond pour la Vision Aujourd’hui!

Apprentissage profond pour la Vision par Ordinateur

Développez Vos Propres Modèles de Vision en Quelques Minutes

…avec seulement quelques lignes de code python

Découvrez comment dans mon nouvel Ebook:
Deep Learning for Computer Vision

Il fournit des tutoriels d’auto-apprentissage sur des sujets tels que:
classification, détection d’objets (yolo et rcnn), reconnaissance faciale (vggface et facenet), préparation de données et bien plus encore…

Apportez enfin l’Apprentissage profond à vos projets de vision

Évitez les universitaires. Juste des résultats.

Voir ce qu’il y a à l’intérieur

Tweet Partager Partager

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.