La vision par ordinateur (Computer Vision), souvent appelée CV, est un domaine de recherche qui utilise la technologie pour aider les ordinateurs à « voir » et à « comprendre » les images, par exemple en permettant aux ordinateurs de comprendre le contenu de photos ou de vidéos. .
Cet article fournira une introduction générale à la vision par ordinateur. Cet article est divisé en six parties, qui sont :
Physiologiquement, la génération de la vision commence par l'excitation des cellules sensorielles de l'organe visuel, et le système nerveux visuel traite les informations collectées plus tard. Nous, les humains, utilisons la vision pour comprendre intuitivement la forme et l’état des choses devant nous. La plupart d’entre nous comptent sur la vision pour cuisiner, franchir les obstacles, lire les panneaux de signalisation, regarder des vidéos et d’innombrables autres tâches. En fait, s'il n'y avait pas des groupes particuliers comme les aveugles, la grande majorité des gens obtiennent des informations externes par la vue, et cette proportion atteint 80 % - cette proportion n'est pas sans fondement, selon le célèbre psychologue expérimental Treicher. a confirmé par un grand nombre d'expériences que 83 % des informations que l'homme obtient proviennent de la vision, 11 % de l'ouïe et les 6 % restants proviennent de l'odorat, du toucher et du goût. Par conséquent, pour l’homme, la vision est sans aucun doute le sens le plus important.
Non seulement les humains sont des « animaux visuels », mais pour la plupart des animaux, la vision joue également un rôle très important. Grâce à la vision, les humains et les animaux perçoivent la taille, la lumière et l'ombre, la couleur et le mouvement des objets externes et obtiennent diverses informations importantes pour la survie du corps. Grâce à ces informations, ils peuvent apprendre à quoi ressemble le monde environnant. comment interagir avec le monde.
Avant l'avènement de la vision par ordinateur, les images étaient dans un état de boîte noire pour les ordinateurs. Pour un ordinateur, une image n’est qu’un fichier ou une chaîne de données. L'ordinateur ne sait pas quel est le contenu de l'image. Il sait seulement quelle est sa taille, combien de mémoire elle occupe, dans quel format elle se trouve, etc.
Si les ordinateurs et l'intelligence artificielle veulent jouer un rôle important dans le monde réel, ils doivent comprendre les images ! C'est pourquoi, depuis un demi-siècle, les informaticiens tentent de trouver des moyens de rendre les ordinateurs visibles, ce qui donne naissance au domaine de la « vision par ordinateur ».
Le développement rapide d'Internet a également rendu la vision par ordinateur particulièrement importante. La figure ci-dessous est un graphique de tendance de la quantité de nouvelles données sur le réseau depuis 2020. Les graphiques gris sont des données structurées, les graphiques bleus sont des données non structurées (principalement des images et des vidéos). Il est évident que le nombre de photos et de vidéos augmente à un rythme exponentiel.
Internet est composé de texte et d'images. La recherche de texte est relativement simple, mais pour rechercher des images, l'algorithme doit savoir ce que contient l'image. Pendant longtemps, les humains ne disposaient pas de suffisamment de technologie pour comprendre le contenu des images et des vidéos et ne pouvaient s’appuyer que sur des annotations manuelles pour obtenir des descriptions d’images ou de vidéos. Comment permettre aux ordinateurs de mieux comprendre ces informations d'image est un défi majeur auquel est confrontée la technologie informatique d'aujourd'hui. Afin d'utiliser pleinement les données d'image ou de vidéo, vous devez laisser l'ordinateur « voir » l'image ou la vidéo et en comprendre le contenu.
La vision par ordinateur est une branche importante dans le domaine de l'intelligence artificielle. En termes simples, le problème qu'elle résout est de permettre aux ordinateurs de comprendre le contenu des images ou des vidéos. Par exemple : l'animal sur la photo est-il un chat ou un chien ? La personne sur la photo est-elle Lao Zhang ou Lao Wang ? Que font les personnes dans la vidéo ? En outre, la vision par ordinateur fait référence à l'utilisation de caméras et d'ordinateurs au lieu des yeux humains pour identifier, suivre et mesurer des cibles, ainsi que pour effectuer un traitement graphique afin d'obtenir des images plus adaptées à l'observation de l'œil humain ou à la transmission à des instruments de détection. En tant que discipline scientifique, la vision par ordinateur étudie les théories et technologies connexes, en essayant de construire des systèmes d'intelligence artificielle capables d'obtenir des informations de haut niveau à partir d'images ou de données multidimensionnelles. D'un point de vue technique, il cherche à tirer parti des systèmes automatisés pour imiter le système visuel humain afin d'accomplir des tâches. Le but ultime de la vision par ordinateur est de permettre aux ordinateurs d’observer et de comprendre le monde à travers la vision comme le font les humains, et d’avoir la capacité de s’adapter à l’environnement de manière autonome. Mais il est très difficile de réaliser réellement qu'un ordinateur peut percevoir le monde à travers une caméra, car même si les images capturées par la caméra sont les mêmes que celles que nous voyons habituellement, pour l'ordinateur, toute image n'est qu'un arrangement et une combinaison de pixels. valeurs. Un tas de nombres rigides. Comment permettre aux ordinateurs de lire des indices visuels significatifs à partir de ces nombres rigides est un problème que la vision par ordinateur devrait résoudre.
Tous ceux qui ont utilisé un appareil photo ou un téléphone portable savent que les ordinateurs sont doués pour prendre des photos avec une fidélité et des détails incroyables. Dans une certaine mesure, la « vision » artificielle des ordinateurs est meilleure que celle des ordinateurs. les humains. La capacité visuelle est beaucoup plus forte depuis la naissance. Mais comme on dit habituellement « entendre ne veut pas dire comprendre », « voir » ne veut pas dire « comprendre ». Si l’on veut qu’un ordinateur « comprenne » vraiment les images, ce n’est pas simple. Une image est une grande grille de pixels, et chaque pixel a une couleur, qui est une combinaison de trois couleurs primaires : rouge, vert et bleu. En combinant les intensités de trois couleurs - appelées valeurs RVB - nous pouvons obtenir n'importe quelle couleur. L'algorithme de vision par ordinateur le plus simple et le plus approprié pour commencer est le suivant : pour suivre un objet coloré, comme une balle rose, nous notons d'abord la couleur de la balle, enregistrons la valeur RVB du pixel central, puis transmettons l'image au programme , laissant le programme trouver le pixel le plus proche de cette couleur. L'algorithme peut commencer par le coin supérieur gauche, examiner chaque pixel et calculer la différence par rapport à la couleur cible. Après avoir vérifié chaque pixel, la partie la plus proche des pixels est probablement le pixel où se trouve la balle. Cet algorithme ne se limite pas à s'exécuter sur cette seule image, nous pouvons exécuter l'algorithme sur chaque image de la vidéo pour suivre la position de la balle. Bien sûr, en raison de l'influence de la lumière, de l'ombre et d'autres facteurs, la couleur de la balle changera. Elle ne sera pas exactement la même que la valeur RVB que nous avons enregistrée, mais elle en sera très proche. Cependant, dans certains cas extrêmes, comme un match de football de nuit, l'effet de suivi peut être très faible ; et si l'un des maillots des équipes est de la même couleur que le ballon, l'algorithme sera complètement « évanoui ». Par conséquent, à moins que l’environnement ne puisse être strictement contrôlé, de tels algorithmes de suivi des couleurs sont rarement utilisés en pratique. De nos jours, les algorithmes de vision par ordinateur les plus utilisés impliquent généralement des méthodes et des technologies de « Deep Learning ». Parmi elles, le réseau neuronal convolutif (CNN) est le plus largement utilisé en raison de ses performances supérieures. Les connaissances impliquées dans le « deep learning » étant trop étendues, cet article ne les décrira pas plus en détail. Si vous souhaitez en savoir plus sur le "deep learning", vous pouvez également consulter le cours d'introduction à l'IA - "Intel® OpenVINO™ Tool Suite Elementary Course". Il commence par les concepts de base de l'IA, présente des connaissances pertinentes sur les applications d'intelligence artificielle et de vision, et aide les utilisateurs à comprendre rapidement les concepts de base et les scénarios d'application de la suite d'outils Intel® OpenVINO™. L'ensemble du cours comprend le traitement vidéo, les connaissances liées à l'apprentissage profond, l'accélération d'inférence pour les applications d'intelligence artificielle et des démonstrations de démonstration de la suite d'outils Intel® OpenVINO™. Il vous guide étape par étape pour maîtriser l'apprentissage profond, du plus superficiel au plus profond.
La classification d'images consiste à distinguer différentes catégories d'images en fonction de leurs informations sémantiques. Elle est au cœur de la vision par ordinateur et est la détection d'objets, la segmentation d'images, le suivi d'objets. et analyse du comportement, reconnaissance faciale et autres tâches visuelles de haut niveau. Par exemple, dans l'image ci-dessous, grâce à la classification des images, l'ordinateur reconnaît la personne, l'arbre, l'herbe et le ciel dans l'image.
La classification d'images est largement utilisée dans de nombreux domaines, tels que : la reconnaissance faciale et l'analyse vidéo intelligente dans le domaine de la sécurité, la reconnaissance de scènes de circulation dans le domaine des transports, la récupération d'images basée sur le contenu et la classification automatique des albums photos sur Internet. domaine, Reconnaissance d'images dans le domaine médical, etc.
Le but de la tâche de détection d'objet est de donner une image ou une image vidéo et de laisser l'ordinateur trouver les positions de tous les objets qu'il contient et donner la catégorie spécifique de chaque objet. Comme le montre la figure ci-dessous, en prenant comme exemple la reconnaissance et la détection de personnes, les bordures sont utilisées pour marquer la position de toutes les personnes dans l'image.
Dans la détection de cibles multi-catégories, des bordures de différentes couleurs sont généralement utilisées pour marquer les emplacements des différents objets détectés, comme le montre la figure ci-dessous.
La segmentation sémantique est une tâche fondamentale en vision par ordinateur. Dans la segmentation sémantique, nous devons diviser l'entrée visuelle en différentes catégories sémantiquement interprétables. Il divise l'image entière en groupes de pixels, qui sont ensuite étiquetés et classés. Par exemple, nous pourrions avoir besoin de distinguer tous les pixels d’une image qui appartiennent à des voitures et de colorer ces pixels en bleu. Comme indiqué ci-dessous, l'image est divisée en étiquettes de personnes (rouge), d'arbres (vert foncé), d'herbe (vert clair) et de ciel (bleu).
La segmentation d'instance est une combinaison de détection de cible et de segmentation sémantique. La cible est détectée dans l'image (détection de cible), puis chaque pixel est étiqueté (segmentation sémantique). En comparant les figures ci-dessus et ci-dessous, nous pouvons voir que si des cibles humaines sont utilisées, la segmentation sémantique ne distingue pas les différentes instances appartenant à la même catégorie (toutes les personnes sont marquées en rouge), tandis que la segmentation des instances distingue les différentes instances d'une même catégorie (différentes les couleurs sont utilisées pour distinguer différentes personnes).
Suivi des cibles Le suivi des cibles fait référence à la détection, à l'extraction, à l'identification et au suivi de cibles en mouvement dans des séquences d'images, à l'obtention des paramètres de mouvement des cibles en mouvement, au traitement et à l'analyse, et à la compréhension comportementale des cibles en mouvement pour en savoir plus. Tâches de détection de niveau supérieur.
Les scénarios d'application de la vision par ordinateur sont très larges. Voici quelques scénarios d'application courants dans la vie. ·Reconnaissance faciale sur le contrôle d'accès et Alipay
Actuellement, la technologie de vision par ordinateur se développe rapidement et a atteint une échelle industrielle préliminaire. Le développement futur de la technologie de vision par ordinateur est principalement confronté aux défis suivants : Premièrement, comment mieux la combiner avec d'autres technologies dans différents domaines d'application. La vision par ordinateur peut utiliser largement le Big Data pour résoudre certains problèmes. Elle a progressivement mûri et peut être utilisée. surpasser les humains. Cependant, il est impossible d'atteindre une grande précision sur certaines questions : la seconde est de savoir comment réduire le temps de développement et les coûts de main-d'œuvre des algorithmes de vision par ordinateur. Actuellement, les algorithmes de vision par ordinateur nécessitent une grande quantité de données et d'annotations manuelles. un long cycle de recherche et de développement pour répondre aux exigences du domaine d'application. La précision requise et le temps requis ; le troisième est de savoir comment accélérer la conception et le développement de nouveaux algorithmes. Avec l'émergence de nouveaux matériels d'imagerie et de puces d'intelligence artificielle, la conception et le développement d’algorithmes de vision par ordinateur pour différentes puces et équipements d’acquisition de données constituent également l’un des défis.
La vision par ordinateur est l'une des technologies les plus dynamiques et les plus utilisées dans le domaine de l'intelligence artificielle. Elle est comme les « yeux » de l'intelligence artificielle, capturant et analysant plus d'informations pour tous les horizons. Avec le changement d'algorithmes, la mise à niveau de la puissance de calcul du matériel, l'explosion des données et le réseau à haut débit provoqué par le développement de la technologie 5G à l'avenir, la vision par ordinateur disposera également d'un espace de développement plus large en termes d'applications. Attendons et voyons !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!