Contexte technique
Les générateurs d’images basés sur la diffusion, notamment Stable Diffusion 2.1 et DALL·E 3, s’appuient sur des jeux de données massifs comme LAION‑5B, contenant plus de 5 milliards d’images collectées sur le web. Une proportion importante de ces images représente des plats, mais la plupart sont issues de photographies professionnelles, de réseaux sociaux ou de banques d’images où la mise en scène est optimisée. Cette distribution biaisée influe directement sur la capacité du modèle à reproduire la texture, la brillance et la profondeur de champ typiques d’une cuisine maison.
Les modèles de diffusion fonctionnent en apprenant à inverser un processus de bruit progressif sur des résolutions courantes de 512 × 512 px ou 768 × 768 px. Le nombre d’étapes de débruitage (généralement 50‑100) et le facteur de guidage (CFG) déterminent la fidélité du rendu. Des réglages trop élevés favorisent la conformité au texte au détriment de la cohérence visuelle, ce qui explique les « photos laides » souvent observées.
Mécanismes de génération
Lorsqu’un prompt tel que "a close‑up of a juicy cheeseburger on a wooden board, photorealistic, 8k" est soumis, le modèle décode d’abord un vecteur latent issu d’un bruit gaussien. Chaque pas de diffusion applique un réseau UNet entraîné à prédire le bruit résiduel. La qualité finale dépend de la représentation latente du « food‑concept » dans l’espace d’embedding du texte, généralement fourni par CLIP‑ViT‑L/14. Si le texte ne correspond pas à un concept bien présent dans le jeu de données, le réseau compense en combinant des éléments disparates, d’où les couleurs saturées ou les textures floues.
Le réglage du guidance scale à 7,5 (valeur courante) pousse le modèle à respecter le texte, mais augmente le risque de sur‑déformation des objets. En réduisant ce paramètre à 3‑4, on observe une amélioration de la continuité des surfaces, mais les résultats deviennent plus vagues et parfois hors sujet.
Limites observées
Les images générées présentent souvent des artefacts de « edge‑bleeding », où les contours des aliments se mélangent avec le fond. Cette faiblesse provient du manque de données d’entraînement à haute résolution (supérieure à 1 MP) et de l’absence de supervision explicite sur les propriétés physiques des aliments (indice de réfraction, diffusion de la lumière). De plus, les modèles affichent un biais culturel : les plats asiatiques ou africains sont sous‑représentés, ce qui conduit à des rendus stéréotypés ou à des erreurs de composition (ex. : un sushi présenté avec du fromage).
Sur le plan de la sécurité, les générateurs peuvent reproduire des images protégées par le droit d’auteur, car les poids du modèle mémorisent des motifs spécifiques. Les entreprises qui utilisent ces images à des fins commerciales s’exposent à des risques juridiques, surtout lorsqu’elles sont diffusées à grande échelle.
Perspectives d'application
Malgré leurs défauts, ces modèles offrent un potentiel pour créer des jeux de données synthétiques destinés à entraîner des classificateurs de reconnaissance d’aliments. En combinant la diffusion avec des réseaux de rendu physique (p. ex. : differentiable rendering), on pourrait contraindre la génération à respecter les lois de la réfraction et de la réflexion, améliorant ainsi la plausibilité des textures.
# Exemple de prompt Stable Diffusion avec réglage de guidance
prompt = "high‑resolution photo of a steaming bowl of ramen, soft lighting, realistic steam, 8k"
guidance_scale = 4.5 # équilibre entre fidélité texte et cohérence visuelle
num_inference_steps = 75
output = pipe(prompt, guidance_scale=guidance_scale, num_inference_steps=num_inference_steps)
output.save("ramen.png")