Qu’est-ce que la reconnaissance d’images ?

Auteurs

Tim Mucci

IBM Writer

Gather

Qu’est-ce que la reconnaissance d’images ?

La reconnaissance d’images est une application du machine learning (ML) qui permet aux logiciels et aux appareils d’identifier des objets, des lieux, des personnes, des écritures et des actions dans des images ou des vidéos numériques.

La technologie de reconnaissance d’images permet aux ordinateurs d’identifier les défauts des produits, aide les professionnels de santé à repérer les anomalies et fait partie intégrante du développement des véhicules autonomes.

La reconnaissance d’images est une tâche essentielle de la vision par ordinateur, le domaine plus large de la technologie de l’intelligence artificielle (IA) qui permet aux logiciels et aux machines de comprendre et de réagir aux données visuelles.

Les ingénieurs exploitent des modèles de machine learning et d’apprentissage profond traditionnels pour la reconnaissance d’images. Ces approches sont généralement distinctes, et leur utilisation combinée ou indépendante dépend du problème spécifique et des ressources requises.

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

La reconnaissance d’images avec le machine learning traditionnel
 

Le machine learning fait appel à des algorithmes qui classent les images en fonction de caractéristiques extraites manuellement par des ingénieurs. Les ingénieurs prétraitent les images et les analysent en fonction de l’objectif ou du problème spécifique qu’ils tentent de résoudre par la reconnaissance d’images.

Il peut s’agir d’identifier des visages, de détecter des objets ou de classer les textures. Dans chaque cas, l'ingénieur utilise ses connaissances en la matière pour pré-traiter les images et entraîner l'algorithme.

Logiciel de reconnaissance d’images s’appuyant sur la détection d’objets pour distinguer certains types de véhicules Logiciel de reconnaissance d’images s’appuyant sur la détection d’objets pour distinguer certains types de véhicules

Normalisation

Les ingénieurs préparent les images pour l’analyse en les normalisant, c’est-à-dire en mettant les valeurs des pixels à l’échelle d’une plage standard, généralement comprise entre 0 et 1 ou entre -1 et 1, afin que les données soient cohérentes et plus faciles à traiter par les modèles de machine learning.

Le prétraitement consiste également à redimensionner les images, à les convertir en niveaux de gris pour réduire la complexité des calculs ou à supprimer le bruit grâce aux techniques de filtrage gaussien. Dans le domaine de la reconnaissance d’images, le « bruit » désigne toute variation indésirable ou aléatoire des pixels, par exemple, une image mouchetée, granuleuse, floue ou déformée.

Extraction de caractéristiques

Ensuite, les ingénieurs doivent sélectionner les caractéristiques qui fournissent les informations les plus significatives. Il peut s’agir des contours lors de la détection de formes ou de l’intensité des couleurs si le résultat consiste à distinguer les objets par leur tonalité. Comme les modèles de machine learning s’appuient sur des caractéristiques extraites manuellement, les étiquettes d’annotation des données fournissent des informations essentielles.

En annotant les objets d’intérêt dans les images, les modèles peuvent plus facilement reconnaître et classer des objets spécifiques tels que « chat » ou « chien ». Des données annotées avec précision permettent aux algorithmes de machine learning d’apprendre les caractéristiques visuelles de chaque catégorie avec exactitude.

Encodage pour le machine learning
 

Les ingénieurs extraient ces caractéristiques et les convertissent en vecteurs numériques pour faciliter le traitement et la comparaison des images par les modèles de machine learning. Les ingénieurs traduisent chaque image en vecteur dont les caractéristiques ont une longueur fixe, à savoir une liste de chiffres résumant son importance.

Reconnaissance d’images et apprentissage profond
 

À l’inverse, les modèles d’apprentissage profond peuvent apprendre directement à partir de l’image. L’apprentissage profond, un sous-ensemble du machine learning, s’appuie sur des réseaux de neurones multicouches pour accomplir des tâches complexes de prétraitement et de reconnaissance d’images, mais au prix d’exigences plus élevées en matière de calcul et de données.

Les réseaux de neurones convolutifs (CNN) sont des architectures d’apprentissage profond dotées de couches convolutives qui analysent et apprennent la nature structurée des données d’image.

Couche d’entrée
 

Le réseau de neurones profond du CNN détecte automatiquement la valeur brute des pixels de l’image. Le CNN transmet ces informations à travers les couches du réseau profond pour extraire des schémas et faire des prédictions sur l’image.

Ce processus commence par la couche d’entrée du réseau. La couche d’entrée traite les valeurs brutes des pixels de l’image sous la forme d’une grille d’intensités numériques, pour ensuite les transmettre aux couches suivantes afin d’en extraire les schémas.

Extraction de caractéristiques

La couche convolutive applique ensuite de petits filtres (ou noyaux) sur l’image pour détecter des motifs locaux tels que des bords ou des textures. La convolution réduit le besoin d’extraction manuelle des caractéristiques, car le réseau peut apprendre les motifs directement à partir des données.

Après chaque convolution, une fonction d’activation introduit une non-linéarité dans le modèle, ce qui permet au réseau d’apprendre des motifs, des formes et des objets complexes en empilant plusieurs couches.

Pooling et aplatissement

Les couches de pooling sous-échantillonnent l’image pour réduire sa taille, tout en conservant ses caractéristiques importantes, afin de s’assurer que le modèle est assez puissant pour gérer des variations telles que les légères rotations ou encore les décalages dans l’image.

Après avoir extrait les caractéristiques, le réseau aplatit les données pour obtenir un vecteur unidimensionnel qu’il fait passer à travers les couches entièrement connectées. Ces couches intègrent les schémas appris lors des étapes précédentes afin d’identifier les relations complexes et d’affiner le processus de classification.

Couche de sortie
 

Enfin, les données atteignent la couche de sortie, qui consolide les caractéristiques extraites et émet une prédiction finale. Cette dernière est comparée au jeu de données d’entraînement annoté pour calculer les erreurs et ajuster les poids du réseau afin d’améliorer la précision.

Par exemple, pour entraîner un modèle à reconnaître des images de chats, les ingénieurs font appel à l’apprentissage supervisé : ils étiquettent des milliers d’images en tant que « chat » ou « pas chat », afin que le modèle puisse apprendre des caractéristiques importantes telles que la texture de la fourrure, les moustaches et la forme des oreilles.

Quant à l’apprentissage non supervisé, le modèle fonctionne avec des données non étiquetées pour découvrir les schémas de manière indépendante. Le modèle identifie les relations sans catégories prédéfinies en regroupant les images en fonction des caractéristiques communes (par exemple, les formes ou les textures similaires).

Cette approche est utile pour des tâches telles que la détection des fraudes, le contrôle qualité et l’analyse des tendances lorsque les données étiquetées ne sont pas disponibles. Dans l’apprentissage non supervisé, le modèle regrouperait indépendamment les images en fonction de tendances communes, en regroupant toutes les images de chats sans savoir explicitement qu’il s’agit de chats.

Une troisième approche, l’apprentissage auto-supervisé, combine des aspects de l’apprentissage non supervisé en commençant par des données non étiquetées mais en générant des pseudo-étiquettes à partir de la structure inhérente des données. Cela permet aux modèles d’apprendre des représentations significatives sans étiquettes traditionnelles, leur conférant ainsi une efficacité accrue pour les tâches avec des jeux de données étiquetées limités.

L’apprentissage auto-supervisé permet au modèle d’analyser certaines parties de l’image pour en identifier les schémas et les caractéristiques (par exemple, la reconstruction d’une tête de chat partiellement obscurcie). En s’appuyant sur le machine learning ou sur l’apprentissage profond, le modèle entraîné pourra ainsi identifier et classer avec précision d’autres images de chats, en les distinguant des autres animaux ou objets.

Reconnaissance d’images à l’aide de cadres de délimitation pour classer les véhicules Reconnaissance d’images à l’aide de cadres de délimitation pour classer les véhicules

Les défis de la reconnaissance d’images
 

Bien que les technologies de reconnaissance d’images aient progressé, elles sont encore confrontées à des défis qui impactent leur précision et leur fiabilité. Les ingénieurs atténuent ces problèmes en alliant des architectures de modèles améliorées, des jeux de données d’entraînement diversifiés et des techniques de prétraitement.

Images trop chargées ou obscurcies
 

L’apprentissage supervisé exploite des données étiquetées : chaque image est correctement associée à une catégorie pour guider l’algorithme à l’aide d’exemples clairs. Par exemple, pour entraîner un système à reconnaître les voitures, on utilise un jeu de données étiqueté « chat » et « pas chat ». Le modèle apprend ensuite faire la différence en fonction des schémas visuels présents dans ces exemples étiquetés.

Variations d’angle et de perspective

Dans l’apprentissage non supervisé, l’algorithme exploite des données non étiquetées et découvre des modèles de manière indépendante. Cela revient à donner à un enfant une boîte de jouets à trier par similarité ; les algorithmes non supervisés regroupent les images en fonction de caractéristiques communes (par exemple, les moustaches, la fourrure, les quatre pattes et la queue) sans connaître les catégories explicites.

Luminosité

Les changements d’éclairage, tels que les ombres, les variations de luminosité ou les environnements peu éclairés, peuvent avoir un impact sur les performances des systèmes de reconnaissance d’images. Les zones de forte luminosité peuvent effacer des détails, tandis que les ombres peuvent masquer des caractéristiques essentielles, ce qui peut entraîner une mauvaise interprétation de la forme ou de la couleur d’un objet par le modèle.

Des méthodes avancées telles que l’égalisation adaptative de l’histogramme ou l’intégration de données d’entraînement dans des conditions d’éclairage variables permettent aux modèles d’être plus performants dans différents environnements d’éclairage.

Limites des données d’entraînement
 

Les performances d’un modèle de reconnaissance d’images dépendent de la diversité et de la qualité des données d’entraînement. Les modèles entraînés sur des jeux de données composés principalement d’images idéalisées à haute résolution peuvent rencontrer des difficultés lorsqu’ils sont confrontés à des variations de moindre qualité ou issues du monde réel.

Pour y remédier, les ingénieurs organisent des jeux de données divers, représentatifs des conditions réelles. Des techniques telles que l’apprentissage par transfert permettent aux modèles pré-entraînés d’utiliser les connaissances acquises à partir de grands jeux de données robustes et d’améliorer leur performance, même avec des données restreintes.

Taille et proximité des objets
 

La taille d’un objet dans une image, influencée par sa proximité avec la caméra, peut affecter la capacité du modèle à l’identifier avec précision. Les petits objets peuvent ne pas présenter suffisamment de détails pour être reconnus, tandis que les objets trop proches peuvent sembler déformés ou trop grands pour que le modèle puisse les classer correctement.

Pour y remédier, les ingénieurs entraînent les modèles sur des jeux de données qui incluent des objets de tailles et de distances variables. Ils associent également techniques de traitement d’image multi-échelle et pyramides de caractéristiques pour s’assurer que le modèle pourra traiter des objets de toutes tailles.

Mixture of Experts | 12 décembre, épisode 85

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l’actualité et des dernières tendances dans le domaine de l’IA.

Reconnaissance d’images et détection d’objets
 

La détection d’objets étend la reconnaissance d’images en identifiant les objets et en localisant leur emplacement dans une image. Cette technique permet au système de répondre à des questions telles que « Où se trouve le chat sur cette photo ? » ou « Combien de chats y a-t-il dans la scène ? ». La détection d’objets fournit davantage de contexte, car elle reconnaît les objets ainsi que leur position, leur taille et leur orientation dans le cadre.

Ainsi, au lieu d’identifier « un chat » sur une photo, la détection d’objets permet à l’ordinateur de préciser « un chat est assis sur le canapé dans le coin gauche de la photo », ce qui permet de comprendre l’espace de la scène et les relations entre les objets.

Les tâches de reconnaissance d’images peuvent également varier en complexité. La catégorisation ou classification d’images consiste à attribuer une étiquette unique à une image entière en fonction de son contenu, répondant ainsi à la question « Qu’y a-t-il sur cette image ? ».

Par exemple, un modèle entraîné sur des jeux de données étiquetés, contenant des chats et des chiens, apprend à faire la distinction entre les deux en identifiant leurs caractéristiques uniques. Lorsqu’une nouvelle image lui est présentée, le modèle analyse ces caractéristiques pour prédire s’il s’agit d’un chat ou d’un chien.

Les modèles font appel à des cadres de délimitation pour cerner ces objets individuels, les séparer de l’arrière-plan et indiquer où chaque objet commence et se termine. Cette précision est essentielle pour des applications telles que la conduite autonome, où la détection précise d’objets tels que les véhicules, les piétons et les panneaux de signalisation est primordiale pour la sécurité.

Évolution des utilisations de la reconnaissance d’images
 

La reconnaissance d’images progresse rapidement, ouvrant la voie à des applications plus sophistiquées dans de nombreux secteurs et cas d’utilisation. Voici certaines des applications dominantes de la reconnaissance d’images dans le monde réel :

Véhicules autonomes

De nombreux smartphones sont équipés d’une technologie de reconnaissance faciale pour permettre aux utilisateurs de déverrouiller leur appareil en regardant l’écran. Désormais courante, cette application de la reconnaissance d’images permet aux systèmes de reconnaître les traits de chaque visage pour vérifier l’identité de l’utilisateur.

Reconnaissance faciale

La reconnaissance faciale est également largement utilisée dans la sécurité et la surveillance pour identifier les personnes présentes à partir de flux vidéo. Cette technologie permet aux forces de l’ordre de suivre les suspects dans les lieux publics, tandis que les entreprises s’en servent pour contrôler l’accès dans leurs locaux.

Gestion et modération des réseaux sociaux
 

Grâce à la reconnaissance d’images, les plateformes de réseaux sociaux identifient et reconnaissent les visages des personnes (amis ou famille) pour suggérer des étiquettes sur les photos. Les réseaux sociaux utilisent également des filtres RA qui détectent les points de repère d’un visage pour y positionner des éléments virtuels tels que des lunettes ou des oreilles d’animaux, de manière à suivre les mouvements du visage.

En outre, ces plateformes utilisent la reconnaissance d’images pour modérer le contenu en filtrant les images inappropriées, en assurant la sécurité de la plateforme et en améliorant l’expérience utilisateur.

Lunettes intelligentes et informations en temps réel
 

S’appuyant sur les applications actuelles de réalité augmentée (RA) dans les appareils mobiles, les lunettes intelligentes équipées d’un logiciel de reconnaissance d’images peuvent offrir aux utilisateurs des vues augmentées de leur environnement, en superposant des informations en temps réel sur les objets et les lieux.

La technologie de réalité augmentée (RA) fournit des données contextuelles sur tout ce que l’utilisateur regarde, de l’identification des attractions touristiques à la récupération des informations sur les produits dans une boutique.

Appareils électroménagers

Dans le cas des appareils électroménagers, la reconnaissance d’images permet des fonctionnalités telles que le suivi des stocks par les réfrigérateurs intelligents, la détection des obstacles par les aspirateurs robotisés et la reconnaissance de personnes ou d’objets par les caméras de sécurité.

Elles permettent également d’exécuter des fonctions telles que la détection du type de tissu dans les machines à laver, la reconnaissance des aliments dans les fours intelligents et l’analyse faciale dans les miroirs intelligents ou les interphones pour bébé.

Les robots de livraison s’appuient sur la reconnaissance d’images pour naviguer dans les environnements, détecter les obstacles et identifier les lieux de livraison afin d’effectuer des expéditions autonomes précises et efficaces.

Dans les entrepôts et les environnements industriels, les robots exploitent la même technologie pour scanner et récupérer des articles, effectuer des contrôles qualité, assembler des pièces et trier des matériaux.

Imagerie médicale

L’analyse d’images médicales aide les professionnels de santé à analyser les radiographies, les IRM et les scanners. Ces systèmes sont capables de détecter des anomalies susceptibles d’être invisibles à l’œil humain comme les premiers signes d’un cancer du poumon, d’un accident vasculaire cérébral ou d’une tumeur, ce qui permet d’accélérer le diagnostic.

Merative, anciennement IBM Watson Health, applique la reconnaissance d’images pour analyser des données d’imagerie complexes et permettre aux radiologues de détecter des éléments critiques.

La reconnaissance d’images médicales progresse grâce aux diagnostics alimentés par l’IA, ce qui permet aux systèmes de reconnaissance d’images de détecter plus précisément les maladies à un stade précoce.

Déjà employée dans des domaines tels que la détection des tumeurs, cette technologie aide les spécialistes en leur fournissant une « deuxième paire d’yeux » hautement qualifiée pour les diagnostics avancés, en particulier dans les domaines où les moindres détails sont essentiels.

Reconnaissance optique de caractères (OCR)

La technologie OCR permet de numériser du texte imprimé en scannant des documents, des livres et des reçus. Les applications l’utilisent pour reconnaître et convertir du texte imprimé en formats numériques que les utilisateurs peuvent modifier ou rechercher. L’OCR a été l’un des premiers cas d’utilisation critique de la reconnaissance d’images, qui a contribué à ouvrir la voie à une numérisation généralisée dans tous les secteurs.

Gestion de documents
 

Les banques et les institutions financières s’appuient sur la reconnaissance d’images pour automatiser les vérifications et le traitement des documents tels que les pièces d’identité, afin de réduire la fraude et de rationaliser l’accueil des nouveaux clients. La technologie scanne les images des documents pour relever les informations essentielles, les vérifie et signale toute anomalie à des fins d’examen.

Solutions connexes
IBM Maximo Visual Inspection

Exploitez toute la puissance de la vision par ordinateur no-code pour l'automatisation des inspections visuelles.

Explorez Maximo Visual Inspection
Conseil et services en Intelligence Artificielle (IA)

IBM Consulting et ses services d'IA accompagnent les entreprises dans la redéfinition de leurs activités avec l'intelligence artificielle pour mener leur transformation.

Découvrez les services d’intelligence artificielle
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise grâce à l’expertise de pointe d’IBM en matière d’IA et à son portefeuille de solutions.

Découvrir les solutions d’IA
Passez à l’étape suivante

IBM Maximo Visual Inspection met la puissance de la vision par ordinateur basée sur l’IA entre les mains de vos équipes en charge du contrôle qualité et des inspections. Libérez tout le potentiel de la vision par ordinateur no-code pour automatiser vos inspections visuelles.

Explorez Maximo Visual Inspection Découvrir le produit