ForHosting KIT · Outils pour développeurs

Convertisseur YIQ vers RGB

Ce convertisseur YIQ vers RGB transforme la luminance et les deux composantes de chrominance du modèle NTSC en valeurs rouges, vertes et bleues directement utilisables.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Il applique une matrice inverse fixe, fournit les canaux normalisés et sur 8 bits, puis signale tout écrêtage nécessaire pour rester dans la gamme RGB affichable. Une validation stricte refuse les données absentes, non numériques, infinies ou hors limites avant le calcul. Sans accès réseau, il restitue toujours le même résultat pour les mêmes composantes Y, I et Q.

Saisissez correctement les composantes YIQ normalisées

Fournissez trois composantes numériques : Y pour la luminance, I pour la chrominance en phase et Q pour la chrominance en quadrature. Y doit être compris entre 0 et 1, I entre -0.5957 et 0.5957, et Q entre -0.5226 et 0.5226. Il s’agit des limites normalisées du modèle YIQ NTSC, et non d’octets ou de pourcentages. Une valeur Y proche de zéro correspond à une faible luminance, tandis qu’une valeur proche de un indique une forte luminance. Les composantes signées I et Q portent l’information chromatique autour de cette luminance. Envoyez de véritables nombres JSON, jamais des chaînes numériques, afin que le contrat reste sans ambiguïté dans l’API, les SDK et le formulaire web. Le convertisseur refuse les valeurs manquantes, les chaînes, les valeurs assimilables à NaN, les infinis et les nombres hors des domaines déclarés. Cette rigueur empêche une erreur de saisie ou d’échelle de produire une couleur faussement crédible. Les alias luminance, in_phase et quadrature sont acceptés, mais y, i et q restent les champs canoniques.

Comprenez la matrice NTSC inverse et l’écrêtage

Le calcul applique la transformation fixe R = Y + 0.956I + 0.621Q, G = Y - 0.272I - 0.647Q et B = Y - 1.106I + 1.703Q. Chaque équation produit d’abord un canal normalisé non écrêté. Des composantes YIQ valides peuvent néanmoins décrire une couleur extérieure au cube RGB, car le domaine YIQ autorisé ne coïncide pas avec toutes les combinaisons rouge, verte et bleue bornées entre zéro et un. Chaque sortie brute est donc limitée séparément : une valeur inférieure à zéro devient zéro, et une valeur supérieure à un devient un. Le convertisseur conserve les valeurs antérieures dans unclamped_rgb et repère chaque canal concerné dans clipped ; l’écrêtage n’est ainsi jamais dissimulé. Il multiplie ensuite chaque composante normalisée limitée par 255 et l’arrondit à l’entier le plus proche pour créer les canaux usuels sur 8 bits. Ces mêmes canaux forment une couleur hexadécimale minuscule à six chiffres et une valeur CSS rgb(). Les coefficients fixes et l’arrondi stable garantissent des résultats reproductibles.

Interprétez le résultat et utilisez-le prudemment

Choisissez red, green et blue lorsqu’une application attend trois canaux entiers séparés ; rgb pour un tableau de trois éléments ; hex pour un outil de création ou un sélecteur de couleur ; et css pour une feuille de style. normalized_rgb convient aux logiciels graphiques qui emploient des canaux de zéro à un. unclamped_rgb sert au diagnostic plutôt qu’à l’affichage : il expose le résultat de la matrice avant la limitation de gamme. Examinez clipped lorsque la fidélité chromatique compte. Un canal écrêté signifie que le point YIQ demandé se trouve hors du RGB affichable ; la couleur renvoyée est alors une approximation par limitation indépendante, et non une représentation exactement réversible. Cette nuance est essentielle pour étudier d’anciens signaux télévisés, transposer des formules de traitement d’image ou comparer des implémentations fondées sur d’autres coefficients. Consignez la matrice choisie si un autre système peut employer une définition YIQ différente. Le service traite une conversion par requête au tarif $0.002 via l’API, sans réseau, hasard, horloge, état caché ni formatage régional.

Décoder des données couleur NTSC anciennes

Transformez les échantillons normalisés de luminance et de chrominance d’un jeu YIQ pédagogique ou archivé en canaux RGB affichables.

Contrôler une implémentation graphique

Comparez votre matrice inverse, son écrêtage, son format hexadécimal et son arrondi à une référence déterministe.

Étudier les couleurs hors gamme

Consultez les valeurs brutes et les indicateurs par canal pour comprendre pourquoi un point YIQ valide sort du cube RGB.

Quelles plages d’entrée sont acceptées ?

Y accepte 0 à 1, I accepte -0.5957 à 0.5957 et Q accepte -0.5226 à 0.5226. Les trois valeurs doivent être des nombres JSON finis.

Quelle matrice inverse est appliquée ?

La formule est R = Y + 0.956I + 0.621Q, G = Y - 0.272I - 0.647Q et B = Y - 1.106I + 1.703Q.

Pourquoi une entrée YIQ valide peut-elle être écrêtée ?

Le domaine valide peut dépasser le cube RGB normalisé. Les canaux bruts hors de 0 à 1 sont limités pour l’affichage.

Comment obtenez-vous les canaux RGB sur 8 bits ?

Chaque canal normalisé est borné entre 0 et 1, multiplié par 255, puis arrondi à l’entier le plus proche.

Cette conversion est-elle réversible ?

Seulement si les coefficients et l’arrondi concordent et si aucun canal n’est écrêté. L’arrondi entier supprime également de la précision.

Quel est le prix d’une requête API ?

Chaque requête coûte $0.002. Une requête convertit un élément de couleur YIQ.

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/color/yiq-rgb

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/color/yiq-rgb \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"y":0.5,"i":0.2,"q":-0.1}'
{
  "y": 0.5,
  "i": 0.2,
  "q": -0.1
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.yiq_rgb",
  "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.

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.

Consulter la documentation complète du KIT →