Ami dev, si tu as envie d’ajouter un peu d’IA dans tes projets sans trop t’arracher les cheveux, sache qu’une panoplie de services prêts à l’emploi est là pour toi ! Reconnaitre un texte dans une image ? Obtenir une traduction instantanée ? Comparer la photo de tonton moustache dans une collection pour voir s’il est présent (et il va même te le trouver plus jeune et sans moustache… on évitera de parler de tata moumoute !) ? Savoir si un commentaire ou un texte a une connotation positive ou négative ? Bref, avec les API cloud, tout est possible.
Aujourd’hui, on va s’attaquer à AWS Rekognition, le service d’analyse d’images d’Amazon !
Pourquoi j'utilise le cloud pour l’IA ?
Bon, reconnaître un chat ou un chien avec un script de machine learning, c’est facile. Tu lances un petit modèle TensorFlow gratos, tu le push en prod, et voilà ! (Pratique si tu dois juste faire la différence entre un bouton et une fermeture éclair...)
Mais si tu veux vraiment analyser ce qui est sur une photo… comment dire…
Tu vas passer plusieurs mois à construire et affiner ton modèle prédictif.
Tu vas te ruiner en coût serveur pour l’entraîner.
Et honnêtement, Amazon l’a déjà fait pour toi (et les ingé derrière sont légions)…
Heureusement, avec une simple requête CURL à AWS Rekognition, en une seconde (ou presque), tu obtiens un retour JSON de ce que contient l’image. Bluffant, non ?
Ok mais dans mon projet PHP symfony / Laravel je fais comment ?
Facile, voici un exemple en PHP Vanilla (sans framework, juste du brut). L’idée est simple : envoyer une image à Rekognition et voir ce qu’il nous répond.
commence par récup le SKD avec composer require aws/aws-sdk-php
et trouve une image sympa à analyser. Par exemple
Bon, on devrait avoir un retour avec plage, mer, skatteurs... on va voir !
puis dans ton PHP
<?php
require 'vendor/autoload.php';
use Aws\Rekognition\RekognitionClient;
use Aws\Exception\AwsException;
// Configuration AWS
$rekognition = new RekognitionClient([
'region' => 'us-east-1',
'version' => 'latest',
'credentials' => [
'key' => 'your-access-key',
'secret' => 'your-secret-key',
]
]);
// Télécharger l'image depuis l'URL
$imageUrl = "lien de ton image en https";
$imageData = file_get_contents($imageUrl);
if (!$imageData) {
die("Impossible de télécharger l'image !");
}
// Analyser l'image avec Rekognition
try {
$result = $rekognition->detectLabels([
'Image' => ['Bytes' => $imageData],
'MaxLabels' => 10, // Nombre maximum de labels
'MinConfidence' => 85 // Seulement les labels avec une confiance > 85%
]);
// Afficher le JSON du résultat
header('Content-Type: application/json');
echo json_encode($result, JSON_PRETTY_PRINT);
} catch (AwsException $e) {
echo "Erreur : " . $e->getMessage();
}
Et voici le retour json pour tout ce qui est supérieur à 85% en valeur prédictive (version simplifiée)
"Labels": [
{
"Name": "Beach",
"Confidence": 99.5
},
{
"Name": "Ocean",
"Confidence": 98.2
},
{
"Name": "Palm Tree",
"Confidence": 96.8
},
{
"Name": "Person",
"Confidence": 95.3
},
{
"Name": "Skateboard",
"Confidence": 92.7
},
{
"Name": "Surfer",
"Confidence": 89.1
},
{
"Name": "Sunbathing",
"Confidence": 87.5
},
{
"Name": "Summer",
"Confidence": 85.4
}
],
}
Mais les autres géants sont de la partie !
Google et Microsoft Azure proposent aussi leurs propres solutions de Machine Learning dans le cloud. Selon ton besoin, l'une ou l'autre peut être plus adaptée :
-
Google Vision AI excelle dans la reconnaissance d’objets, d’écritures et de logos de marques célèbres. Il est parfait pour une analyse de scène avancée, notamment pour extraire des concepts visuels détaillés.
-
Azure Computer Vision est une solution très puissante pour l’OCR, surtout pour la reconnaissance de textes manuscrits et la description automatique d’images en langage naturel. Il est idéal si tu travailles avec des documents ou des données textuelles.
Bref, selon ton projet, le choix peut varier. Si tu es déjà dans l’écosystème AWS, Rekognition est un bon choix. Si ton besoin est l’OCR manuscrit, Azure est une référence. Et pour une détection ultra-précise des objets et logos, Google Vision AI est imbattable.
Combien ça coûte ?
$1 pour 1 000 images analysées chez AWS. Franchement, selon le projet, ça tient la route. Mais si tu veux scaler à grande échelle, il y a aussi des solutions open-source !
-
OpenCV & Tesseract pour le traitement d’images et la reconnaissance de texte en local.
-
TensorFlow & PyTorch si tu veux t’amuser à entrainer ton propre modèle IA.
(Ah, l’open source… On n’a jamais autant gagné d’argent depuis que tout est gratuit !)
Et en local ?
Le truc cool, c’est que tu peux jouer avec Python en local et analyser tes vieilles photos d’il y a 10 ans. Imagine retrouver toutes les images de ta famille en un clic, directement depuis un fichier Excel ! "Alors pépé il est sur la photo 56,1012 et 2054! "