mode 4 couleurs to8

C'est ici qu'on peut philosopher de tout et de rien, le plus souvent de rien d'ailleurs. Vous voulez dire un truc quelconque, passer un message, mettre une petite annonce sur du matériel récent ou sans aucun rapport avec le thème du forum, c'est par ici. Accessible également aux visiteurs non inscrits après approbation des messages par un modérateur, d'où un certain délai nécessaire.
(purge automatique après 30 jours d'inactivité)

Modérateurs : Carl, Papy.G, fneck

hermin

Re: mode 4 couleurs to8

Message par hermin » 02 juil. 2018 09:11

Là, il sera difficile de faire mieux. :D ouuaff !
Image

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 02 juil. 2018 21:24

Ah, ca n'est plus la palette précédente à présent. On a noir=(0,0,0) rouge=(255,104,104) jaune=(179,255,104) bleu=(104,179,255). On ne parle donc plus d'une palette universelle passe-partout.

Tu n'as pas la source de cette dernière image que je vois ce que mes algos peuvent trouver ?
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

hermin

Re: mode 4 couleurs to8

Message par hermin » 03 juil. 2018 01:04

Une palette universelle ? C'est une palette unique plutôt ! Qui plus est, dont l'image est réduite en saturation et en luminosité. L'image est très sombre et quasi noir et blanc lors de l'application de la palette. C'est seulement après que j'etends TSV et que la palette, enfin ses couleurs, sont celles que tu relèves sur l'image. :)
Pour te faire parvenir l'image, il est tard et le PC est éteint. Je te la ferais parvenir demain.

Bonne nuit. :)

hermin

Re: mode 4 couleurs to8

Message par hermin » 03 juil. 2018 06:42

Voici l'image originale.
Image

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 03 juil. 2018 15:44

Avec une mesure d'erreur basée sur un blur (flou) de rayon 1.5 et la distance moyenne entre les pixels de l'image tramée+floutée et la source dans l'espace RGB linéaire, j'ai lancé plusieurs algos de réduction de couleurs et j'obtiens les images suivantes. Tous ces algos visent à obtenir la plus petite erreur. Ce qu'on constate c'est qu'ils convergent tous sensiblement vers la même palette qui est la meilleure mathématiquement parlant.

Je souligne mathématiquement car visuellement pour nous humains elle est moins proche de l'originale que la version que tu as proposée. La différence vient du calcul de l'erreur qui ne tient pas suffisamment compte du modèle psycho-perceptif de l'oeil humain. Ici seul le mélange (blur) entre pixels voisins et le RMS dans l'espace euclidien des couleur linaire (sRGB) est utilisé. Sans doute qu'avec un espace des couleurs s'approchant mieux de la perception humaine (un deltaE par exemple), on aurait d'autres optima. Hélas, ces algos sont déjà trop lent pour mesurer un truc aussi couteux en cpu que le deltaE dans mon environnement de test.

On remarque que le plus rapide (en nombre d'évaluations) est le hill-climbing mais qu'il sacrifie le bleu du pantalon d'Obelix au profit du rouge qui rend la surface du sol et des zones d'ombres super proche de l'image originale. L'erreur finale est voisine des autres: on doit être coincé dans un minimum local sans bleu. Les minima locaux combinés à un calcul d'erreur lent (il faut 1 sec par image) rendent l'exercice de la recherche automatisée de meilleur palette assez difficile, mais passionnant car ca permet de tester pleins d'heuristiques pour accélérer les algos de base.

Ce qui est le plus curieux est que souvent au cours de la recherche je trouve visuellement qu'on a une image "très bonne".. et pourtant qui n'est pas retenue jusqu'au bout car elle ne représente pas l'erreur minimale. C'est très surprenant. Cela confirme que la fonction d'évaluation des palettes candidates (et plus précisément la mesure d'erreur entre l'image tramée avec cette palette et l'originale), ne reflète pas bien la façon dont le cerveau évalue les couleurs ([EDIT] Ca n'est pas que ca. Il y a un autre facteur découvert plus bas dans le fil de discussion). C'est cela que j'aimerais améliorer (en plus de la vitesse de recherche), mais les calculs du deltaE du CIEDE2000 sont vraiment trop affreux à coder et on a vite fait de se planter dans l'un des signes et obtenir n'importe quoi au final sans s'en rendre compte tout de suite. J'ai jamais eu le courage de faire un truc qui marche avec le deltaE, pourtant ca pourrait être instructif.
Fichiers joints
jbju_hc.gif
Hill climbing (err=0.0388 après 612 évaluation).
jbju_hc.gif (14.04 Kio) Vu 218 fois
jbju_ga.gif
Algorithme génétique avec population de 100 individus stoppé à 110 générations car meilleur score est resté inchangé sur 30 générations (err=0.0377 après 11109 évaluations)
jbju_ga.gif (12.67 Kio) Vu 218 fois
jbju.gif
Recuit simulé (err=0.0384 après 1899 évaluations)
jbju.gif (12.83 Kio) Vu 218 fois
Modifié en dernier par __sam__ le 04 juil. 2018 09:22, modifié 2 fois.
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 03 juil. 2018 20:00

J'ai compris ce qui faisait que je trouvais qu'à un moment on avait une bonne image et puis que ca se dégradait lors de la recherche dans le hill-climbing progressif. En fait c'est lié à la luminosité de l'image. Dans le cas d'idéfix, si au lieu de laisser le hill-climbing progressif monter jusqu'à 100% de luminosité, je le limite à 87.5, j'obtiens une image dont l'erreur est nettement meilleure que celles précédentes. L'erreur est de 0.038 à 100% de luminosité, mais descend à 0.0276 à 88% de luminosité ce qui est nettement mieux. On est à peine moins lumineux, mais la qualité est bien meilleure!

Bref, quelque part il faut faire varier le niveau de luminosité parallèlement à la recherche, et stopper lorsque l'erreur grossi trop (ici elle grossit de 40% à pleine de luminosité.)

Pour ref voici ton image (un chouille sombre, mais très colorée)
Image
l'originale:
Image
et enfin le résultat du hill-climbing progressif avec un max de luminosité limité à 87.5% (err=0.0276 en 694 évaluations). Remarquez comment l'algo obtient du blanc à partir d'un mélange de 2 couleurs seulement 8) Le resultat est du coup plus lumineux et plus proche de la source à mon avis.
jbju.gif
hill-clibing à 87.5% de luminosité (err=0.0276 en 694 évaluations)
jbju.gif (13.22 Kio) Vu 200 fois
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

hermin

Re: mode 4 couleurs to8

Message par hermin » 04 juil. 2018 00:56

En effet ! :shock: C'est vraiment top. Je ferais jamais mieux, c'est sûr ! :( je me console en t'ayant fait plancher sur la luminosité. :) Et... Tu penses pouvoir faire encore mieux ? 8)
Tu pourrais poster une planche de quelques images de bande dessinée très colorés réalisé avec ton algorithme hill climbing ? Je veux bien me rendre compte du fait de ton algorithme.

jimpqfly
Messages : 166
Enregistré le : 03 mars 2018 17:56
Localisation : Région Parisienne

Re: mode 4 couleurs to8

Message par jimpqfly » 04 juil. 2018 07:17

Ce dernier exemple est impressionnant... C'est bien du 320x200?

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 04 juil. 2018 08:22

oui oui, et 4 couleurs.
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

Avatar du membre
DataPro
Messages : 1724
Enregistré le : 07 févr. 2011 17:03
Localisation : France - Auvergne

Re: mode 4 couleurs to8

Message par DataPro » 04 juil. 2018 08:24

Bravo à SAM pour cette dernière image.
Je ne suis pas d'accord pour modifier le réglage du CRT pour que l'image soit plus lumineuse. Un écran CRT se calibre comme n'importe quel autre écran. Donc une fois bien réglé, en toute logique, on ne doit pas y revenir.
Je craque pour les office-ladies comme pour les oldies.
Recherche: cartouches Mattel Intellivision Imagic (loose)

hermin

Re: mode 4 couleurs to8

Message par hermin » 04 juil. 2018 09:10

Je viens de remarquer qu'il s'agit d'une palette qui n'est pas fixe... Je me disais aussi. :) Pour le To8, c'est parfait. Je devrais peut-être également me pencher sur cette méthode. Enfin, au vue de cette image, je pense que l'on a pas besoin de moi. :) La technique de "maître Sam" est vraiment correct. Attendons tout de même son propre avis. 8)

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 04 juil. 2018 10:37

Oh sisi on a besoin de tout le monde. La discussion amène des nouvelles idées, où même dévoile des possibilités nouvelles. C'est vrai que j'avais un peu mis de coté le mode 4coul dans mes plugins graphX2, mais à présent si j'obtiens un algorithme rapide et robuste, je me dis qu'un nouveau plugin pour convertir en bm4 serait super aussi.
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

hermin

Re: mode 4 couleurs to8

Message par hermin » 04 juil. 2018 18:38

...J'ai converti l'image en me servant de couleurs approchantes comme tu le fais. C'est pas mal, même si je les ai choisi au hasard. :)
Image
Image

hermin

Re: mode 4 couleurs to8

Message par hermin » 04 juil. 2018 20:06

Je pense qu'en prenant des couleurs clair pour avoir correctement le blanc, on peut avoir de belles images en 4 couleurs. Elle est pas loin "la" palette calculé. :)

__sam__
Messages : 3991
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: mode 4 couleurs to8

Message par __sam__ » 05 juil. 2018 01:05

Idéfix a du manger un ou deux Stroumphs car il a pris une teine bleutée. Sinon trève de plaisanteries, tu devrais t'inscrire tu sais ;)
Samuel.
A500 Vampire V2+, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8. New Teo 1.8.4 8)

Répondre