Méthodes de reconnaissance de formes séquentielles. « Contrôle adaptatif de systèmes complexes basé sur la théorie de la reconnaissance de formes

Les systèmes vivants, y compris les humains, sont constamment confrontés au problème de la reconnaissance des formes depuis leur apparition. En particulier, les informations provenant des organes des sens sont traitées par le cerveau, qui à son tour trie les informations, assure la prise de décision, puis, à l'aide d'impulsions électrochimiques, transmet le signal nécessaire, par exemple aux organes de mouvement, qui mettent en œuvre les actions nécessaires. Ensuite, l’environnement change et les phénomènes ci-dessus se reproduisent. Et si l’on y regarde bien, chaque étape s’accompagne d’une reconnaissance.

Avec développement technologie informatique Il est devenu possible de résoudre un certain nombre de problèmes qui surviennent au cours de la vie, de faciliter, d'accélérer et d'améliorer la qualité du résultat. Par exemple, travailler divers systèmes maintien de la vie, interaction homme-machine, émergence de systèmes robotiques, etc. Cependant, on constate qu'il n'est actuellement pas possible de fournir un résultat satisfaisant dans certaines tâches (reconnaissance d'objets similaires se déplaçant rapidement, texte manuscrit).

Objectif du travail : étudier l'histoire des systèmes de reconnaissance d'images.

Spécifier changements qualitatifs ce qui s'est passé dans le domaine de la reconnaissance de formes, à la fois théorique et technique, en indiquant les raisons ;

Discuter des méthodes et des principes utilisés en informatique ;

Donnez des exemples de perspectives attendues dans un avenir proche.

1. Qu’est-ce que la reconnaissance de formes ?

Les premières recherches sur l'informatique ont été largement suivies schéma classique modélisation mathématique- modèle mathématique, algorithme et calcul. Il s'agissait de tâches de modélisation des processus se produisant lors d'explosions bombes atomiques, calcul de trajectoires balistiques, applications économiques et autres. Cependant, en plus des idées classiques de cette série, des méthodes basées sur une nature complètement différente sont apparues et, comme l'a montré la pratique de résolution de certains problèmes, elles ont souvent donné de meilleurs résultats que les solutions basées sur des modèles mathématiques trop compliqués. Leur idée était d'abandonner le désir de créer un système global modèle mathématique de l'objet étudié (en outre, il était souvent pratiquement impossible de construire des modèles adéquats), et se contenter de la réponse uniquement à des questions spécifiques qui nous intéressaient, et chercher ces réponses à partir de considérations communes à une large classe de problèmes. Les recherches de ce type comprenaient la reconnaissance d'images visuelles, la prévision des rendements des cultures, des niveaux des rivières, la tâche de distinguer les pétrolifères et les aquifères sur la base de données géophysiques indirectes, etc. Une réponse spécifique à ces tâches était requise sous une forme assez simple, telle que , par exemple, si un objet appartient à l'une des classes préfixées. Et les données initiales de ces tâches, en règle générale, étaient fournies sous la forme d'informations fragmentaires sur les objets étudiés, par exemple sous la forme d'un ensemble d'objets pré-classés. AVEC point mathématique D'un point de vue, cela signifie que la reconnaissance de formes (et c'est ainsi que cette classe de problèmes a été nommée dans notre pays) est une généralisation approfondie de l'idée d'extrapolation de fonctions.

L'importance d'une telle affirmation pour les sciences techniques ne fait aucun doute, et cela justifie à lui seul de nombreuses études dans ce domaine. Cependant, le problème de la reconnaissance des formes a également un aspect plus large pour les sciences naturelles (il serait cependant étrange que quelque chose d'aussi important pour les systèmes cybernétiques artificiels n'ait pas d'importance pour les systèmes naturels). Le contexte de cette science comprenait également de manière organique des questions posées par les philosophes anciens sur la nature de nos connaissances, notre capacité à reconnaître des images, des modèles et des situations dans le monde qui nous entoure. En fait, il ne fait aucun doute que les mécanismes permettant de reconnaître les images les plus simples, telles que les images d'un prédateur dangereux ou d'un aliment dangereux, ont été formés bien avant l'émergence de langage élémentaire et un appareil logique formel. Et il ne fait aucun doute que de tels mécanismes sont assez développés chez les animaux supérieurs, qui, également dans leurs activités vitales, ont un besoin urgent de la capacité de distinguer un système assez complexe de signes de la nature. Ainsi, dans la nature, nous voyons que le phénomène de la pensée et de la conscience repose clairement sur la capacité de reconnaître des images, et que les progrès ultérieurs de la science de l'intelligence sont directement liés à la profondeur de la compréhension des lois fondamentales de la reconnaissance. Comprendre le fait que les problèmes ci-dessus vont bien au-delà définition standard reconnaissance de formes (dans la littérature anglophone le terme d'apprentissage supervisé est plus courant), il faut aussi comprendre qu'ils ont des liens profonds avec cette direction relativement étroite (mais encore loin d'être épuisée).

La reconnaissance des formes est déjà bien établie dans vie quotidienne et constitue l’une des connaissances les plus vitales de l’ingénieur moderne. En médecine, la reconnaissance de formes aide les médecins à établir des diagnostics plus précis ; dans les usines, elle est utilisée pour prédire les défauts des lots de marchandises. Les systèmes biométriques d'identification personnelle, comme leur noyau algorithmique, s'appuient également sur les résultats de cette discipline. Développement ultérieur intelligence artificielle, notamment la conception d'ordinateurs de cinquième génération capables de faire plus communication directe avec une personne dans des langues naturelles et à travers la parole, sont impensables sans reconnaissance. La robotique n'est qu'à quelques pas ici, systèmes artificiels contrôles contenant des systèmes de reconnaissance comme sous-systèmes vitaux.

C'est pourquoi le développement de la reconnaissance de formes a dès le début attiré beaucoup d'attention de la part de spécialistes de profils variés - cybernéticiens, neurophysiologistes, psychologues, mathématiciens, économistes, etc. C’est en grande partie pour cette raison que la reconnaissance de formes moderne elle-même est alimentée par les idées de ces disciplines. Sans prétendre à l'exhaustivité (et il est impossible de le prétendre dans un court essai), nous décrirons l'histoire de la reconnaissance de formes, idées clés.

Définitions

Avant de passer aux principales méthodes de reconnaissance de formes, nous présentons plusieurs définitions nécessaires.

La reconnaissance de formes (objets, signaux, situations, phénomènes ou processus) consiste à identifier un objet ou à déterminer l'une de ses propriétés à partir de son image (reconnaissance optique) ou de son enregistrement audio (reconnaissance acoustique) et d'autres caractéristiques.

L’un des concepts fondamentaux est le concept d’ensemble, qui n’a pas de formulation spécifique. Dans un ordinateur, un ensemble est représenté comme un ensemble d’éléments non répétitifs du même type. Le mot « non répétitif » signifie qu'un élément de l'ensemble est présent ou absent. Un ensemble universel comprend tous les éléments possibles pour le problème à résoudre ; un ensemble vide n’en contient aucun.

Une image est un regroupement de classification dans un système de classification qui unit (met en évidence) un certain groupe d'objets selon un certain critère. Les images ont une propriété caractéristique, qui se manifeste dans le fait que la familiarisation avec un nombre fini de phénomènes d'un même ensemble permet d'en reconnaître autant qu'on le souhaite. grand nombre ses représentants. Les images ont des propriétés objectives caractéristiques dans le sens où différentes personnes, étudiant à différents matériaux des observations, surtout classer les mêmes objets de manière égale et indépendante les uns des autres. Dans la formulation classique du problème de reconnaissance, l’ensemble universel est divisé en parties d’image. Chaque cartographie d'un objet sur les organes perceptifs du système de reconnaissance, quelle que soit sa position par rapport à ces organes, est généralement appelée une image de l'objet, et des ensembles de telles images, unies par certaines propriétés communes, sont des images.

La méthode d'attribution d'un élément à n'importe quelle image est appelée règle décisive. Encore une chose notion importante- métrique, méthode de détermination de la distance entre les éléments d'un ensemble universel. Plus cette distance est petite, plus les objets (symboles, sons, etc.) sont similaires – ce que nous reconnaissons. En règle générale, les éléments sont spécifiés sous la forme d'un ensemble de nombres et la métrique est spécifiée sous la forme d'une fonction. L'efficacité du programme dépend du choix de la représentation de l'image et de la mise en œuvre des métriques ; un algorithme de reconnaissance avec différentes métriques fera des erreurs avec des fréquences différentes.

L'apprentissage est généralement appelé le processus de développement dans un certain système de l'une ou l'autre réaction à des groupes de signaux externes identiques par une exposition répétée au système d'ajustements externes. De tels ajustements externes dans la formation sont généralement appelés « récompenses » et « punitions ». Le mécanisme permettant de générer cet ajustement détermine presque entièrement l’algorithme d’apprentissage. L'auto-apprentissage diffère de la formation en ce sens qu'aucune information supplémentaire sur l'exactitude de la réaction au système n'est fournie ici.

L'adaptation est le processus de modification des paramètres et de la structure du système, et éventuellement des actions de contrôle, sur la base des informations actuelles afin d'atteindre un certain état du système dans des conditions d'incertitude initiale et de conditions de fonctionnement changeantes.

L'apprentissage est le processus par lequel un système acquiert progressivement la capacité de répondre réactions nécessairesà certaines populations influences extérieures, et l'adaptation est l'ajustement des paramètres et de la structure du système afin d'obtenir la qualité de contrôle requise dans des conditions de changements continus des conditions externes.

Exemples de tâches de reconnaissance de formes : - Reconnaissance de lettres ;

dim. 29 mars 2015

Actuellement, il existe de nombreuses tâches dans lesquelles il est nécessaire de prendre une décision en fonction de la présence d'un objet dans l'image ou de le classer. La capacité de « reconnaître » est considérée comme une propriété fondamentale créatures biologiques, alors que systèmes informatiques ne possèdent pas pleinement cette propriété.

Considérons éléments communs modèles de classification.

Classe- un ensemble d'objets ayant propriétés générales. Pour les objets d’une même classe, la présence d’une « similarité » est supposée. Pour une tâche de reconnaissance, un nombre arbitraire de classes, supérieur à 1, peut être défini. Le nombre de classes est désigné par le nombre S. Chaque classe possède sa propre étiquette d'identification.

Classification- le processus d'attribution d'étiquettes de classe aux objets, selon une description des propriétés de ces objets. Un classificateur est un appareil qui reçoit un ensemble d'attributs d'objet comme données d'entrée et produit en conséquence une étiquette de classe.

Vérification- le processus de mappage d'une instance d'objet à un modèle d'objet unique ou à une description de classe.

Sous chemin nous comprendrons le nom de la zone dans l'espace des fonctionnalités dans laquelle de nombreux objets ou phénomènes sont affichés monde matériel. Signe - description quantitative l'une ou l'autre propriété de l'objet ou du phénomène étudié.

Espace de fonctionnalités Ce Espace à N dimensions, défini pour une tâche de reconnaissance donnée, où N est un nombre fixe de caractéristiques mesurées pour n'importe quel objet. Un vecteur de l'espace de caractéristiques x correspondant à l'objet de tâche de reconnaissance est un vecteur à N dimensions avec des composantes (x_1,x_2,…,x_N), qui sont les valeurs de caractéristiques de cet objet.

En d'autres termes, la reconnaissance de formes peut être définie comme l'attribution de données source à une classe spécifique à l'aide de la sélection. fonctionnalités essentielles ou des propriétés caractérisant ces données, de masse totale des détails sans importance.

Des exemples de problèmes de classification sont :

  • reconnaissance de caractères ;
  • reconnaissance vocale;
  • établir un diagnostic médical;
  • prévisions météorologiques;
  • reconnaissance faciale
  • classement des documents, etc.

Le plus souvent, le matériel source est l’image reçue de la caméra. Le problème peut être formulé comme l’obtention de vecteurs de caractéristiques pour chaque classe de l’image considérée. Le processus peut être considéré comme un processus de codage qui implique l'attribution d'une valeur à chaque fonctionnalité à partir de l'espace des fonctionnalités pour chaque classe.

Si l'on considère 2 classes d'objets : adultes et enfants. Vous pouvez choisir la taille et le poids comme signes. Comme il ressort de la figure, ces deux classes forment deux ensembles disjoints, qui peuvent s'expliquer par les caractéristiques sélectionnées. Cependant, il n’est pas toujours possible de sélectionner les paramètres mesurés corrects comme caractéristiques de classe. Par exemple, les paramètres sélectionnés ne conviennent pas pour créer des classes disjointes de joueurs de football et de basketteurs.

La deuxième tâche de la reconnaissance est de sélectionner traits caractéristiques ou les propriétés des images sources. Cette tâche peut être classée comme prétraitement. Si nous considérons la tâche de reconnaissance vocale, nous pouvons distinguer des caractéristiques telles que les voyelles et les consonnes. L'attribut doit être une propriété caractéristique d'une classe particulière, et en même temps commune à cette classe. Caractéristiques qui caractérisent les différences entre - les caractéristiques interclasses. Les fonctionnalités communes à toutes les classes ne le sont pas informations utiles et ne sont pas considérés comme des fonctionnalités dans la tâche de reconnaissance. La sélection des fonctionnalités est l'une des tâches importantes associées à la création d'un système de reconnaissance.

Une fois les caractéristiques déterminées, la procédure de décision optimale pour la classification doit être déterminée. Considérons un système de reconnaissance de formes conçu pour reconnaître différentes classes M, notées m_1, m_2,…, m 3. On peut alors supposer que l’espace image est constitué de M régions, chacune contenant des points correspondant à une image d’une classe. Le problème de reconnaissance peut alors être considéré comme la construction de frontières séparant M classes en fonction des vecteurs de mesure adoptés.

La résolution du problème du prétraitement des images, de l'extraction des caractéristiques et du problème de l'obtention d'une solution et d'une classification optimales est généralement associée à la nécessité d'estimer un certain nombre de paramètres. Cela conduit au problème de l’estimation des paramètres. De plus, il est évident que l’extraction de fonctionnalités peut utiliser Informations Complémentaires en fonction de la nature des cours.

Les objets peuvent être comparés en fonction de leur représentation en tant que vecteurs de mesure. Il est pratique de représenter les données de mesure sous forme de nombres réels. Ensuite, la similarité des vecteurs caractéristiques de deux objets peut être décrite en utilisant la distance euclidienne.

où d est la dimension du vecteur caractéristique.

Il existe 3 groupes de méthodes de reconnaissance de formes :

  • Comparaison avec l'échantillon. Ce groupe comprend la classification par moyenne la plus proche, la classification par distance au voisin le plus proche. Les méthodes de reconnaissance structurelle peuvent également être incluses dans le groupe de comparaison avec l'échantillon.
  • Méthodes statistiques. Comme leur nom l'indique, les méthodes statistiques utilisent certains informations statistiques lors de la résolution d'un problème de reconnaissance. La méthode détermine si un objet appartient à une classe spécifique en fonction de la probabilité. Dans certains cas, cela revient à déterminer la probabilité a posteriori d'un objet appartenant à une classe spécifique, à condition que les caractéristiques de cet objet aient pris les valeurs appropriées. Un exemple est la méthode basée sur la règle de décision bayésienne.
  • Réseaux de neurones. Une classe distincte de méthodes de reconnaissance. Particularité des autres est la capacité d'apprendre.

Classification par moyenne la plus proche

Dans l'approche classique de reconnaissance de formes, dans laquelle un objet inconnu à classer est représenté comme un vecteur de caractéristiques élémentaires. Un système de reconnaissance basé sur les fonctionnalités peut être développé de diverses manières. Ces vecteurs peuvent être connus du système à l'avance grâce à un entraînement ou prédits en temps réel à partir de certains modèles.

Un algorithme de classification simple consiste à regrouper les données de référence de classe en utilisant le vecteur d'espérance de classe (moyenne).

où x(i,j)- j-ème référence caractéristique de la classe i, n_j est le nombre de vecteurs de référence de la classe i.

Alors un objet inconnu appartiendra à la classe i s'il est significativement plus proche du vecteur d'espérance mathématique de la classe i que des vecteurs d'espérance mathématique des autres classes. Cette méthode convient aux problèmes dans lesquels les points de chaque classe sont situés de manière compacte et éloignée des points des autres classes.

Des difficultés surgiront si les classes ont un peu plus structure complexe, par exemple, comme sur la figure. DANS dans ce cas La classe 2 est divisée en deux sections disjointes et mal décrites par une seule valeur moyenne. De plus, la classe 3 est trop allongée, les échantillons de classe 3 avec grandes valeurs les coordonnées x_2 sont plus proches de la valeur moyenne de la 1ère classe que de la 3ème.

Le problème décrit peut dans certains cas être résolu en modifiant le calcul de la distance.

Nous prendrons en compte la caractéristique de la « dispersion » des valeurs de classe - σ_i, le long de chaque direction de coordonnées i. L'écart type est égal à la racine carrée de la variance. La distance euclidienne mise à l'échelle entre le vecteur x et le vecteur d'espérance x_c est

Cette formule de distance réduira le nombre d’erreurs de classification, mais en réalité la plupart des problèmes ne peuvent pas être représentés par une classe aussi simple.

Classement par distance au voisin le plus proche

Une autre approche de la classification consiste à attribuer un vecteur de caractéristiques inconnu x à la classe à laquelle l'échantillon individuel de ce vecteur ressemble le plus. Cette règle est appelée règle du plus proche voisin. La classification des voisins les plus proches peut être plus efficace même lorsque les classes ont des structures complexes ou lorsque les classes se chevauchent.

Cette approche ne nécessite pas d'hypothèses sur les modèles de distribution des vecteurs de caractéristiques dans l'espace. L'algorithme utilise uniquement des informations sur les échantillons de référence connus. La méthode de solution est basée sur le calcul de la distance x à chaque échantillon dans la base de données et la recherche de la distance minimale. Les avantages de cette approche sont évidents :

  • vous pouvez ajouter de nouveaux échantillons à la base de données à tout moment ;
  • les structures de données arborescentes et en grille réduisent le nombre de distances calculées.

De plus, la solution sera meilleure si nous recherchons dans la base de données non pas un voisin le plus proche, mais k. Ensuite, pour k > 1, il fournit le meilleur échantillonnage de la distribution des vecteurs dans l'espace à d dimensions. Cependant utilisation efficace les valeurs de k dépendent de l'existence ou non de quantité suffisante dans chaque région de l'espace. S'il y a plus de deux cours, acceptez bonne décision s'avère plus difficile.

Littérature

  • M. Castrillon, . O. Deniz, . D. Hernández et J. Lorenzo, « Une comparaison des détecteurs de visage et de caractéristiques faciales basée sur le cadre général de détection d'objets Viola-Jones », International Journal of Computer Vision, n° 22, pp. 481-494, 2011.
  • Y.-Q. Wang, « Une analyse de l'algorithme de détection de visage Viola-Jones », IPOL Journal, 2013.
  • L. Shapiro et D. Stockman, Computer Vision, Binom. Laboratoire de connaissances, 2006.
  • Z. N. G., Méthodes de reconnaissance et leur application, Radio soviétique, 1972.
  • J. Tu, R. Gonzalez, Principes mathématiques de reconnaissance de formes, Moscou : « Mir » Moscou, 1974.
  • Khan, H. Abdullah et M. Shamian Bin Zainal, « Algorithme de détection efficace des yeux et de la bouche utilisant une combinaison de détection de viola jones et de pixels de couleur de peau », International Journal of Engineering and Applied Sciences, No. Vol. 3 n° 4, 2013.
  • V. Gaede et O. Gunther, « Méthodes d'accès multidimensionnelles », ACM Computing Surveys, pp. 170-231, 1998.

Etc. des objets caractérisés par un ensemble fini de certaines propriétés et caractéristiques. De tels problèmes sont résolus assez souvent, par exemple lorsque vous traversez ou dépassez une rue après un feu tricolore. Reconnaître la couleur d'un feu de circulation allumé et connaître les règles trafic vous permet d'accepter la bonne décision savoir si vous pouvez ou non traverser la rue.

La nécessité d'une telle reconnaissance se fait sentir dans les cas les plus différents domaines- des affaires militaires et des systèmes de sécurité à la numérisation des signaux analogiques.

Le problème de la reconnaissance d'images a acquis une importance exceptionnelle dans des conditions de surcharge d'informations, lorsqu'une personne ne peut pas faire face à une compréhension linéaire-séquentielle des messages qui lui parviennent, ce qui fait que son cerveau passe en mode de perception et de pensée simultanées. ce qui est caractéristique d’une telle reconnaissance.

Ce n’est donc pas un hasard si le problème de la reconnaissance d’images s’est retrouvé sur le terrain recherche interdisciplinaire- y compris dans le cadre des travaux de création d'intelligence artificielle et de création de systèmes techniques reconnaissance d'images attire de plus en plus l’attention.

YouTube encyclopédique

    1 / 4

    Introduction à la reconnaissance de formes

    R.V. Shamin. Cours n°6 Les réseaux de Hopfield et Hamming dans les problèmes de reconnaissance de formes

    [DDSh-2016] : Réseaux de neurones et vision par ordinateur moderne

    Conférence 9. Lissage exponentiel. Reconnaissance de formes : méthode du k-voisin le plus proche

    Sous-titres

Orientations en matière de reconnaissance de formes

Deux orientations principales peuvent être distinguées :

  • L'étude des capacités de reconnaissance que possèdent les êtres vivants, leur explication et leur modélisation ;
  • Développement de théories et de méthodes pour construire des dispositifs conçus pour résoudre des problèmes individuels à des fins appliquées.

Énoncé formel du problème

La reconnaissance de formes est l'attribution de données source à une certaine classe en identifiant les caractéristiques significatives qui caractérisent ces données à partir de la masse totale de données sans importance.

Lors de la définition de problèmes de reconnaissance, ils essaient d'utiliser langage mathématique, s'efforçant - contrairement à la théorie des réseaux de neurones artificiels, où la base est l'obtention d'un résultat par l'expérimentation - de remplacer l'expérience par un raisonnement logique et preuves mathématiques.

Formulation classique du problème de reconnaissance de formes : étant donné un ensemble d'objets. Une classification doit être faite à leur sujet. Un ensemble est représenté par des sous-ensembles appelés classes. Donné : des informations sur les classes, une description de l'ensemble complet et une description des informations sur un objet dont l'appartenance à une classe spécifique est inconnue. Il est nécessaire, sur la base des informations disponibles sur les classes et la description de l'objet, de déterminer à quelle classe appartient cet objet.

Les images monochromes sont le plus souvent considérées dans les problèmes de reconnaissance de formes, ce qui permet de considérer l'image comme une fonction sur un plan. Si l'on considère un point fixé sur le plan T (style d'affichage T), où la fonction exprime ses caractéristiques en chaque point de l'image - luminosité, transparence, densité optique, alors une telle fonction est un enregistrement formel de l'image.

L'ensemble de toutes les fonctions possibles f (x, y) (\ displaystyle f (x, y)) dans l'avion T (style d'affichage T)- il existe un modèle de l'ensemble de toutes les images X (style d'affichage X). Présentation du concept similitudes entre les images, vous pouvez poser une tâche de reconnaissance. Le type spécifique d'une telle déclaration dépend fortement des étapes ultérieures de reconnaissance selon une approche particulière.

Quelques méthodes de reconnaissance de formes graphiques

Pour la reconnaissance optique de formes, vous pouvez utiliser la méthode d'énumération de la vue d'un objet sous différents angles, échelles, décalages, etc. Pour les lettres, vous devez énumérer la police, les propriétés de la police, etc.

La deuxième approche consiste à retrouver le contour de l'objet et à examiner ses propriétés (connectivité, présence de coins, etc.)

Une autre approche consiste à utiliser des réseaux de neurones artificiels. Cette méthode nécessite soit grande quantité exemples d'une tâche de reconnaissance (avec réponses correctes), ou d'une structure particulière réseau neuronal, en tenant compte des spécificités de cette tâche.

Perceptron comme méthode de reconnaissance de formes

F. Rosenblatt, introduisant le concept de modèle cérébral dont la tâche est de montrer comment dans certains système physique, dont la structure et les propriétés fonctionnelles sont connues, peuvent survenir phénomènes psychologiques, a décrit les expériences de discrimination les plus simples. Ces expériences sont entièrement liées aux méthodes de reconnaissance de formes, mais diffèrent en ce que l'algorithme de solution n'est pas déterministe.

L'expérience la plus simple, sur la base de laquelle vous pouvez obtenir des informations psychologiques informations significativesà propos d'un système, se résume au fait que le modèle est présenté avec deux stimuli différents et doit y répondre de différentes manières. Le but d'une telle expérience peut être d'étudier la possibilité de leur discrimination spontanée par le système en l'absence d'intervention de l'expérimentateur, ou, à l'inverse, d'étudier la discrimination forcée, dans laquelle l'expérimentateur cherche à entraîner le système à effectuer le classement requis.

Dans une expérience d'entraînement au perceptron, une certaine séquence d'images est généralement présentée, qui comprend des représentants de chacune des classes à distinguer. Selon une règle de modification de la mémoire, le choix correct de la réponse est renforcé. Ensuite, le perceptron se voit présenter un stimulus de contrôle et la probabilité de recevoir réaction correcte pour les incitations de cette classe. Selon que le stimulus de contrôle sélectionné coïncide ou non avec l'une des images utilisées dans la séquence d'entraînement, différents résultats sont obtenus :

  1. Si le stimulus de contrôle ne coïncide avec aucun des stimuli d'entraînement, alors l'expérience est associée non seulement à discrimination pure, mais comprend également des éléments généralisations.
  2. Si un stimulus de contrôle excite un certain ensemble d'éléments sensoriels complètement différents de ceux qui ont été activés sous l'influence de stimuli de la même classe présentés précédemment, alors l'expérience est une étude pure généralisation.

Les perceptrons n'ont pas la capacité de généralisation pure, mais ils fonctionnent de manière tout à fait satisfaisante dans les expériences de discrimination, surtout si le stimulus de contrôle correspond suffisamment à l'une des images avec lesquelles le perceptron a déjà accumulé une certaine expérience.

Exemples de problèmes de reconnaissance de formes

  • Reconnaissance de codes-barres
  • Reconnaissance de plaque d'immatriculation
  • Reconnaissance d'images
  • Reconnaissance de la zone locale la croûte terrestre, dans lequel se trouvent les dépôts

Et des signes. De tels problèmes sont résolus assez souvent, par exemple lorsque vous traversez ou dépassez une rue après un feu tricolore. Reconnaître la couleur d'un feu de circulation allumé et connaître le code de la route vous permet de prendre la bonne décision quant à savoir si vous pouvez ou non traverser la rue pour le moment.

Au cours du processus d’évolution biologique, de nombreux animaux ont résolu des problèmes à l’aide de leur appareil visuel et auditif. reconnaissance de formes suffisant. Création de systèmes artificiels reconnaissance de formes reste complexe, théorique et problème technique. Le besoin d'une telle reconnaissance se fait sentir dans divers domaines - des affaires militaires et des systèmes de sécurité à la numérisation de toutes sortes de signaux analogiques.

Traditionnellement, les tâches de reconnaissance de formes font partie de la gamme des tâches d’intelligence artificielle.

Orientations en matière de reconnaissance de formes

Deux orientations principales peuvent être distinguées :

  • Étudier les capacités de reconnaissance que possèdent les êtres vivants, les expliquer et les modéliser ;
  • Développement de théories et de méthodes pour construire des dispositifs conçus pour résoudre des problèmes individuels dans des applications appliquées.

Énoncé formel du problème

La reconnaissance de formes est l'attribution de données source à une certaine classe en identifiant les caractéristiques significatives qui caractérisent ces données à partir de la masse totale de données sans importance.

Lorsqu'ils posent des problèmes de reconnaissance, ils essaient d'utiliser un langage mathématique, en essayant, contrairement à la théorie des réseaux de neurones artificiels, où la base est l'obtention d'un résultat par l'expérience, de remplacer l'expérience par un raisonnement logique et une preuve mathématique.

Les images monochromes sont le plus souvent considérées dans les problèmes de reconnaissance de formes, ce qui permet de considérer l'image comme une fonction sur un plan. Si l'on considère un point fixé sur le plan T, où la fonction x(x,oui) exprime ses caractéristiques en chaque point de l'image - luminosité, transparence, densité optique, alors une telle fonction est un enregistrement formel de l'image.

L'ensemble de toutes les fonctions possibles x(x,oui) dans l'avion T- il existe un modèle de l'ensemble de toutes les images X. Présentation du concept similitudes entre les images, vous pouvez poser une tâche de reconnaissance. Le type spécifique d'une telle déclaration dépend fortement des étapes ultérieures de reconnaissance selon l'une ou l'autre approche.

Méthodes de reconnaissance de formes

Pour la reconnaissance optique de formes, vous pouvez utiliser la méthode d'énumération de la vue d'un objet sous différents angles, échelles, décalages, etc. Pour les lettres, vous devez énumérer la police, les propriétés de la police, etc.

La deuxième approche consiste à retrouver le contour de l'objet et à examiner ses propriétés (connectivité, présence de coins, etc.)

Une autre approche consiste à utiliser des réseaux de neurones artificiels. Cette méthode nécessite soit un grand nombre d'exemples de tâche de reconnaissance (avec des réponses correctes), soit une structure de réseau neuronal particulière qui prend en compte les spécificités de cette tâche.

Perceptron comme méthode de reconnaissance de formes

F. Rosenblatt, introduisant le concept de modèle cérébral dont la tâche est de montrer comment, dans un système physique dont la structure et les propriétés fonctionnelles sont connues, des phénomènes psychologiques peuvent survenir - il a décrit le plus simple expériences de discrimination. Ces expériences sont entièrement liées aux méthodes de reconnaissance de formes, mais diffèrent en ce que l'algorithme de solution n'est pas déterministe.

L'expérience la plus simple à partir de laquelle on peut obtenir des informations psychologiquement significatives sur un certain système se résume au fait que le modèle est présenté avec deux stimuli différents et doit y répondre de différentes manières. Le but d'une telle expérience peut être d'étudier la possibilité de leur discrimination spontanée par le système en l'absence d'intervention de l'expérimentateur, ou, à l'inverse, d'étudier la discrimination forcée, dans laquelle l'expérimentateur cherche à entraîner le système à effectuer le classement requis.

Dans une expérience d'entraînement au perceptron, une certaine séquence d'images est généralement présentée, qui comprend des représentants de chacune des classes à distinguer. Selon une règle de modification de la mémoire, le choix correct de la réponse est renforcé. Ensuite, le perceptron reçoit un stimulus de contrôle et la probabilité d'obtenir la réponse correcte pour les stimuli d'une classe donnée est déterminée. Selon que le stimulus de contrôle sélectionné coïncide ou non avec l'une des images utilisées dans la séquence d'entraînement, différents résultats sont obtenus :

  • 1. Si le stimulus de contrôle ne coïncide avec aucun des stimuli d'entraînement, alors l'expérience est associée non seulement à discrimination pure, mais comprend également des éléments généralisations.
  • 2. Si un stimulus de contrôle excite un certain ensemble d'éléments sensoriels complètement différents de ceux qui ont été activés sous l'influence de stimuli de la même classe présentés précédemment, alors l'expérience est une étude pure généralisation .

Les perceptrons n'ont pas la capacité de généralisation pure, mais ils fonctionnent de manière tout à fait satisfaisante dans les expériences de discrimination, surtout si le stimulus de contrôle correspond suffisamment à l'une des images avec lesquelles le perceptron a déjà accumulé une certaine expérience.

Exemples de problèmes de reconnaissance de formes

  • Reconnaissance des lettres.
  • Reconnaissance de codes-barres.
  • Reconnaissance de plaque d'immatriculation.
  • Reconnaissance faciale.
  • Reconnaissance vocale.
  • Reconnaissance d'images.
  • Reconnaissance des zones locales de la croûte terrestre dans lesquelles se trouvent des gisements minéraux.

Programmes de reconnaissance de formes

Voir aussi

Remarques

Links

  • Youri Lifshits. Cours "Problèmes modernes de l'informatique théorique" - cours sur méthodes statistiques reconnaissance d'images, reconnaissance faciale, classification de texte
  • Journal de recherche sur la reconnaissance des formes

Littérature

  • David A. Forsythe, Jean Pons Vision par ordinateur. Approche moderne= Vision par ordinateur : une approche moderne. - M. : "Williams", 2004. - P. 928. - ISBN 0-13-085198-1
  • George Stockman, Linda Shapiro Vision par ordinateur = Vision par ordinateur. - M. : Binom. Laboratoire de connaissances, 2006. - P. 752. - ISBN 5947743841
  • A.L.Gorelik, V.A.Skripkin, Méthodes de reconnaissance, M. : lycée, 1989.
  • Sh.-K. Cheng,Principes de conception du système informations visuelles, M. : Mir, 1994.

Fondation Wikimédia.

2010. - scientifiquement en technologie direction technique associé au développement de méthodes et à la construction de systèmes (y compris informatiques) pour établir l'appartenance d'un certain objet (objet, processus, phénomène, situation, signal) à l'un des progrès... ...

Grand dictionnaire encyclopédique Une des nouvelles régions cybernétique. Le contenu de la théorie de R. o. est l'extrapolation des propriétés d'objets (images) appartenant à plusieurs classes à des objets qui leur sont en quelque sorte proches. Habituellement, lors de la formation d'un automate R. o. disponible... ...

Encyclopédie géologique Anglais reconnaissance, image; Allemand Modification de la Gestalt. Branche de la cybernétique mathématique qui développe des principes et des méthodes pour classer et identifier des objets décrits par un ensemble fini de caractéristiques qui les caractérisent. Antinazi. Encyclopédie... ...

Encyclopédie de sociologie Reconnaissance de formes - méthode d'étude d'objets complexes à l'aide d'un ordinateur ; consiste à sélectionner des fonctionnalités et à développer des algorithmes et des programmes permettant aux ordinateurs de classer automatiquement les objets en fonction de ces fonctionnalités. Par exemple, déterminer lequel... ...

Dictionnaire économique et mathématique - direction (technique), scientifique et technique associée au développement de méthodes et à la construction de systèmes (y compris informatiques) pour établir l'appartenance d'un certain objet (objet, processus, phénomène, situation, signal) à l'un des progrès ... ...

Dictionnaire encyclopédique RECONNAISSANCE DE MODÈLES - une section de cybernétique mathématique qui développe des méthodes de classification, ainsi que l'identification d'objets, de phénomènes, de processus, de signaux, de situations de tous ces objets qui peuvent être décrits par un ensemble fini de certains signes ou propriétés... ...

Encyclopédie sociologique russe reconnaissance de formes

  • - 160 reconnaissance de formes : identification de formes de représentations et de configurations à l'aide de moyens automatiques

Tutoriel

J'ai longtemps voulu écrire un article général contenant les bases mêmes de la reconnaissance d'images, une sorte de guide sur les méthodes de base, indiquant quand les utiliser, quels problèmes elles résolvent, ce qu'on peut faire le soir à genoux et ce qu'il faut faire. mieux vaut ne pas y penser sans avoir une équipe de personnes à 20. diverses personnes avec des questions sur ce sujet. Parfois tu as l'impression de vivre avec eux mondes différents. D'une part, vous comprenez que la personne est très probablement un professionnel dans un domaine connexe, mais qu'elle connaît très peu les méthodes de reconnaissance optique. Et le plus ennuyeux, c'est qu'il essaie d'appliquer une méthode d'un domaine de connaissance proche, ce qui est logique, mais ne fonctionne pas complètement en reconnaissance d'images, mais il ne comprend pas cela et est très offensé si vous commencez à lui dire quelque chose à partir des bases. Et étant donné que raconter à partir des bases prend beaucoup de temps, ce qui n'est souvent pas disponible, cela devient encore plus triste.

Cet article est destiné à ce qu'une personne qui n'a jamais travaillé avec des méthodes de reconnaissance d'images puisse, en 10 à 15 minutes, créer dans sa tête une certaine image de base du monde qui correspond au sujet et comprendre dans quelle direction creuser. La plupart des techniques décrites ici sont applicables au traitement radar et audio.
Je vais commencer par quelques principes que nous commençons toujours à expliquer à un client potentiel ou à une personne qui souhaite commencer à utiliser la reconnaissance optique :

  • Lorsque vous résolvez un problème, partez toujours du plus simple. Il est beaucoup plus facile de mettre une étiquette sur une personne couleur orange que de suivre une personne, en la mettant en valeur en cascades. Il est beaucoup plus facile de prendre un appareil photo avec une résolution plus élevée que de développer un algorithme de super-résolution.
  • Une formulation stricte du problème dans les méthodes de reconnaissance optique est d'un ordre de grandeur plus importante que dans les problèmes programmation système: un mot supplémentaire peut ajouter 50% de travail aux spécifications techniques.
  • Il n’existe pas de solutions universelles aux problèmes de reconnaissance. Vous ne pouvez pas créer un algorithme qui « reconnaîtrait simplement n’importe quelle inscription ». Un panneau dans la rue et une feuille de texte sont fondamentaux différents objets. Cela peut probablement être fait algorithme général(un bon exemple de Google), mais cela nécessitera beaucoup de travail de la part d'une grande équipe et comprendra des dizaines de sous-programmes différents.
  • OpenCV est une bible qui propose de nombreuses méthodes et peut résoudre 50 % de presque tous les problèmes, mais OpenCV ne représente qu'une petite partie de ce qui peut réellement être fait. Dans une étude, les conclusions ont été écrites : « Le problème ne peut pas être résolu en utilisant les méthodes OpenCV, il est donc insoluble. » Essayez d'éviter cela, ne soyez pas paresseux et évaluez sobrement la tâche en cours à partir de zéro à chaque fois, sans utiliser de modèles OpenCV.
Il est très difficile de donner des conseils universels ou d'indiquer comment créer une sorte de structure autour de laquelle vous pouvez construire une solution à des problèmes arbitraires de vision par ordinateur. Le but de cet article est de structurer ce qui peut être utilisé. je vais essayer de le casser méthodes existantes en trois groupes. Le premier groupe est le filtrage préliminaire et la préparation de l'image. Le deuxième groupe est le traitement logique des résultats du filtrage. Le troisième groupe concerne les algorithmes de prise de décision basés sur un traitement logique. Les frontières entre les groupes sont très arbitraires. Pour résoudre un problème, il n’est pas toujours nécessaire d’utiliser les méthodes de tous les groupes ; parfois deux suffisent, parfois même une.

La liste des méthodes données ici n'est pas complète. Je suggère d'ajouter dans les commentaires méthodes critiques, que je n'ai pas écrit et attribué 2-3 mots d'accompagnement à chacun.

Partie 1. Filtration

Dans ce groupe j'ai placé des méthodes qui permettent de sélectionner des zones d'intérêt dans les images sans les analyser. La plupart L'une de ces méthodes applique une sorte de transformation unique à tous les points de l'image. Au niveau du filtrage, l'analyse des images n'est pas effectuée, mais les points filtrés peuvent être considérés comme des zones avec caractéristiques particulières.
Binarisation par seuil, sélection de zone d'histogramme
La transformation la plus simple est la binarisation de l'image par seuil. Pour les images RVB et en niveaux de gris, le seuil est la valeur de couleur. Rencontrer problèmes idéaux, dans lequel une telle transformation est suffisante. Supposons que vous souhaitiez sélectionner automatiquement des objets sur une feuille de papier blanche :




Le choix du seuil auquel se produit la binarisation détermine en grande partie le processus de binarisation lui-même. Dans ce cas, l’image a été binarisée par la couleur moyenne. Généralement, la binarisation est effectuée à l'aide d'un algorithme qui sélectionne un seuil de manière adaptative. Un tel algorithme peut être le choix d'une attente ou d'un mode. Ou vous pouvez sélectionner le plus grand pic de l'histogramme.

La binarisation peut fournir de très des résultats intéressants lorsque l'on travaille avec des histogrammes, y compris dans le cas où l'on considère une image non pas en RVB, mais en HSV. Par exemple, segmentez les couleurs qui vous intéressent. Sur ce principe, vous pouvez construire à la fois un détecteur d'étiquettes et un détecteur de peau humaine.
Filtrage classique : Fourier, filtre passe-bas, filtre passe-haut
Les méthodes classiques de filtrage radar et de traitement du signal peuvent être appliquées avec succès à diverses tâches de reconnaissance de formes. Méthode traditionnelle en radar, qui n'est presque jamais utilisée sous forme pure dans les images, se trouve la transformée de Fourier (plus précisément la FFT). L'une des rares exceptions dans lesquelles la transformée de Fourier unidimensionnelle est utilisée est la compression d'image. Pour l'analyse d'images, une transformation unidimensionnelle n'est généralement pas suffisante ; vous devez utiliser une transformation bidimensionnelle beaucoup plus gourmande en ressources.

Peu de gens le calculent réellement ; généralement, il est beaucoup plus rapide et plus facile d’utiliser la convolution de la zone d’intérêt avec un filtre prêt à l’emploi, réglé pour les fréquences hautes (HPF) ou basses (LPF). Cette méthode ne permet bien entendu pas d'analyse spectrale, mais en tâche spécifique Le traitement vidéo ne nécessite généralement pas une analyse, mais des résultats.


Le plus exemples simples des filtres qui mettent l'accent sur les basses fréquences (filtre gaussien) et hautes fréquences(Filtre Gabor).
Pour chaque point image, une fenêtre est sélectionnée et multipliée par un filtre de même taille. Le résultat d’une telle convolution est une nouvelle valeur en points. Lors de la mise en œuvre de filtres passe-bas et de filtres passe-haut, des images du type suivant sont obtenues :



Ondelettes
Mais que se passe-t-il si nous utilisons une fonction caractéristique arbitraire pour la convolution avec le signal ? On l'appellera alors "Transformation en ondelette". Cette définition des ondelettes n'est pas correcte, mais traditionnellement, dans de nombreuses équipes, l'analyse des ondelettes est la recherche d'un motif arbitraire dans une image par convolution avec un modèle de ce motif. Il existe un ensemble de fonctions classiques utilisées dans l'analyse par ondelettes. Il s'agit notamment de l'ondelette de Haar, de l'ondelette de Morlet, de l'ondelette du chapeau mexicain, etc. Les primitives Haar, sur lesquelles il y avait plusieurs de mes articles précédents (,), concernent de telles fonctions pour un espace bidimensionnel.


Ci-dessus, 4 exemples d'ondelettes classiques. Ondelette Haar en 3 dimensions, ondelette Meyer en 2 dimensions, ondelette Mexican Hat, ondelette Daubechies. Un bon exemple Utiliser une interprétation étendue des ondelettes est le problème de la recherche d'un éblouissement dans l'œil, pour lequel l'ondelette est l'éblouissement lui-même :

Les ondelettes classiques sont généralement utilisées pour ou pour leur classification (à décrire ci-dessous).
Corrélation
Après une interprétation aussi libre des ondelettes de ma part, il convient de mentionner la corrélation réelle qui les sous-tend. C'est un outil indispensable pour filtrer les images. Application classique- corrélation de flux vidéo pour trouver des décalages ou des flux optiques. Le détecteur de décalage le plus simple est aussi, dans un sens, un corrélateur de différence. Là où les images ne correspondaient pas, il y avait du mouvement.

Fonctions de filtrage
Une classe intéressante de filtres est le filtrage des fonctions. Ce sont des filtres purement mathématiques qui permettent de détecter des fonction mathématique sur l'image (droite, parabole, cercle). Une image accumulée est construite dans laquelle pour chaque point image originale de nombreuses fonctions qui le génèrent sont dessinées. La transformation la plus classique est la transformation de Hough pour les lignes. Dans cette transformation, pour chaque point (x;y), on trace un ensemble de points (a;b) de la droite y=ax+b pour lesquels l'égalité est vraie. Vous obtenez de belles images :


(le premier plus est pour celui qui est le premier à trouver un piège dans l'image et cette définition et à l'expliquer, le deuxième plus est pour celui qui est le premier à dire ce qui est montré ici)
La transformée de Hough vous permet de trouver toutes les fonctions paramétrables. Par exemple des cercles. Il existe une transformation modifiée qui vous permet de rechercher n'importe quel fichier . Les mathématiciens sont terriblement friands de cette transformation. Mais lors du traitement des images, cela ne fonctionne malheureusement pas toujours. Vitesse de fonctionnement très lente, très grande sensibilité à la qualité de binarisation. Même dans des situations idéales, j’ai préféré me contenter d’autres méthodes.
Un analogue de la transformée de Hough pour les lignes droites est la transformée de Radon. Il est calculé via FFT, ce qui donne un gain de performances dans une situation où il y a beaucoup de points. De plus, il peut être appliqué à une image non binarisée.
Filtrage des contours
Une classe distincte de filtres est le filtrage des bordures et des contours. Les contours sont très utiles lorsque nous voulons passer du travail avec une image au travail avec les objets de cette image. Lorsqu'un objet est assez complexe, mais bien distingué, alors souvent le seul moyen travailler avec, c'est souligner ses contours. Il existe un certain nombre d'algorithmes qui résolvent le problème du filtrage des contours :

Le plus souvent c'est Canny qui est utilisé, qui fonctionne bien et dont l'implémentation est en OpenCV (Sobel est là aussi, mais il cherche des contours pires).



Autres filtres
Ci-dessus se trouvent des filtres dont les modifications aident à résoudre 80 à 90 % des problèmes. Mais à côté d'eux, il existe des filtres plus rares utilisés dans tâches locales. Il existe des dizaines de filtres de ce type, je ne les énumérerai pas tous. Les filtres itératifs (par exemple), ainsi que les transformations en crête et en courbure, qui sont une fusion du filtrage et de l'analyse par ondelettes classiques dans le domaine de la transformée du radon, sont intéressants. La transformée en faisceaux fonctionne à merveille sur la limite de la transformée en ondelettes et analyse logique, permettant de sélectionner des contours :

Mais ces transformations sont très spécifiques et adaptées à des tâches rares.

Partie 2. Traitement logique des résultats de filtrage

Le filtrage fournit un ensemble de données adaptées au traitement. Mais souvent, vous ne pouvez pas simplement récupérer et utiliser ces données sans les traiter. Il y en aura plusieurs dans cette section méthodes classiques, permettant de passer de l'image aux propriétés des objets, ou aux objets eux-mêmes.
Morphologie
Le passage du filtrage à la logique, à mon avis, passe par les méthodes morphologie mathématique( , ). Essentiellement, ce sont les opérations les plus simples de croissance et d’érosion d’images binaires. Ces méthodes permettent de supprimer le bruit d'une image binaire en augmentant ou en diminuant les éléments existants. Il existe des algorithmes de contouring basés sur la morphologie mathématique, mais on utilise généralement des algorithmes hybrides ou des algorithmes combinés.
Analyse de contour
Des algorithmes pour obtenir des limites ont déjà été évoqués dans la section sur le filtrage. Les frontières ainsi obtenues sont tout simplement converties en contours. Pour l'algorithme Canny, cela se produit automatiquement ; pour les autres algorithmes, une binarisation supplémentaire est requise. Vous pouvez obtenir un contour pour un algorithme binaire, par exemple en utilisant l'algorithme Beetle.
Un contour est une caractéristique unique d'un objet. Cela permet souvent d'identifier un objet par son contour. Il existe un appareil mathématique puissant qui vous permet de le faire. L'appareil s'appelle analyse de contour (,).

Pour être honnête, je n'ai jamais pu appliquer l'analyse de contour dans de vrais problèmes. Des conditions trop idéales sont nécessaires. Soit il n’y a pas de frontière, soit il y a trop de bruit. Mais si vous avez besoin de reconnaître quelque chose dans des conditions idéales, l’analyse des contours est une excellente option. Cela fonctionne très rapidement, de belles mathématiques et une logique claire.
Points spéciaux
Les points singuliers sont des caractéristiques uniques d'un objet qui permettent de comparer l'objet avec lui-même ou avec des classes d'objets similaires. Il existe plusieurs dizaines de façons d'identifier de tels points. Certaines méthodes mettent en évidence points singuliers dans les cadres adjacents, certains à travers grand écart le temps et lorsque l'éclairage change, certains permettent de trouver des points spéciaux qui le restent même lorsque l'objet est tourné. Commençons par des méthodes qui permettent de trouver des points particuliers, qui ne sont pas si stables, mais qui sont rapidement calculés, puis nous irons dans une complexité croissante :
Première classe. Points spéciaux stables sur une période de quelques secondes. De tels points sont utilisés pour guider un objet entre des images vidéo adjacentes ou pour combiner des images de caméras voisines. Ces points incluent les maxima locaux de l'image, les coins de l'image (le meilleur détecteur est peut-être le détecteur Charis), les points auxquels la dispersion maximale est atteinte, certains gradients, etc.
Deuxième classe. Points spéciaux stables lors des changements d'éclairage et des petits mouvements de l'objet. Ces points servent principalement à la formation et à la classification ultérieure des types d'objets. Par exemple, un classificateur piéton ou un classificateur facial est le produit d'un système construit précisément sur de tels points. Certaines des ondelettes mentionnées précédemment peuvent constituer la base de ces points. Par exemple, les primitives Haar, recherchent des faits saillants, recherchent d'autres fonctions spécifiques. Ces points incluent ceux trouvés par la méthode de l'histogramme des gradients directionnels (HOG).
Troisième année. Points stables. Je ne connais que deux méthodes offrant une stabilité totale et leurs modifications. Ceci et . Ils vous permettent de trouver des points spéciaux même lorsque vous faites pivoter l'image. Le calcul de ces points prend plus de temps par rapport aux autres méthodes, mais c'est suffisant durée limitée. Malheureusement, ces méthodes sont brevetées. Bien qu'en Russie, il soit impossible de breveter des algorithmes, utilisez-les donc pour le marché intérieur.

Partie 3. Formation

La troisième partie du récit sera consacrée aux méthodes qui ne fonctionnent pas directement avec l'image, mais qui permettent de prendre des décisions. En gros c'est diverses méthodes apprentissage automatique et la prise de décision. Yandyx a récemment posté sur Habr sur ce sujet, il y a très bonne sélection. Le voici dans la version texte. Pour une étude sérieuse du sujet, je recommande fortement de les regarder. Ici, je vais essayer de décrire plusieurs méthodes principales utilisées spécifiquement dans la reconnaissance de formes.
Dans 80 % des situations, l'essence de l'apprentissage dans la tâche de reconnaissance est la suivante :
Il existe un exemple de test qui contient plusieurs classes d'objets. Que ce soit la présence/absence d'une personne sur la photo. Pour chaque image, il existe un ensemble de caractéristiques qui ont été mises en évidence par une caractéristique, que ce soit Haar, HOG, SURF ou une ondelette. L'algorithme d'apprentissage doit construire un modèle afin de pouvoir analyser une nouvelle image et décider quel objet se trouve dans l'image.
Comment cela se fait-il ? Chacune des images de test est un point dans l'espace des fonctionnalités. Ses coordonnées sont le poids de chacune des caractéristiques de l'image. Que nos signes soient : « Présence d'yeux », « Présence d'un nez », « Présence de deux mains », « Présence d'oreilles », etc... Nous mettrons en évidence tous ces signes à l'aide de nos détecteurs existants, entraînés sur parties du corps semblables à celles de l'humain Pour une personne dans un tel espace, le point correct serait. Pour le singe, point pour le cheval. Le classificateur est formé à l'aide d'un échantillon d'exemples. Mais toutes les photographies ne montraient pas des mains, d’autres n’avaient pas d’yeux et sur la troisième, le singe avait un nez humain en raison d’une erreur de classificateur. Un classificateur humain entraîné divise automatiquement l'espace des fonctionnalités de manière à dire : si la première fonctionnalité se situe dans la plage 0,5 Essentiellement, l'objectif du classificateur est de dessiner des zones dans l'espace des caractéristiques qui sont caractéristiques des objets de classification. Voici à quoi ressemblera une approximation séquentielle de la réponse pour l'un des classificateurs (AdaBoost) dans un espace bidimensionnel :


Il existe de nombreux classificateurs. Chacun d’eux fonctionne mieux dans une tâche particulière. La tâche consistant à sélectionner un classificateur pour une tâche spécifique est en grande partie un art. Voici quelques belles photos sur le sujet.
Cas simple, séparation unidimensionnelle
Regardons un exemple du cas de classification le plus simple, lorsque l'espace des fonctionnalités est unidimensionnel et que nous devons séparer 2 classes. Cette situation se produit plus souvent que vous ne le pensez : par exemple, lorsque vous devez distinguer deux signaux ou comparer un modèle avec un échantillon. Ayons un échantillon de formation. Cela produit une image où l'axe X est la mesure de similarité et l'axe Y est le nombre d'événements avec une telle mesure. Lorsque l’objet recherché est similaire à lui-même, une gaussienne gauche est obtenue. Quand ça n’y ressemble pas, c’est le bon. La valeur de X=0,4 sépare les échantillons de sorte qu'une mauvaise décision minimise la probabilité de prendre une mauvaise décision. La recherche d'un tel séparateur relève de la classification.


Une petite remarque. Le critère qui minimise l’erreur ne sera pas toujours optimal. Le graphique suivant est un graphique d'un véritable système de reconnaissance de l'iris. Pour un tel système, le critère est choisi pour minimiser la probabilité de fausse admission d'une personne non autorisée dans l'établissement. Cette probabilité est appelée « erreur de type I », « probabilité de fausse alarme », « faux positif ». Dans la littérature anglaise « False Access Rate ».
) AdaBusta est l'un des classificateurs les plus courants. Par exemple, la cascade Haar y est construite. Généralement utilisé lorsqu'une classification binaire est nécessaire, mais rien n'empêche de s'entraîner pour un plus grand nombre de classes.
SVM ( , , , ) L'un des classificateurs les plus puissants, qui a de nombreuses implémentations. Fondamentalement, sur les tâches d'apprentissage que j'ai rencontrées, cela a fonctionné de la même manière qu'Adabusta. Il est considéré comme assez rapide, mais son entraînement est plus difficile que celui d'Adabusta et nécessite de choisir le bon noyau.

Il existe également des réseaux de neurones et la régression. Mais pour les classer brièvement et montrer en quoi ils diffèrent, nous avons besoin d’un article beaucoup plus long que celui-ci.
________________________________________________
J'espère avoir pu donner un aperçu rapide des méthodes utilisées sans plonger dans les mathématiques et la description. Peut-être que cela aidera quelqu'un. Bien que, bien sûr, l'article soit incomplet et qu'il n'y ait pas un mot sur le travail avec des images stéréo, ni sur le LSM avec un filtre de Kalman, ni sur l'approche adaptative de Bayes.
Si vous aimez l'article, je vais essayer de faire une deuxième partie avec une sélection d'exemples de la façon dont les problèmes existants de ImageRecognition sont résolus.

Et enfin

Que lire ?
1) J'ai déjà beaucoup aimé le livre « Digital Image Processing » de B. Yane, qui est écrit simplement et clairement, mais en même temps presque toutes les mathématiques sont données. Bon pour connaître les méthodes existantes.
2) Un classique du genre est R. Gonzalez, R. Woods « Digital Image Processing ». Pour une raison quelconque, c'était plus difficile pour moi que le premier. Beaucoup moins de mathématiques, mais plus de méthodes et d'images.
3) « Traitement et analyse d'images dans les problèmes de vision par ordinateur » - rédigé sur la base d'un cours dispensé dans l'un des départements de physique et de technologie. Il existe de nombreuses méthodes et leurs descriptions détaillées. Mais à mon avis, le livre présente deux gros inconvénients : le livre est fortement axé sur le progiciel qui l'accompagne, dans le livre la description d'une méthode simple se transforme trop souvent en une jungle mathématique, dont il est difficile de sortir. dériver le schéma structurel de la méthode. Mais les auteurs ont créé un site Web pratique où presque tout le contenu est présenté - wiki.technicalvision.ru Ajouter des balises

Avez-vous aimé l'article? Partagez avec vos amis !