ForHosting KIT · Images

Remplacer une couleur précise dans une image

Passez du rouge au vert dans une liste de pixels d’image. Avec une tolérance de 32, le rouge pur et les deux rouges proches changent, soit 3 pixels sur 5 remplacés. Chaque canal est comparé séparément, ce qui attrape aussi les ombres des bords. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Pixels
#FF0000, #FF2020, #00FF00, #0000FF, #FE0101
Cible
#FF0000
Tolérance
32
Remplacement
#00FF00
Vous obtenez
Pixels
#00FF00, #00FF00, #00FF00, #0000FF, #00FF00
Nombre de remplacements
3
Nombre total
5

Un pixel compte comme correspondance lorsque ses canaux rouge, vert et bleu diffèrent de la cible d'au plus la tolérance choisie : avec zéro, seules les correspondances exactes sont remplacées, et une valeur plus grande couvre les ombrages et l'anticrénelage des bords. C'est la version déterministe et hors ligne d'un recoloriage à la baguette magique : sans décodage d'image, sans IA, juste une règle claire de distance par canal que vous pouvez reproduire partout.

Ce que signifie remplacer une couleur avec tolérance

Les images réelles ne contiennent presque jamais une seule couleur unie. Un logo rouge est entouré d'un halo de pixels rosés d'anticrénelage, et la photo d'une voiture rouge contient des dizaines de rouges selon la lumière. Si vous ne changiez que la valeur hexadécimale exacte, le résultat serait inégal et amateur.

La tolérance règle cela en définissant un voisinage autour de la cible : cet outil mesure, pour chaque pixel, la plus grande différence absolue entre les canaux rouge, vert et bleu, et remplace le pixel lorsque cette distance est inférieure ou égale à votre tolérance. Une tolérance de 0 est une égalité stricte, utile pour les icônes, les sprites et les graphismes plats d'interface. Les valeurs entre 16 et 48 sont la plage habituelle pour les dégradés et les photos.

Choisir la cible, la tolérance et le remplacement

Commencez par échantillonner la couleur à faire disparaître. La cible accepte une valeur hexadécimale standard #RRGGBB ; si vous n'êtes pas sûr de la valeur exacte, un outil de couleur dominante ou de palette vous dira de quoi l'image est réellement faite. Réglez ensuite la tolérance en partant de zéro : exécutez avec 0, regardez combien de pixels ont été remplacés, puis augmentez jusqu'à couvrir le halo autour du sujet sans déborder sur les éléments voisins.

Le remplacement est aussi une couleur hexadécimale, écrite telle quelle dans chaque pixel correspondant : il n'y a pas de mélange, donc l'échange est net. Une garde utile à connaître : la tolérance doit être zéro ou un entier positif jusqu'à 255.

Où elle s'intègre dans un vrai flux de travail

L'entrée et la sortie sont des listes de couleurs de pixels, pas des fichiers image encodés, ce qui fait de cette capacité une brique de construction plutôt qu'un éditeur photo complet. Ceux qui l'utilisent extraient généralement les pixels d'une petite ressource — un favicon, une série de graphique, un sprite de jeu, un marqueur de type QR —, les recolorent ici et réassemblent l'image de leur côté. Les équipes marketing s'en servent pour générer les variantes de couleur d'un seul rendu maître.

Les pipelines de graphiques s'en servent pour changer la couleur d'une série sans refaire le rendu. Les outils d'accessibilité s'en servent pour faire correspondre les couleurs problématiques à des couleurs conformes.

Recolorer des variantes de produit

Changez la couleur principale d'un rendu produit pour générer tous les coloris depuis une seule ressource maître, la tolérance couvrant l'ombrage des bords.

Re-thématiser un graphique ou un sprite

Faites passer une couleur de l'ancienne palette à la nouvelle couleur de marque sur chaque pixel d'un petit graphique, sans ouvrir d'éditeur.

Corriger une couleur pour l'accessibilité

Remplacez une couleur de marque non conforme par son équivalent accessible dans les icônes et les graphismes d'interface avant la publication.

Combien cela coûte-t-il ?

C'est aussi gratuit dans votre navigateur sur cette page.

Comment une correspondance est-elle décidée ?

Un pixel correspond lorsque la plus grande différence par canal (rouge, vert ou bleu) avec la couleur cible est inférieure ou égale à la tolérance. Avec une tolérance de 0, seules les correspondances exactes sont remplacées.

Que se passe-t-il si la tolérance est négative ?

Une tolérance négative n'a aucun sens et indique généralement un bogue dans le code appelant.

Accepte-t-elle un fichier image ?

Non. Elle opère sur les couleurs des pixels de l'image, fournies sous forme de liste de couleurs hexadécimales #RRGGBB, et renvoie la liste recoloriée. Vous décodez et réassemblez l'image de votre côté.

Quelle tolérance choisir ?

Prenez 0 pour les icônes, les sprites et les graphismes en aplat, et environ 16 à 48 pour les dégradés et les photos. Commencez à zéro, regardez combien de pixels ont changé, puis montez jusqu’à couvrir le halo sans déborder.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/image/color-replace

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/image/color-replace \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"pixels":["#FF0000","#FF2020","#00FF00","#0000FF"],"target":"#FF0000","replacement":"#00FF00"}'
{
  "pixels": [
    "#FF0000",
    "#FF2020",
    "#00FF00",
    "#0000FF"
  ],
  "target": "#FF0000",
  "replacement": "#00FF00"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.color_replace",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_pixels262144
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

L'API de remplacement de couleur prend les couleurs des pixels d'une image, une couleur cible, une tolérance et une couleur de remplacement, puis renvoie la liste des pixels avec chaque pixel correspondant déjà échangé.

Ce que signifie remplacer une couleur avec tolérance

La règle étant une simple comparaison numérique, la même entrée produit toujours la même sortie : vous testez dans le navigateur, puis vous automatisez exactement le même appel via l'API avec des résultats identiques, ce qu'il faut quand le recoloriage alimente un pipeline de build ou un générateur de variantes.

Choisir la cible, la tolérance et le remplacement

Une tolérance négative est rejetée avec une erreur invalid_input au lieu d'être tronquée en silence, car un rayon négatif n'a aucun sens et signale généralement un bogue dans le code appelant, que vous préférerez voir immédiatement plutôt que de déboguer ensuite une image subtilement fausse.

Où elle s'intègre dans un vrai flux de travail

L'opération entière est assez économique pour tourner gratuitement dans votre navigateur sur cette page, et coûte $0.002 par requête via l'API quand vous l'automatisez. Aucun fichier n'est téléversé ni conservé, le calcul est entièrement déterministe et la limite de 262144 pixels par appel couvre largement les sprites et les icônes.

Le résultat est-il déterministe ?

Oui. La règle est une simple comparaison de distance par canal, sans aléatoire : la même entrée produit donc toujours la même sortie dans le navigateur et via l'API.

Y a-t-il une limite de taille ?

Jusqu'à 262144 pixels par appel, ce qui couvre largement les icônes, les sprites et les petites ressources.

Consulter la documentation complète du KIT →