Claude Vision : Analyser Images, Graphiques et Documents Visuels
By Learnia Team
Claude Vision : Analyser Images, Graphiques et Documents Visuels
📅 Dernière mise à jour : 10 mars 2026 — Couvre la Vision API, l'OCR et l'analyse de documents.
🔗 Article pilier : API Claude : Guide Complet
Qu'est-ce que Claude Vision ?
Claude Vision est la capacité multimodale de Claude qui lui permet de comprendre et analyser des images. Contrairement à la simple reconnaissance d'objets, Claude peut :
- →Lire du texte (OCR) dans des documents, captures d'écran et photos
- →Interpréter des graphiques et en extraire les données
- →Analyser des diagrammes techniques (UML, architecture, workflows)
- →Décrire des images en détail avec contexte
- →Comparer plusieurs images dans une même requête
Envoyer une Image via l'API
Méthode 1 : Base64
La méthode base64 encode l'image directement dans la requête. Idéale pour les images locales.
import anthropic
import base64
client = anthropic.Anthropic()
# Encoder l'image en base64
with open("graphique-ventes.png", "rb") as f:
image_data = base64.standard_b64encode(f.read()).decode("utf-8")
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/png",
"data": image_data
}
},
{
"type": "text",
"text": "Analyse ce graphique de ventes. Quelles tendances observes-tu ?"
}
]
}]
)
print(response.content[0].text)
Méthode 2 : URL
La méthode URL pointe vers une image accessible publiquement.
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "url",
"url": "https://example.com/dashboard-screenshot.png"
}
},
{
"type": "text",
"text": "Décris ce dashboard et identifie les KPIs visibles."
}
]
}]
)
Comparaison des Méthodes
| Aspect | Base64 | URL |
|---|---|---|
| Images locales | ✅ | ❌ |
| Images en ligne | ⚠️ (télécharger d'abord) | ✅ |
| Taille requête | Plus grande | Plus petite |
| Fiabilité | Toujours fonctionne | Dépend de l'accès URL |
| Recommandé pour | Applications, scripts | Prototypage rapide |
Formats et Limites
| Format | Supporté | Notes |
|---|---|---|
| JPEG | ✅ | Format le plus courant, bonne compression |
| PNG | ✅ | Idéal pour les captures d'écran et diagrammes |
| GIF | ✅ | Premier frame uniquement (pas d'animation) |
| WebP | ✅ | Bon compromis taille/qualité |
| SVG | ❌ | Convertir en PNG d'abord |
| ⚠️ | Via la fonctionnalité document, pas image | |
| TIFF | ❌ | Convertir en JPEG ou PNG |
Limites techniques :
- →Taille max : 20 Mo par image
- →Images par requête : Jusqu'à 100
- →Résolution : Automatiquement redimensionnée si trop grande
- →Tokens : Calculés en fonction de la résolution de l'image
Calcul des Tokens par Image
Les images consomment des tokens proportionnellement à leur taille :
| Résolution | Tokens approximatifs |
|---|---|
| 200×200 | ~250 tokens |
| 500×500 | ~800 tokens |
| 1000×1000 | ~1 600 tokens |
| 1920×1080 | ~2 500 tokens |
| 4000×3000 | ~5 000 tokens |
Multi-Image : Comparaison et Analyse
Claude peut analyser plusieurs images simultanément, ce qui ouvre des cas d'usage puissants.
import base64
def load_image(path):
with open(path, "rb") as f:
return base64.standard_b64encode(f.read()).decode("utf-8")
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=2048,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {"type": "base64", "media_type": "image/png",
"data": load_image("design-v1.png")}
},
{
"type": "image",
"source": {"type": "base64", "media_type": "image/png",
"data": load_image("design-v2.png")}
},
{
"type": "text",
"text": """Compare ces deux versions du design :
1. Quelles sont les différences majeures ?
2. Quelle version respecte mieux les principes UX ?
3. Suggestions d'amélioration pour la version retenue."""
}
]
}]
)
Cas d'Usage Multi-Image
| Cas d'usage | Nombre d'images | Description |
|---|---|---|
| Avant/Après | 2 | Comparer un design avant et après modification |
| A/B Testing | 2-4 | Évaluer des variantes de maquettes |
| Audit UI | 5-10 | Vérifier la cohérence visuelle d'un site |
| Classification | 10-50 | Catégoriser un lot de photos produit |
| Documentation | 3-10 | Extraire le contenu de plusieurs pages scannées |
OCR et Extraction de Texte
Claude excelle en reconnaissance de texte (OCR), bien au-delà de la simple lecture de caractères.
# OCR d'un document scanné
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=4096,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {"type": "base64", "media_type": "image/jpeg",
"data": load_image("facture-scan.jpg")}
},
{
"type": "text",
"text": """Extrais les informations suivantes de cette facture :
- Numéro de facture
- Date
- Nom du fournisseur
- Montant HT
- TVA
- Montant TTC
- Liste des articles avec prix unitaire
Retourne le résultat en JSON structuré."""
}
]
}]
)
Capacités OCR
| Type de document | Qualité | Notes |
|---|---|---|
| Texte imprimé | ⭐⭐⭐⭐⭐ | Excellente précision |
| Captures d'écran | ⭐⭐⭐⭐⭐ | Lit le texte et comprend l'interface |
| Manuscrit lisible | ⭐⭐⭐⭐ | Bonne qualité, dépend de l'écriture |
| Manuscrit illisible | ⭐⭐ | Résultats variables |
| Documents scannés (bonne qualité) | ⭐⭐⭐⭐⭐ | Comprend la mise en page |
| Documents scannés (mauvaise qualité) | ⭐⭐⭐ | Peut manquer des détails |
Analyse de Graphiques et Diagrammes
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=2048,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {"type": "base64", "media_type": "image/png",
"data": load_image("graphique-financier.png")}
},
{
"type": "text",
"text": """Analyse ce graphique financier :
1. Quels sont les axes et leurs unités ?
2. Quelle est la tendance générale ?
3. Identifie les points d'inflexion ou anomalies.
4. Extrais les valeurs approximatives des points clés.
5. Résume en 3 insights pour un directeur financier."""
}
]
}]
)
Types de Visuels Analysables
| Type | Capacité | Exemple d'extraction |
|---|---|---|
| Graphique en barres | ✅ Valeurs et labels | "Q1: 120K, Q2: 145K, Q3: 98K" |
| Graphique en ligne | ✅ Tendances et points | "Croissance de 15% entre mars et juin" |
| Camembert | ✅ Proportions | "Marketing: 35%, R&D: 28%, Ventes: 22%" |
| Tableau dans image | ✅ Extraction structurée | Reconstitue le tableau en Markdown |
| Diagramme UML | ✅ Relations et entités | "3 classes avec héritage et 2 interfaces" |
| Organigramme | ✅ Hiérarchie | Structure de l'organisation |
| Architecture système | ✅ Composants et flux | "Microservices avec API Gateway et Redis" |
Bonnes Pratiques
Optimiser la Qualité d'Analyse
- →Utilisez des images de haute qualité — Résolution suffisante pour que le texte soit lisible
- →Cadrez bien le sujet — Évitez les images trop larges avec le contenu important en petit
- →Préférez PNG pour les captures d'écran — Pas de compression avec perte
- →Orientez l'image correctement — Claude gère la rotation, mais mieux vaut une orientation correcte
Optimiser les Coûts
- →Redimensionnez avant envoi — Une image 1000×1000 suffit pour la plupart des analyses
- →Compressez les JPEG — Qualité 80% est suffisante pour l'OCR
- →Limitez le nombre d'images — Envoyez uniquement les images nécessaires
- →Utilisez les bonnes résolutions par cas d'usage :
| Cas d'usage | Résolution recommandée | Tokens approx. |
|---|---|---|
| OCR texte | 1000-1500px de large | ~1 500 |
| Graphique simple | 800-1200px | ~1 200 |
| UI complète | 1920×1080 | ~2 500 |
| Photo de document | 1500-2000px | ~2 000 |
Rédiger des Prompts Visuels Efficaces
| ❌ Prompt vague | ✅ Prompt précis |
|---|---|
| "Que vois-tu ?" | "Liste tous les éléments UI visibles avec leur texte et position." |
| "Analyse cette image" | "Extrais les 5 KPIs affichés dans ce dashboard et leurs valeurs." |
| "Lis ce document" | "Extrais le nom, la date et le montant total de cette facture en JSON." |
Module 0 — Prompting Fundamentals
Build your first effective prompts from scratch with hands-on exercises.
Weekly AI Insights
Tools, techniques & news — curated for AI practitioners. Free, no spam.
Free, no spam. Unsubscribe anytime.
→Related Articles
FAQ
Quels formats d'image Claude supporte-t-il ?+
Claude supporte JPEG, PNG, GIF (premier frame seulement) et WebP. La taille maximale est de 20 Mo par image, et la résolution est automatiquement ajustée si elle dépasse les limites du modèle.
Comment envoyer une image à Claude via l'API ?+
Deux méthodes : base64 (encoder l'image et l'inclure directement dans la requête) ou URL (fournir un lien public vers l'image). La méthode base64 est plus fiable pour les images locales.
Claude peut-il lire du texte dans les images (OCR) ?+
Oui, Claude excelle en OCR. Il peut lire du texte imprimé, des documents scannés, des captures d'écran et même du texte manuscrit avec une bonne précision. Il comprend aussi la mise en page et la structure.
Combien d'images peut-on envoyer dans une seule requête ?+
Vous pouvez envoyer jusqu'à 100 images dans une seule requête. Chaque image consomme des tokens proportionnellement à sa résolution. Attention au coût sur les requêtes multi-images.
Claude peut-il analyser des graphiques et des diagrammes ?+
Oui, Claude peut lire des graphiques (barres, lignes, camembert), des diagrammes UML, des organigrammes et des schémas. Il identifie les tendances, extrait les valeurs approximatives et décrit les relations visuelles.