La vision artificielle ou vision par ordinateur est un sous domaine de l’intelligence artificielle. Ses techniques visent à doter un ordinateur d’une vision imitant la vision humaine. Ce système complexe peut non seulement voir, mais également comprendre et interpréter ce qui l’entoure.
Les techniques d’analyse d’images (ou de vidéos) en masse n’ont jamais été aussi pertinentes qu’aujourd’hui. Les images et les vidéos font partie des contenus les plus créés et partagés sur internet, comme dans les réseaux privés. Ces données visuelles ont un fort potentiel d’exploitation pour de nombreux secteurs comme la santé, l’industrie ou l’automobile, encore faut-il savoir comment s’y prendre.
Comprendre ce qu’est la vision artificielle
Comment la vision artificielle fonctionne ?
Pour la machine, une image est un ensemble de nombres qui représentent différentes intensités dans le spectre de couleurs. Le Machine Learning permet d’entrainer un réseau de neurones à comprendre ce que ces chiffres représentent dans une certaine organisation.
C’est grâce aux réseaux de neurones convolutifs (ou CNN) que la machine peut donner un sens à l’ensemble des données qui constituent l’image. Le réseau est entrainé avec une base données annotée en fonction des éléments que l’on souhaite reconnaitre, et à chaque passage, il comprend de mieux en mieux les images.
Pour être en mesure de comprendre une série d’images liées les unes aux autres, comme dans une vidéo, il faut avoir recours aux réseaux de neurones récurrents (ou RNN) qui permettent d’introduire une temporalité dans l’interprétation des images.
Les réseaux neuronaux convolutifs sont utiles pour la reconnaissance et la classification d’images, ainsi que pour la détection et localisation d’objets sur une image. Tandis que les réseaux neuronaux récurrents, qui prennent en compte les dépendances entre un contenu, celui qui le précède et celui qui le succède, sont utiles pour la compréhension de vidéos, mais aussi de nombreux autres cas d’usage, comme la compréhension de texte.
Les applications de la vision artificielle
Reproduire toute la complexité du système de vision humain, ça n’est pas réellement l’objectif de la vision artificielle. La vision artificielle sert à réaliser des tâches prédéfinies avec un objectif précis, en voici quelques exemples :
La classification : la machine analyse le contenu visuel et peut détecter la présence de certains « objets » qui ont été catégorisés. Elle pourra ensuite classer les contenus visuels selon la présence ou non de certains « objets ». En prenant l’exemple ci-dessous, la machine pourra identifier la présence d’une moto, d’un piéton ou d’une voiture de manière générale dans l’image.
La détection : la machine va analyser le contenu, identifier la présence de certains « objets » et les localiser. On pourra alors voir les différents éléments recherchés entourés d’une case de différentes couleurs selon la catégorie de l’objet.
La segmentation : la machine va repérer automatiquement la présence d’objet au travers de masques (zones de pixels) qui représentent chaque objet identifié dans l’image. Il existe deux types de segmentation, la segmentation sémantique et la segmentation d’instance, comme illustré ci-dessous. La segmentation sémantique vise à identifier les pixels d’une image appartenant ou non à une certaine catégorie d’objets tandis que la segmentation par instance permet d’identifier les différentes instances d’une même catégorie d’objet.
Quelques exemples concrets de vision artificielle
L’automobile
Les voitures autonomes peuvent fonctionner seules grâce à des caméras qui retransmettent les images de son environnement à des réseaux de neurones. Ces derniers lui permettent de comprendre ce qu’il se passe autour d’elle et de réagir en conséquence. La plupart des voitures autonomes peuvent ainsi assurer de manière indépendante la perception de la conduite, le contrôle des mouvements ainsi que l’estimation des distances.
La gestion des déchets et recyclage
Des systèmes de reconnaissance de déchets permettent d’identifier, vérifier et analyser la composition de grands volumes de déchets. Ces machines offrent une fiabilité et efficacité dépassant grandement celle du tri à la main.
L’agriculture
La vision artificielle permet d’automatiser un grand nombre de tâches dans l’agriculture telles que la détection de la floraison, la détection de maladies, le contrôle et suivi des cultures et des plantations, la détection d’insectes ou encore les tests de qualités des produits. Cela est possible grâce à des drones fournissant des images aériennes, qui apportent de nombreux détails sur la composition des cultures et du sol. Ces données, liées à un système intelligent, permettent de construire des rapports détaillés aux agriculteurs, les aidants ainsi à être plus efficace et à prendre les bonnes décisions.
La médecine
Les images jouent un rôle clé dans les diagnostics médicaux. Les IRM, les rayons X ou la mammographie ne sont que quelques-uns des diagnostics fondés sur le traitement d’image. La vision artificielle permet de détecter des anomalies et de les évaluer en fonction de leur gravité. Google affirme que la vision artificielle permet de détecter les métastases du cancer avec une précision bien supérieure à celle des médecins humains.
L’industrie
La vision artificielle peut être utilisée pour vérifier la conformité et la qualité des produits. Les contrôle de qualité concernant le produit ou son conditionnement, peuvent être automatisés et intégrés directement aux systèmes de gestion de l’usine.
De manière détachée d’un secteur en particulier, la vision artificielle peut être grandement utile pour les tâches relatives au contrôle de la qualité et au suivi de travaux manuels, comme les services assurés par des opérateurs sur le terrain. Les opérateurs peuvent aujourd’hui être dotés d’applications qui peuvent détecter et analyser la conformité et la qualité du service apporté en se basant sur des photos prises à différents moments de l’intervention.
Les bénéfices de la vision artificielle
Amélioration de la qualité : la vision artificielle permet de contrôler la qualité des produits et des processus avec une précision bien plus élevée que celles des humains. Elle permet de vérifier leur conformité à grande échelle.
Augmentation de la productivité : la vision artificielle permet de réaliser en un temps records, des tâches répétitives et parfois très chronophages pour un humain. Cela permet aux employés de se concentrer sur des tâches à plus grande valeur ajoutée.
Réduction des coûts : la précision de la machine minimise les erreurs et baisse considérablement le nombre de services ou produits défectueux. Elle permet ainsi à l’organisation d’économiser sur les couts de réparation de produit et d’amélioration des processus.
Amélioration de la visibilité sur les opérations : en digitalisant des opérations, on crée de nouvelles sources de données qui peuvent être valorisées. Toutes les données venant du système de vision artificielle permettent d’avoir une meilleure compréhension globale d’une opération, du sujet étudié, ou encore d’un processus.
Conservation et partage des expertises : la vision artificielle et le réseau de neurone avec lequel elle fonctionne, sont alimentés par les connaissances des travailleurs les plus expérimentés sur un sujet. Lié à une bonne application, le système permet de sauvegarder ces connaissances métier et de les restituer aux bonnes personnes au bon moment. Pour les nouvelles recrues, ce système joue un rôle de « guide » qui leur permet de capter et d’intégrer les connaissances métiers.
Octroi d’un avantage concurrentiel : la machine permet d’obtenir une meilleure qualité, une meilleure efficacité, une réduction des coûts… ce sont des avantages importants pour une entreprise qui souhaite se différencier de ses concurrents, gagner des nouvelles parts de marché et de nouveaux contrats.
Se lancer dans un projet de vision artificielle : par où commencer ?
Les conditions pour automatiser un processus grâce à la vision artificielle
Avant de se lancer dans un projet de vision artificielle, il faut tout d’abord s’assurer que le problème auquel on souhaite répondre peut-être résolu par la reconnaissance d’image. Pour cela, il faut que le processus remplisse trois conditions :
- Le processus doit être principalement visuel
- Le processus doit être réalisable par un humain
- Le processus doit être faisable à partir de photos ou de vidéos
S’il remplit ces trois conditions, nous pouvons être certains que la vision artificielle saura répondre au problème.
Les étapes à suivre pour mettre en place un système de vision artificielle
1. Lister les cas d’usages pertinents
Une fois que l’on a identifié toutes les problématiques qui peuvent être résolues par la vision artificielle, il est temps de définir les cas d’usage. Pour chaque cas d’application de la vision artificielle, les bénéfices attendus doivent être définis pour pouvoir porter le projet auprès de la direction générale et les convaincre de l’intérêt de cet investissement.
2. Choisir entre deux approches
Pour se doter des technologies de vision artificielle, deux options sont possibles : l’achat d’un système existant ou la conception de son propre système. L’achat d’un système existant offre une certaine rapidité dans la mise en production et permet d’avoir un produit et une infrastructure déjà prêts. Néanmoins, la conception de son propre système permet de déployer des cas d’usage bien plus personnalisés et à haute valeur ajoutée, ce qui accroit les chances d’atteindre les bénéfices attendus.
Lancer son projet de vision artificielle avec le Lab’Inno de DataValue Consulting
Le Lab’Inno de DataValue Consulting maintient une veille active sur les nouveaux formalismes d’algorithmes traitant des thèmes susmentionnés. Fort de plusieurs années de développements expérimentaux et de résultats éprouvés dans nombreux cas clients, le Lab dispose sur étagère, une librairie de modules algorithmiques génériques pré-calibrés et activables à la volée. Des résultats d’expérimentations sur certains cas d’usages métiers sont rendus disponibles en moins d’une semaine, moyennant entre autres une phase d’appropriation de l’objectif métier, et une phase d’interfaçage de ces modules avec le modèle de données construit au préalable.
3. La conception du système de vision artificielle
La conception de la solution passe par trois grandes étapes. La première est la conception du workflow : il ne suffit pas de créer un réseau de neurones performant, il faut le mettre en relation avec les règles et les applications métiers, qui lui permettront de réellement délivrer une valeur ajoutée. Le système ne livrera pas une simple réponse, il livrera directement la décision et les actions à mettre en œuvre en conséquence. Pour arriver à un workflow performant, il est nécessaire de s’aligner sur les équipes métiers et de les impliquer tout au long du projet.
La deuxième étape consiste à définir l’architecture de déploiement. Les réseaux de neurones demandent une certaine consommation en énergie et/ou en connexion internet. L’architecture de déploiement dépend du cas d’usage : si le système doit fonctionner dans des zones blanches ou en temps réel, il faudra développer une application qui fonctionne entièrement sur mobile. Si les utilisations du système se font essentiellement dans une zone couverte par un réseau internet, on peut concevoir un système sur le cloud. Si le système doit traiter des volumes très importants de données en temps réel, il faudra se tourner vers un hébergement sur des serveurs locaux.
La troisième étape est cruciale pour assurer l’adoption des nouveaux processus : les potentiels freins au changement doivent être anticipés et les équipes en charge du projet doivent planifier la gestion de la transformation. Il est conseillé d’organiser des ateliers pour former les futurs utilisateurs et les autres collaborateurs à l’intégration de cette nouvelle technologie, et à l’adaptation des processus impactés par ce changement.
Où trouver les données qui serviront à entrainer les réseaux de neurones ?
La base de données d’entrainement peut être composée des données historiques de l’entreprise. Si elles ne sont pas suffisantes, on peut alors se tourner vers des campagnes d’acquisition de données, ou vers des simulations. Une fois le système déployé, toutes les images capturées contribueront également à enrichir la base de données d’entrainement.
4. La mise en place du projet
Dès la mise en place du projet, le système doit être conçu pour accueillir les évolutions futures. La réalisation d’une roadmap est essentielle pour orchestrer le projet et son déploiement. On pourra ensuite lancer la réalisation d’un MVP et déployer le processus d’amélioration continue, tout en assurant l’intégration IT du système.
Conclusion
C’est dans une variété de secteur que l’intelligence artificielle permet d’exceller dans des tâches chronophages et soumises à l’erreur humaine. La vision artificielle, comme toute technologie, doit être optimisée pour des situations et des problématiques spécifiques. Tout le travail préparatoire de conception du système définira l’efficacité de la solution. Les connaissances techniques doivent être liées aux connaissances métier pour en tirer un maximum de bénéfices.
En cas de manques de compétences techniques, il est fortement conseillé de s’entourer d’experts, comme le Lab’Inno de DataValue Consulting pour assurer les aspects techniques du projet, mais également pour apporter ces expertises aux utilisateurs de la technologie.