Inpainting
Délimitez une zone avec un masque et ne redessinez que cette zone ; tout le reste demeure inchangé.
Vous n’écrivez pas de code ? Consultez Générer des images dans vos propres outils.
Avant de commencer
https://api.ofox.ai/v1openai/gpt-image-2.5-flarepip install openai pillowpillow sert à créer le masqueExigences relatives au masque
Illustration, et non un résultat réellement généré
- Un PNG avec canal alpha. Le JPEG et le PNG opaque ne fonctionnent pas.
- Exactement la même taille que l’image d’origine.
- Les pixels transparents sont redessinés ; les pixels opaques conservent l’original.
- Ne fonctionne que sur l’endpoint d’édition. Envoyé au texte vers image, il est ignoré.
Étapes
Créer un masque
Ignorez cette étape si vous en avez déjà un.
Cet extrait lit input.png dans le répertoire courant, rend transparent le carré central de 40 % et l’enregistre sous mask.png.
from PIL import Image, ImageDraw
src = Image.open("input.png")
mask = Image.new("RGBA", src.size, (0, 0, 0, 255)) # fully opaque = keep everything
w, h = src.size
ImageDraw.Draw(mask).rectangle( # transparent area = what gets repainted
(int(w * 0.3), int(h * 0.3), int(w * 0.7), int(h * 0.7)), fill=(0, 0, 0, 0)
)
mask.save("mask.png")Envoyer la requête
Chacun des exemples ci-dessous a été exécuté tel quel. Le résultat est enregistré sous output.png dans le répertoire courant.
cURL
# mask.png: same size as input.png, with an alpha channel; transparent area = what gets repainted
curl -s https://api.ofox.ai/v1/images/edits \
-H "Authorization: Bearer YOUR_OFOX_API_KEY" \
-F "model=openai/gpt-image-2.5-flare" \
-F "image=@input.png" \
-F "mask=@mask.png" \
-F "prompt=An orange cat sitting in the center, background and everything else unchanged" \
-F "quality=low" \
-o response.json
jq -r '.data[0].b64_json' response.json | base64 --decode > output.pngRédiger la consigne
Décrivez l’image entière telle qu’elle doit apparaître après modification, et pas seulement ce qu’il faut ajouter.
Résultat mesuré
En dehors du masque, l’image ne change pratiquement pas : l’écart moyen des pixels par rapport à l’original est inférieur à 2/255.
À titre de comparaison, la modification de la même image sans masque a changé cette même zone de 120/255.
Dépannage
Pour les autres erreurs, consultez le tableau complet des erreurs.
Documentation officielle
La documentation d’OpenAI décrit le comportement lors d’un appel direct à OpenAI. Lorsque vous passez par OfoxAI, les résultats mesurés dans ces pages font foi. Par exemple, il n’est pas nécessaire d’épingler un fournisseur pour l’édition.