La première question que vous vous posez peut-être est de savoir quelle est la différence entre la computer vision et la reconnaissance d’images. En effet, la vision par ordinateur a été vigoureusement développée par Google, Amazon et de nombreux développeurs de l’Intelligence Artificielle, et les deux termes « vision par ordinateur » et « reconnaissance d’images » peuvent avoir été utilisés de manière interchangeable. La Computer Vision (CV) consiste à laisser un ordinateur imiter la vision humaine et agir. Par exemple, la CV peut être conçue pour détecter un enfant qui court sur la route et produire un signal d’avertissement pour le conducteur. En revanche, la reconnaissance d’images consiste à analyser les pixels et les formes d’une image pour reconnaître l’image comme un objet particulier. La vision par ordinateur signifie qu’elle peut « faire quelque chose » avec les images reconnues.
Qu’est-ce que la reconnaissance d’images ?
Comme le dit la phrase « Ce que vous voyez est ce que vous obtenez », le cerveau humain facilite la vision. Il n’est pas nécessaire de faire un effort pour distinguer un chien, un chat ou une soucoupe volante. Mais ce processus est assez difficile à imiter pour un ordinateur : il ne semble facile que parce que notre cerveau est incroyablement doué pour reconnaître les images. Un exemple courant de reconnaissance d’images est la reconnaissance optique de caractères (OCR). Un scanner peut identifier les caractères de l’image pour convertir les textes d’une image en un fichier texte. Avec le même procédé, l’OCR peut être appliquée pour reconnaître le texte d’une plaque d’immatriculation dans une image.
Modélisation Étape 2 : Préparer des images étiquetées pour former le modèle
Figure (B)
Une fois que chaque image est convertie en milliers de caractéristiques, avec les étiquettes connues des images, nous pouvons les utiliser pour former un modèle. La figure (B) montre de nombreuses images étiquetées qui appartiennent à différentes catégories telles que « chien » ou « poisson ». Plus nous pouvons utiliser d’images pour chaque catégorie, mieux un modèle peut être entraîné à dire à une image si c’est une image de chien ou de poisson. Dans ce cas, nous connaissons déjà la catégorie à laquelle appartient une image et nous l’utilisons pour entraîner le modèle. C’est ce qu’on appelle le « machine learning » supervisé.
Modélisation Étape 3 : Entraîner le modèle à catégoriser les images
Convolution layer
Nous divisons maintenant les petites images filtrées et les empilons en une seule liste, comme le montre la figure (I). Chaque valeur de la liste unique prédit une probabilité pour chacune des valeurs finales 1,2,…, 0. Cette partie est la même que la couche de sortie dans les réseaux neuronaux typiques. Dans notre exemple, « 2 » reçoit le score total le plus élevé de tous les nœuds de la liste unique. Ainsi, les réseaux de neurones reconnaissent l’image manuscrite originale comme étant « 2 ».
Quelle est la différence entre les CNN et les NN typiques ?
Les réseaux neuronaux typiques empilent l’image originale dans une liste et la transforment en couche d’entrée. L’information entre les pixels voisins peut ne pas être retenue. En revanche, les CNN construisent la couche de convolution qui retient les informations entre les pixels voisins.
Existe-t-il des codes CNN préformés que je peux utiliser ?
Oui. Si vous souhaitez apprendre le code, Keras dispose de plusieurs CNN préformés, notamment Xception, VGG16, VGG19, ResNet50, InceptionV3, InceptionResNetV2, MobileNet, DenseNet, NASNet et MobileNetV2. Il convient de mentionner cette grande base de données d’images ImageNet que vous pouvez contribuer ou télécharger à des fins de recherche.
Applications commerciales
La reconnaissance d’images a de nombreuses applications. Dans le prochain module, je vous montrerai comment la reconnaissance d’images peut être appliquée aux demandes d’indemnisation à traiter dans les assurances.
Pour plus de définition concernant la reconnaissnce d’image :