A la découverte du « Deep Color »

Note: ce texte est en cours de rédaction

L’arrivée de la haute définition s’accompagne du développement de technologies destinées à fournir non seulement des images plus grandes (c’est ce en quoi consiste la haute définition) mais également des images plus riches en couleurs.

En pratique pour l’instant, il existe deux méthodes pour améliorer la qualité des couleurs affichées sur l’écran (en fait leur nombre, pas leur qualité) :

  1. La première de ces techniques consiste à utiliser la totalité de ce dont est capable le traditionnel encodage sur 8 bits par couleur. C’est la spécification x.v.YCC (à lire ici)
  2. La seconde consiste à pousser le raisonnement un cran plus loin et à augmenter le nombre de bits servant à décrire chaque couleur, c’est ce qu’on appelle Deep Color.

Dans les deux cas, cela ne fonctionne que si la source est bien conforme à une de ces deux nouvelles spécifications (en pratique donc, pas de transmission TV pour l’instant).

Ok, je sais c’est un peu compliqué, donc revenons sur cette histoire de RVB

La télévision utilise ce que l’on appelle la « synthèse additive », c’est-à-dire qu’une couleur est créé en additionnant des couleurs de base. Au repos la télévision affiche du noir, le système d’affichage (qu’il s’agisse de Plasma ou de LCD) va générer les couleurs en additionnant en part variable de la lumière verte, rouge et bleue.

Pour des raisons historiques chacune des trois couleurs est stockées sur 8 bits, ce qui représente 255 paliers possibles pour chaque couleur.

A ce moment de la manœuvre vous avez deux options :

  1. Me croire sur parole lorsque je vous dis que 8 bits cela autorise 255 paliers par couleur (options raisonnable)
  2. Ne pas me croire et apprendre à compter en binaire (option masochiste).

Si vous avez choisi la seconde option, en version courte, un octet est la représentation de 8 bits qui peuvent chacun prendre 2 états : 0 ou 1.
En langage binaire cela va donc de 00000000 à 11111111.
Cela donne donc 2^8=256 états et les nombres chiffrables de cette façon vont de 0 à 255.

Si les calculs binaires vous intéressent, jetez un œil ici :

Des bits et des couleurs

Note : il n’y a ni contrepèterie ni grossièreté dans le sous-titre, mais cette histoire de codage des couleurs est importante, donc revenons dessus un instant.

En mode RVB (il y en a d’autres) les couleurs se définissent par l’association en part variable de trois couleurs, le Rouge, le Vert et le Bleu.

Pour avoir une idée de ce que produisent les différentes combinaisons, le plus simple est de jeter un œil dans un logiciel de retouche d’image.

couleur2

Les photos JPEG issues de votre appareil photo ou les images diffusées par votre téléviseur, ont des couleur codées en 8 bits par couleur ((Même si vous avez opté ci-dessus pour l’option 1 et donc, avez fait l’impasse sur le cours de maths, vous conviendrez que 3 couleurs codées chacune sur 8 bits, cela fait au total une image codée sur : 3×8 = 24 bits )). Ces 8 bits permettent d’avoir 255 paliers pour chaque couleur.

couleur3

Petite digression photographique : il est possible avec les appareils sophistiqués, d’enregistrer les fichiers au format dit « raw », c’est-à-dire d’enregistrer les informations brutes en provenance du capteur.
Dans ce cas on doit « développer » ensuite ces informations dans un logiciel dédié qui va générer une image dans un format utilisable (JPEG par exemple).
Cette façon de faire permet de corriger les éventuels défauts de l’image de façon bien plus souple et moins destructrice qu’un travail direct sur le JPEG.
Pourquoi ? Parce que les capteurs d’appareils photo enregistrent les fichiers en codant les couleurs sur 12 bits voire 14 bits ((Petite précision pour calmer l’éventuel émoi des puristes : en photo ce ne sont pas des « couleurs » qui sont codées mais de stricts niveaux de luminosité puisqu’un capteur photo fonctionne en noir et blanc. Les couleurs sont générées par la suite lors précisément du traitement du fichier raw.)). C’est-à-dire qu’ils enregistrent des informations nettement plus fines et plus complètes que ce que peut contenir le JPEG qu’on génèrera au final, et qui lui code chaque couleur sur 8 Bits.
Les logiciels de traitement de fichiers raw peuvent travailler en 16 bits par couleur voire plus. ((Dans ce cas comme le fichier raw original n’en contient que 12 ou 14, le logiciel complète avec des zéros)) :

16b

Conséquence, en opérant toutes les modifications des fichiers alors qu’il est en 12 bits, on ne détruit que peu d’information et on a de meilleure probabilités d’obtenir un fichier JPEG (8 bits) propre. Alors que si l’on travaille directement sur le JPEG, toute modification du fichier détruit de fait un peu l’image.

Et pour obtenir encore plus de couleurs ?

Pour obtenir plus de couleurs, une fois qu’on a mis en place le nouvel espace colorimétrique x.v.YCC, il ne reste plus qu’une solution : coder chaque couleur sur plus de 8 bits, exemple 10 bits, 12 bits, 16 bits, (attention aux chiffres, comme il y a trois couleurs vous pourrez lire ça et là « un codage sur 30, 36 voire 48 bits » ce qui réfère bien à 10,12 ou 16 bits par couleur x 3, puisqu’il y a 3 couleurs : Rouge , Vert et Bleu).

L’augmentation du nombre de bits consacrés à coder chacune des trois couleurs de base augmente rapidement le nombre de gradations possibles pour chaque couleur :

  • Avec 8 bit par couleur, comme nous l’avons vu il y a 2 puissance 8 soit 255 paliers
  • Avec 10 bits par couleur il y a 2 puissance 10 soit 1024 paliers
  • Avec 12 bis par couleur il y a 2 puissance 12 soit 4096 paliers
  • Avec 16 bits par couleur il y a 2 puissance 16 soit 65636 paliers etc etc…

P1020264

Le codage sur 8 bits par couleur (donc 24 bits au total) permet d’afficher 16,7 millions de couleurs, ce qui peu ou prou correspond à ce que l’œil humain peut distinguer.

Avec les codages étendus, on peut atteindre le milliard de couleurs, soit une palette plus large que ce que l’œil humain peut distinguer.

Quel rapport avec HDMI 1.3 ???

A chaque fois que vous lirez quelque chose sur la norme HDMI, vous tomberez à un moment ou à un autre sur une phrase du type « HDMI 1.3 permet d’utiliser Deep Color ».

Quel rapport entre ces deux éléments qui à priori n’ont rien à voir et ne sont pas de même nature, puisqu’on a d’un côté un cordon (le HDMI c’est la Péritel de la HD) et de l’autre, une extension du moyen de représenter les couleurs en valeurs binaires ????

P1020272

C’est simple, basique purement mathématique voire logique : plus on augmente le nombre de bits consacré à chaque couleur, plus on augmente la quantité d’informations qui transite par les tuyaux.
Les tuyaux traditionnels étaient dimensionnés pour faire transiter des flux vidéo avec des images codées en 8 bits. Pour pouvoir véhiculer la masse d’information correspondant à un flux vidéo codé en 10 12 ou 16 bits il faut des tuyaux plus gros.

HDMI version 1.3, défini précisément une connexion permettant d’acheminer la quantité de données correspondant à ce plus gros flux, d’où l’association systématique entre HDMI 1.3 (qui est un système de raccordement des divers éléments de la chaine HD) et Deep Color (qui est un système de codage étendu des couleurs de la vidéo).

Mais bon HDMI ne fait pas que ça, on verra ça une prochaine fois.

Euh mais comment ça se passe au niveau de l’écran lui-même ?

Les dalles ((La « dalle » est le composant qui gère l’affichage, c’est l’écran lui même)) sont capables d’afficher en 8 voire 10 bits. Le traitement du signal est possible sur des valeurs de codage très élevées, mais au final l’affichage est ramené à… ce qui est effectivement visible par l’œil.

Mais alors à quoi sert cette débauche de couleurs si in fine on en revient à 8 ou 10 bits ?
L’affichage des téléviseurs HD est piloté par un microprocesseur (VReal 2 et 3 dans le cas des téléviseurs Viera de Panasonic). Ce micro processeur gère une foule de choses et notamment la gestion de couleurs. Travaillant avec une palette de couleurs nettement plus large que celle qui sera effectivement affichée, il peut a tout moment sélectionner la teinte la plus adaptée.

Ceci étant, le deep color est avant tout une technologie qui prépare le futur. Pour l’instant la grande majorité des sources est codée en 8 bits, mais demain ?
Un exemple, le format HD Photo que Microsoft tente de faire normaliser et de promouvoir en tant que remplaçant du JPEG (ce n’est pas gagné, le JPEG a jusque là enterré tous ses potentiels remplaçants, confer le triste sort, qu’à connu le JPEG2000) peut gérer bien plus de 8 bits par couleur.

Plug in Photoshop pour HD Photo


3 réponses sur “A la découverte du « Deep Color »”

  1. @kapoue

    C’est au fond normal, les publics sont vraiment très différents.

    La TVHD est mine de rien un domaine assez technique et plutôt sophistiqué et son public se fiche un peu de la technologie (il a raison) il veut avant tout de belles images et du son qui tue.. sauf que pour avoir ces belles images et ce son qui tue il faut de la technologie.. et on boucle.

    Cette histoire de Deep Color est symptomatique de ça. Derrière cette appellation un peu simpliste, il y a une refonte assez radicale de la façon dont on gère les couleurs sur un flux vidéo, tellement radicale d’ailleurs qu’aujourd’hui assez peu de sources sont concernées (les Blu Ray et HD-DVD sont sauf erreur de ma part en 8 bits par exemple).
    Sauf que.. sauf que dans 3 ans ou dans 5 ans les choses auront changé, or dans 3 ans ou dans 5 ans vous n’aurez pas forcément changé de TV. Par exemple le X.v.YCC aurait pu paraître surréaliste il y a deux ans, or il sort- en ce moment même des camescopes qui utilisent ce mode de codage.
    Donc la TV qu’on achète aujourd’hui doit être capable d’afficher bien ce qu’on lui envoie aujourd’hui mais également être prète à diffuser dans les meilleures conditions ce que l’on regardera dedans demain.

    Côté broadcast il y a des techos qui savent ce qu’ils veulent et c’est plus simple 🙂

Vous pouvez laisser un commentaire