Samuel Devulder
2009-09-22 23:00:22 UTC
Bonjour!
A la recherche de fr.comp.graphisme.programmation à la recherche d'info
sur les algo de réduction de couleurs, je constate que ce dernier
n'existe plus et que l'on conseille de poster sur ce newsgroup à la
place. Si cela n'est pas le bon newsgroup, je vous prie de m'excuser et
vous demande quel est le meilleur newsgroup pour parler de ce sujet.
Bon, j'expose mon problème..
J'ai fait le tour de la littérature au sujet des algos de réductions de
couleurs classiques (popularity, k-mean, median-cut, octree, ...) et je
constate un défaut avec ces algos utilisant la valeur moyenne d'un
groupe de couleur pour représenter ce dernier: les valeurs extrêmes
disparaissent.
Pour fixer les idées: si je prends une image de 5 couleurs représentant
un dégradé uniforme du noir (0.0) au blanc (1.0) dans un espace de
couleur supposé linéaire, on obtient les valeurs [0, 0.25, 0.50, 0.75,
1.0]. Si l'on souhaite réduire cette image à deux couleurs seulement,
alors avec les algos proposés dans la littérature on obtient quasi
invariablement les deux valeurs 0.25 et 0.75. En effet ces deux valeurs
moyennent chacune les zones 0->0.5 et 0.5->1 et réduisent l'erreur
standard sur l'image. Cependant le dégradé a perdu en détail: les
valeurs 0.0 et 1.0 ne sont plus représentables même en utilisant les
techniques de diffusion d'erreur. D'une certaine façon si l'on avait
conservé les valeurs extrêmes 0 et 1, l'image en couleur réduite serait
subjectivement plus fidèle à l'originale.
Plus généralement, les techniques de diffusion d'erreur permettent en
1ere approximation d'atteindre toute les composantes de couleurs
contenues dans l'enveloppe convexe des couleur d'une image. Or
l'utilisation d'une réduction d'un groupe de couleur à sa moyenne rend
inaccessible les couleurs proche de l'enveloppe convexe. Cette analyse
m'indique que l'enveloppe convexe est une zone importante dans la
réduction de couleur, et que pourtant je ne vois pas spécialement
étudiée dans les algos classiques.
Aussi je me demande s'il existe des algos utilisant l'enveloppe convexe
(ou plus probablement une approximation avec moins de sommets) réduire
les couleurs d'une image tout en préservant les détails. En quelque
sorte un algo qui effectue une moyenne au centre de l'espace des états
et qui préserve les points de l'enveloppe convexe.
Finalement je suis à la recherche de références sur le problème de
réduction de couleur d'un image préservant l'enveloppe convexe des
couleurs de sorte à ne pas perdre certaines couleurs et de permettre
ainsi aux algos de diffusion d'erreurs de fonctionner encore mieux.
Note: l'image à couleur réduite possède une résolution supérieure à
celle originale.
Quelqu'un sait il si ce problème a déjà été abordé et m'indiquer des
infos sur le sujet?
sam (Désolé pour cette présentation un peu verbeuse et merci de m'avoir
lu jusqu'au bout :) )
A la recherche de fr.comp.graphisme.programmation à la recherche d'info
sur les algo de réduction de couleurs, je constate que ce dernier
n'existe plus et que l'on conseille de poster sur ce newsgroup à la
place. Si cela n'est pas le bon newsgroup, je vous prie de m'excuser et
vous demande quel est le meilleur newsgroup pour parler de ce sujet.
Bon, j'expose mon problème..
J'ai fait le tour de la littérature au sujet des algos de réductions de
couleurs classiques (popularity, k-mean, median-cut, octree, ...) et je
constate un défaut avec ces algos utilisant la valeur moyenne d'un
groupe de couleur pour représenter ce dernier: les valeurs extrêmes
disparaissent.
Pour fixer les idées: si je prends une image de 5 couleurs représentant
un dégradé uniforme du noir (0.0) au blanc (1.0) dans un espace de
couleur supposé linéaire, on obtient les valeurs [0, 0.25, 0.50, 0.75,
1.0]. Si l'on souhaite réduire cette image à deux couleurs seulement,
alors avec les algos proposés dans la littérature on obtient quasi
invariablement les deux valeurs 0.25 et 0.75. En effet ces deux valeurs
moyennent chacune les zones 0->0.5 et 0.5->1 et réduisent l'erreur
standard sur l'image. Cependant le dégradé a perdu en détail: les
valeurs 0.0 et 1.0 ne sont plus représentables même en utilisant les
techniques de diffusion d'erreur. D'une certaine façon si l'on avait
conservé les valeurs extrêmes 0 et 1, l'image en couleur réduite serait
subjectivement plus fidèle à l'originale.
Plus généralement, les techniques de diffusion d'erreur permettent en
1ere approximation d'atteindre toute les composantes de couleurs
contenues dans l'enveloppe convexe des couleur d'une image. Or
l'utilisation d'une réduction d'un groupe de couleur à sa moyenne rend
inaccessible les couleurs proche de l'enveloppe convexe. Cette analyse
m'indique que l'enveloppe convexe est une zone importante dans la
réduction de couleur, et que pourtant je ne vois pas spécialement
étudiée dans les algos classiques.
Aussi je me demande s'il existe des algos utilisant l'enveloppe convexe
(ou plus probablement une approximation avec moins de sommets) réduire
les couleurs d'une image tout en préservant les détails. En quelque
sorte un algo qui effectue une moyenne au centre de l'espace des états
et qui préserve les points de l'enveloppe convexe.
Finalement je suis à la recherche de références sur le problème de
réduction de couleur d'un image préservant l'enveloppe convexe des
couleurs de sorte à ne pas perdre certaines couleurs et de permettre
ainsi aux algos de diffusion d'erreurs de fonctionner encore mieux.
Note: l'image à couleur réduite possède une résolution supérieure à
celle originale.
Quelqu'un sait il si ce problème a déjà été abordé et m'indiquer des
infos sur le sujet?
sam (Désolé pour cette présentation un peu verbeuse et merci de m'avoir
lu jusqu'au bout :) )