Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Test (et remarques) du nouveau module balance de couleurs
#1
Salut,

Je poste ici parce que j'ai l'impression que les (le ?) principaux intéressés sont ici, mais je peux passer sur la mailing-list ou le redmine si besoin.

Voici mes impressions après test du nouveau module « balance de couleurs ».

Première nouveauté : les curseurs de couleurs qui s'ajustent automatiquement pour préserver la luminance globale. J'aime bien, mais ce n'est probablement pas une bonne idée d'avoir ce comportement obligatoire. Premier exemple : si je veux reproduire le traitement de quelqu'un d'autre qui me dit +0,001 sur le rouge, -0,001 sur le vert, et 0 sur le bleu, c'est très pénible d'arriver à une valeur précise (à chaque fois qu'on fixe la valeur pour un curseur, les autres bougent). Deuxième exemple : revenir à 0 partout. Quand on double-clique sur un curseur, celui-ci revient à 0, mais du coup les autres bougent. Je n'ai pas trouvé de moyen simple de revenir à 0 (le mieux que j'ai trouvé est la méthode itérative : cliquer jusqu'à ce que l'erreur d'arrondi soit négligeable ;-) ). Bref, je pense qu'une petite case à cocher « preserve luminance » pour passer de l'ancien mode au nouveau serait bienvenu.

Deuxième nouveauté : les pipettes. Sur le principe ça a l'air super, mais je suis perdu et je ne comprends pas comment c'est censé marcher. Enfin, j'ai vu la vidéo d'Aurélien Pierre et dans la vidéo ça a l'air de marcher nickel, mais chez moi pas de succès. J'écris ça volontairement avant d'avoir re-regardé pour comprendre les détails : il y a sans doute une logique mais je teste aussi pour voir si on retrouve la logique avant d'avoir vu la doc.

Première surprise : la notion de « pipette active » est différente de celle des autres modules. Avec « exposure », « levels » et le mode spot de « white balance », on clique sur la pipette et elle devient active, puis la zone sélectionnée est prise en compte au fur et à mesure qu'on sélectionne sur l'image. Pas besoin de recliquer quelque part pour valider. Là, il ne se passe rien quand on choisi une zone sur l'image, et j'ai mis du temps à comprendre qu'il fallait re-cliquer sur la pipette pour que la zone sélectionnée soit prise en compte.

Deuxième surprise (là c'est assez clairement un bug) : si on clique sur une pipette pour l'activer alors qu'une autre pipette était déjà active, on obtient une situation où les deux icônes de pipettes sont « actives » (gris clair), mais il ne se passe plus rien quand on clique sur l'image. Plus précisément :
1) ouverture du module
2) clic sur la première pipette « factor »
3) clic sur la deuxième pipette « factor »
4) glisser sur l'image
Attendu : en étape 3 la première pipette est désélectionnée et la seconde devient active, en étape 4 on peut sélectionner la zone d'image.
Obtenu : en étape 3 les deux pipettes sont marquées actives, en étape 4 il ne se passe rien.

Ça paraît artificiel comme ça, mais si on ajoute 2-bis) sélectionner une zone sur l'image, c'est la première chose que j'ai tenté : pipette, selection de zone, pipette suivante, sélection de zone, ...

Il doit y avoir un xor quelque part : la sélection sur l'image est active quand on a un nombre impair de pipettes sélectionnées ;-).

Troisième surprise : un clic sur « reset parameters » ne désactive pas les pipettes.

Quatrième surprise : dans la plupart des autres modules, quand la pipette est active c'est le fond de l'icône qui est plus clair. Par exemple, dans « levels » :
[Image: levels.png]

une pipette blanche, une grise un noire pour les 3 niveaux, et la pipette sélectionnée a un fond gris clair. Dans « tone curve », pareil c'est la couleur d'arrière plan qui indique si la pipette est active. Là c'est la couleur d'avant plan (de la pipette) qui change. Et elle ne change pas beaucoup donc c'est dur à distinguer.

Dernière surprise : les pipettes ne sont pas désactivées quand on change de mode. Exemple :
1) Sélectionner lift/gamma/gain (ProPhoto)
2) activer la pipette « grey fulcrum »
3) Sélectionner (sRGB)
=> La pipette n'est plus visible, mais elle est toujours activée (et du coup on ne peut plus rien faire).

Voila, en résumé : il reste pas mal de petits « glitchs » d'ergonomie, mais probablement assez facilement corrigeables. Si on fait abstraction de ces glitchs, le module est vraiment sympa.
Répondre
#2
Sur le point 4 je pense que mon commit pour améliorer les boutons devrait justement améliorer cela. La pipette noir n'est plus. Et le problème du fond de l'icône lorsque qu'active c'est que pour les icônes carrées comme pour activer les zones sur/sous-exposées (raw et normal) on ne voyait pas l'état.
--
Pascal - GNU/Debian (sid) - version darktable git/master
http://photos.obry.net
Répondre
#3
Citation :Première nouveauté : les curseurs de couleurs qui s'ajustent automatiquement pour préserver la luminance globale. J'aime bien, mais ce n'est probablement pas une bonne idée d'avoir ce comportement obligatoire. Premier exemple : si je veux reproduire le traitement de quelqu'un d'autre qui me dit +0,001 sur le rouge, -0,001 sur le vert, et 0 sur le bleu, c'est très pénible d'arriver à une valeur précise (à chaque fois qu'on fixe la valeur pour un curseur, les autres bougent). Deuxième exemple : revenir à 0 partout. Quand on double-clique sur un curseur, celui-ci revient à 0, mais du coup les autres bougent. Je n'ai pas trouvé de moyen simple de revenir à 0 (le mieux que j'ai trouvé est la méthode itérative : cliquer jusqu'à ce que l'erreur d'arrondi soit négligeable ;-) ). Bref, je pense qu'une petite case à cocher « preserve luminance » pour passer de l'ancien mode au nouveau serait bienvenu.

Le problème, c'est que sans cette correction, la conversion HSL -> RGB -> HSL n'est plus bidirectionnelle. La conversion HSR -> RGB suppose une luminance neutre (vu que la vraie lumimance, le canal facteur, est réglé à part et je ne peux pas y toucher pour des raisons de compatibilité). La correction de luminance a pour but de conserver en tout temps la cohérence entre les valeurs HSL et RGB de sorte qu'on puisse passer d'un contrôle à l'autre en tout transparence. Parce que le mode HSL est automatiquement converti en valeurs RGB normalisées en luminance.

La réinitialisation des curseurs RGB se fait en mettant la saturation HSL à 0. En pratique, les canaux RGB ne servent plus à grand chose, tous les logiciels qui ont cet outil passent par des roues chromatique HSL et ça suffit en masse. En vérité, avoir une précision infinie sur les canaux RGB ne sert pas à grand chose.


Citation :Deuxième nouveauté : les pipettes. Sur le principe ça a l'air super, mais je suis perdu et je ne comprends pas comment c'est censé marcher. Enfin, j'ai vu la vidéo d'Aurélien Pierre et dans la vidéo ça a l'air de marcher nickel, mais chez moi pas de succès. J'écris ça volontairement avant d'avoir re-regardé pour comprendre les détails : il y a sans doute une logique mais je teste aussi pour voir si on retrouve la logique avant d'avoir vu la doc.


  1. la pipette facteur slope/lift capture le minimum de la zone sélectionnée et calcule l'offset pour le remaper à 0 % (noir)
  2. la pipette facteur gamma/power capture la moyenne de la zone sélectionnée et calcul le gamma pour la remaper à 50 % (gris)
  3. la pipette facteur gain/slope capture le maximum de la zone sélectionnée et calcule le gain pour le remaper à 100 % (blanc).
  4. un clic sur « optimiser la luma » fait tout ça en une seule fois sur toute l'image (moins de contrôle, mais plus rapide), ou permet, le cas échéant, de raffiner les premières estimations ci-dessus.
En gros, c'est exactement la même chose qu'utiliser le module niveaux en mode auto, mais dans un espace RGB qui respecte la saturation (et pas en Lab qui délave les couleurs).

  1. les pipettes teintes calculent la couleur complémentaire de la zone sélectionnée pour neutraliser les couleurs (les rendre plus grises).
  2. idem, un clic sur « optimiser les couleurs » prend la couleur moyenne de toute l'image, ce qui marche des fois, mais pas toujours. Sinon, il faut prélever 3 échantillons (sombre, clair, moyen) le couleur avec les pipettes, et le bouton « optimiser les couleurs » sert alors à raffiner la première estimation.
Citation :Deuxième surprise (là c'est assez clairement un bug) : si on clique sur une pipette pour l'activer alors qu'une autre pipette était déjà active, on obtient une situation où les deux icônes de pipettes sont « actives » (gris clair), mais il ne se passe plus rien quand on clique sur l'image. Plus précisément :
1) ouverture du module
2) clic sur la première pipette « factor »
3) clic sur la deuxième pipette « factor »
4) glisser sur l'image
Attendu : en étape 3 la première pipette est désélectionnée et la seconde devient active, en étape 4 on peut sélectionner la zone d'image.
Obtenu : en étape 3 les deux pipettes sont marquées actives, en étape 4 il ne se passe rien.
je n'ai rien observé de tel. Il faudra que je regarde. Merci pour le retour.

En gros, le workflow type, c'est :

1) active la correction du profil d'entrée en mode log
2) clique sur auto-tune
3) active la balance couleur
4) clique sur luma optimization.
5) enjoy
Aurélien, photographe portraitiste, spécialiste calcul.
Développeur de filmique, égaliseur de tons, balance couleur, etc.
darktable est mon métier, pensez à m'aider :
[Image: 2FAd4rc]
Répondre
#4
La "surprise 2" je l'ai aussi. Il faudrait comme dans profil_gamma.c désectionner toutes les autres pipettes lorsque l'on clique sur une car dans tous les cas une seule doit être active à un instant donné.

Pour préciser, comme dans set_colorpick_state() de profil_gamma.c

Je viens de simplifier cette routine d'ailleurs!
--
Pascal - GNU/Debian (sid) - version darktable git/master
http://photos.obry.net
Répondre
#5
Vous avez découvert mon lourd secret : en dehors des équations, je suis inapte. Les interfaces graphiques, c'est ma kryptonite. :-X
Aurélien, photographe portraitiste, spécialiste calcul.
Développeur de filmique, égaliseur de tons, balance couleur, etc.
darktable est mon métier, pensez à m'aider :
[Image: 2FAd4rc]
Répondre
#6
(22-10-18, 20:44)pascal a écrit : Sur le point 4 je pense que mon commit pour améliorer les boutons devrait justement améliorer cela. La pipette noir n'est plus. Et le problème du fond de l'icône lorsque qu'active c'est que pour les icônes carrées comme pour activer les zones sur/sous-exposées (raw et normal) on ne voyait pas l'état.

En fait j'avais déjà ta pull-request mergée pour mes tests. Effectivement c'est pire sans ;-).

Mais ce que j'aurais attendu ça aurait été quelque chose comme ça (exemple pris sur « tone curve ») :

Actif :
[Image: tone-actif.png]

Inactif :

[Image: tone-inactif.png]

Pour l'instant sur color balance, j'ai ça :

[Image: balance.png]

Sur un écran avec une résolution un peu fine (WQHD) la différence ne saute pas aux yeux.
Répondre
#7
@aurélien, je vais tenter de faire pour colorbalance ce qui a été fait pour profile_gamma.
--
Pascal - GNU/Debian (sid) - version darktable git/master
http://photos.obry.net
Répondre
#8
Merci à vous deux pour les réponses rapides. J'oubliais de préciser dans mon message : je me concentre sur ce qui ne va pas parce que c'est ce qui est améliorable, mais y'a plein de trucs qui marchent bien et c'est cool ;-), faut pas voir mes remarques comme des reproches, au contraire. Merci pour tout ce boulot.
Répondre
#9
(23-10-18, 08:42)mmoy a écrit : Merci à vous deux pour les réponses rapides. J'oubliais de préciser dans mon message : je me concentre sur ce qui ne va pas parce que c'est ce qui est améliorable, mais y'a plein de trucs qui marchent bien et c'est cool ;-), faut pas voir mes remarques comme des reproches, au contraire. Merci pour tout ce boulot.

Pas de souci.
Aurélien, photographe portraitiste, spécialiste calcul.
Développeur de filmique, égaliseur de tons, balance couleur, etc.
darktable est mon métier, pensez à m'aider :
[Image: 2FAd4rc]
Répondre
#10
Je viens de re-tester la branche master, la plupart des soucis ont disparu. Il en reste quelques uns mineurs :

* À la toute première ouverture du module, un clic sur la pipette ne marche pas : l'icône est bien sélectionnée, mais on ne peut pas sélectionner de rectangle dans l'image. Je dis bien à la toute première ouverture : même en fermant+relançant darktable, le bug ne se reproduit pas. Par contre c'est reproductible en supprimant le fichier .config/darktable/darktablerc ! La seule différence entre la config problématique et celle qui ne pose pas problème est :

Code :
--- /tmp/.config/darktable/darktablerc  2018-10-29 21:18:32.187617946 +0100
+++ /tmp/.config/darktable/darktablerc.avec-probleme      2018-10-29 21:18:15.595567629 +0100
@@ -543,7 +543,7 @@
ui_last/colorpicker_mode=
ui_last/colorpicker_model=
ui_last/colorpicker_restrict_histogram=
-ui_last/colorpicker_size=1
+ui_last/colorpicker_size=
ui_last/colorsamples_mode=
ui_last/colorsamples_model=
ui_last/display_profile_source=all

* Un clic sur « reset parameters » désactive bien la pipette, mais l'icône de la pipette reste avec le visuel de la pipette activée.

* Le fait que les pipettes restent activées quand on change de mode (RGB, HSL, Both) est toujours vrai, mais ce n'est plus vraiment gênant. C'est surprenant quand la pipette active n'est pas affichée (si on a choisi la pipette « hue » en HLS, qu'on passe en mode RGB, la pipette est toujours active mais plus visible), mais on peut considérer ça comme une feature, pas forcément un bug.

Voila, sinon j'ai beau essayer de faire toutes les conneries qui me passent par la tête, j'arrive pas à casser plus que ça ;-).

Merci !
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)