API Vision Par Google

1 )C'est quoi une API?

2.1 ) L’entreprise

3) VISION

3.1 ) L’API Vision

3.2 ) Les fonctionnalités de l’API

3.3 ) L’installation

4) Programme sous Python

4.1) Détection des labels

4.2) Détection des landmarks

4.3) Explication des fonctions disponibles

5) Conclusion

 

1) C’est quoi une API ?

Une api est une interface de programmation applicative ( application programming interface ) qui est un ensemble de classes / méthodes / fonctions qui offre à un logiciel des services à d’autres logiciels .
Cela est accompagné d’un service web ou d’un bibliothèque avec des descriptions pour savoir comment l’utiliser .

Des exemples d’API :

Google Maps API pour pouvoir utiliser les cartes Google sur son site web

OpenGL/Vulkan/Direct3D qui permettent de faire du graphisme 3D

JDBC qui permet d’accéder à des bases de données

 

2.1) L’entreprise

Google est une entreprise américaine qui est connu grâce à son moteur de recherche Google, la part de marché avec ce moteur de recherche dans le monde est de 90.6 %.

Google a aussi développé son propre système d’exploitation qui est Android et qui est le système le plus utilisé dans le monde, sa particularité est qu’il est open source

La particularité de Google est que la plupart de ses logiciels sont gratuits et en contrepartie gagne de l’argent grâce à la pub

Et comme cela a était dit, il développe aussi des API et c’est pour cela que on va en parler

 

3.1 ) L’API Vision

L’API Vision permet de lire les images en temps réel et permet de ressortir des informations dessus

Exemple : arrière-plan : voiture qui roule avec de la nature

Premier plan : une femme

Les mots qui vont donc ressortir grâce à l’API seront en anglais : car / nature / human

Explication par Google : L'API Cloud Vision permet aux développeurs de comprendre le contenu d'une image en intégrant de puissants modèles de machine learning dans une API REST facile à utiliser. Cloud Vision classe les images rapidement dans des milliers de catégories (par exemple, "bateau"). Elle détecte également les objets et les visages et reconnaît les mots en caractères d'imprimerie contenus dans les images. Créez des métadonnées pour votre catalogue d'images, modérez le contenu choquant ou mettez en place de nouveaux scénarios marketing d'après l'analyse des sentiments des contenus visuels.

3.2 ) Les fonctionnalités de l’API

Détection des thèmes sur l’image par catégorie : voiture / bateau/ sport / vêtement etc.

Recherche d’images similaires sur le web

Permet d’extraire le texte d’une image pour pouvoir l’utiliser

Permet de reconnaitre et d’extraire l’écriture manuscrite

Permet de reconnaitre les logos

Selon le type d’objet pris en photo, la localisation va ressortir (Exemple : si on prends la tour Eiffel, Paris va ressortir)

API REST ce qui permet d’intégrer directement les images dans la requête

Détecte les visages et permet de ressortir les émotions et les accessoires de la personne

Permet de détecter les images réservées aux adultes

Permet de détecter les produits (ordinateurs /sacs à main / etc ) et de vous donner les prix

Permet de ressortir toutes les caractéristiques de l’image en question

 

Exemple avec cette image :

Voila ce qui en ressort pour les résultats web 

On voit qu’il y a un système de précision selon le mot trouvé, et on peut cliquer directement dessus pour aller faire une recherche

Ici on voit que l’API à bien trouvé le modèle du véhicule la marque, le type de voiture

On voit les couleurs dominantes reconnu grâce à l’API,et ce qui ressort en premier c’est la couleur de la voiture

Ici le résultat des mots violents ou images violentes, on voit que les résultats sont faibles car l’API n’a rien détecté

Ici les caractéristiques principales de l’image avec un pourcentage de précision

On voit bien qu’il ressort les informations principales ( voiture,véhicule a moteur etc )

 

3.3 ) Installation

Petit tutoriel pour python :

Il suffit d’aller ici  https://cloud.google.com/vision/ et faire un essai gratuit

Lorsque cela est fait il faut aller ici https://console.cloud.google.com/home/dashboard et créer un projet qui va être compatible avec l’API
Ensuite créer une clé de compte de service pour pouvoir l’intégrer à votre application

Le type de clé doit être au format JSON

Ensuite pour python installer les fichiers nécessaires :

pip install --upgrade google-api-python-client

pip install --upgrade google-cloud-vision

pip install --upgrade google-cloud

Ensuite installer le sdk sur votre ordinateur

https://cloud.google.com/sdk/

Lorsque celui-ci est installé, il suffit de se logger avec son compte Google grâce à la console du SDK

Chemin installation : C:\Users\Votre nom\AppData\Local\Google\Cloud SDK

Lancer une invite de commande et mettre cette ligne

gcloud auth login

Une fenêtre sur votre navigateur va s’ouvrir et se connecter avec votre compte google qui a était utilisé pour l’essai gratuit  et ensuite choisir votre projet précédemment crée !

 

4) Programme sous python

4.1 ) Détection des labels :

Prenons cette image :

Nous voulons savoir tous les labels possibles sur cette image

Voici le code python qui va être nécessaire

On commence par les imports nécessaires

Dans le main on mets ce code

Explication du code :

On instancie un client grâce à vision importé précédemment

On crée une var content qui va permettre de lire le fichier

On crée une var image qui va permettre de recevoir des fichiers de type image

On crée une var réponse qui va contenir tout ce qui est contenu dans l’image

On crée une var labels qui va stocké tout les labels contenu dans la réponse

Et ensuite on fait un affichage dans la console grâce au print en bouclant sur tout les labels

La première chose que fait le programme est de rentrer dans cette fonction

Le parser qui vient d’être crée va recevoir en paramètre l’image et va lancer ensuite le main avec l’image en question

Voici le résultat en question avec l’image

$ python examples/label_detection.py images/label.jpg

Labels:

laptop

electronic device

technology

netbook

computer keyboard

personal computer

gadget

4.2) Détection des landmarks

Nous voulons savoir le nom de ce monument

Le code est exactement le même que l’ancien sauf dans le main ou la fonction utilisé est landmark_detection au lieu de label_detection

C’est la seule différence

Le résultat avec cette image :

$ python examples/landmark_detection.py images/landmark.jpgFound landmark: Statue of Liberty

4.3 ) Explication des fonctions disponibles

Comme nous avons vu précédemment, les fonctions sont déjà prédéfinis grâce à l’API , donc pas besoin de coder soit même , tout est fait automatiquement

Les fonctions disponibles en python : face_detection() , landmark_detection(), logo_detection() , label_detection() , text_detection(), safe_search_detection()

Face pour le visage d’une personne

landmark pour les monuments ( point de repère )

logo pour détecter les logos d’entreprises

label pour ressortir les informations d’une image

text pour pouvoir ressortir tout ce qui est écris sur l’image

safe_search pour savoir si l’image est conseillé aux enfants ou non .

 

5) Conclusion

Cette API permet vraiment de nombreuses choses et permet surtout de gagner énormément de temps dans la reconnaissance d’image

Cette API est utilisable sur de nombreuses plateformes (téléphones, windows , linux etc )

Sur smartphone il suffit d’utiliser la caméra de son téléphone et de pointer vers une plante par exemple pour savoir le nom et les caractéristiques techniques de celle-ci

Ces API dotés d’intelligence artificielle vont encore s’améliorer car c’est le but principal de l’IA : apprendre tout seul et améliorer les résultats pour avoir encore plus de précision.

Pas de commentaire.

Ajouter un commentaire