Difference between revisions of "Local Adjustments/fr"

(4 intermediate revisions by the same user not shown)
Line 1,558: Line 1,558:
  
  
===Comment se servir de Common Color Mask===
+
===Comment se servir de Common Color Mask - puis Exemple de combinaison avec une fusion de 2 RT-Spot===
 
Ce masque ne fonctionne pas exactement comme les autres masques de "Local adjustments". Il ne vient pas en complément d'un outil, comme par exemple le masque dans "Color and light", mais est un outil en lui même. Vous pouvez vous en servir pour changer l'apparence d'une image - contraste, luminance, couleur....mais aussi texture.
 
Ce masque ne fonctionne pas exactement comme les autres masques de "Local adjustments". Il ne vient pas en complément d'un outil, comme par exemple le masque dans "Color and light", mais est un outil en lui même. Vous pouvez vous en servir pour changer l'apparence d'une image - contraste, luminance, couleur....mais aussi texture.
 
* cet outil fonctionne en prenant en compte le masque qui vient modifier l'image (en plus ou en moins). L'écart des couleurs entre l'image +- masque et l'image originale est régulée par la prise en compte du deltaE - ΔE - et bien sûr des transitions.
 
* cet outil fonctionne en prenant en compte le masque qui vient modifier l'image (en plus ou en moins). L'écart des couleurs entre l'image +- masque et l'image originale est régulée par la prise en compte du deltaE - ΔE - et bien sûr des transitions.
Line 1,717: Line 1,717:
 
[[File:common-mask.jpg|600px|thumb|left|Résultat]]
 
[[File:common-mask.jpg|600px|thumb|left|Résultat]]
  
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
Et bien sûr, vous pouvez créer autant de "Common color mask" que vous souhaitez, dupliquer ce "masque" près de l'autre avec des réglages proches...
 +
 +
Maintenant nous allons améliorer cette image "common color mask" avec l'outil "Merge file" de "Color and Light"
 +
 +
====Ajouter un nouveau RT-spot "Color and light - Expert"====
 +
Toujours à titre pédagogique, sans recherche artistique, je vais expliquer comment réaliser 3 modes de fusion parmi les 21 possibles
 +
* ajoutons un nouveau RT-spot
 +
* créons un outil "Color and Light" - "Expert"
 +
* réglons correctement "Scope" (avec Preview ΔE)
 +
* choisissons 3 réglages pour accroître la luminance, le contraste et la chrominance
 +
[[File:common-color.jpg|600px|thumb|left|Ajout d'un RT-spot]]
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
====Préparer le "merge" (fusion en français)====
 +
* choisir "Previous spot", on va donc fusionner le nouveau RT-spot (Color and Light) et le précédent (Common color mask)
 +
[[File:common-color-prepa.jpg|600px|thumb|left|Préparer fusion]]
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
====Première fusion en mode "normal"====
 +
* choisir le mode de fusion "normal"
 +
* arbitrairement j'ai choisi 3 réglages : Merge background = 54.2 prend en compte le deltaE entre les 2 couches; Opacity = 54.2 - environ 50% pour chacun; Contrast threshold = 12.5 - prend en compte les différences aplats / structure
 +
* les deux valeurs 54.2 identiques sont le fait du hasard, il est évident que vous pouvez choisir d'autres valeurs 43, 68, etc.
 +
[[File:common-color-normal.jpg|600px|thumb|left|Fusion Normal]]
  
  
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
====Deuxième fusion en mode "SoftLight Photosshop"====
 +
* changer de mode de fusion et choisir "Softlight Photosshop"
 +
[[File:common-color-softphot.jpg|600px|thumb|left|Fusion Softlight Photosshop]]
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
====Troisième fusion en mode "Color Burn"====
 +
* changer de mode de fusion et choisir "Color Burn"
 +
* bien sûr ces 3 choix de modes de fusion sont arbitraires
 +
* notez les différences de rendus en luminance et chrominance
 +
[[File:common-color-colburn.jpg|600px|thumb|left|Fusion Color Burn]]
  
  
Line 1,739: Line 1,868:
  
  
Et bien sûr, vous pouvez créer autant de "Common color mask" que vous souhaitez, dupliquer ce "masque" près de l'autre avec des réglages proches...
 
  
 
===Une approche de traitement complet  - Portrait sombre - peau granuleuse - Mairi===
 
===Une approche de traitement complet  - Portrait sombre - peau granuleuse - Mairi===

Revision as of 16:24, 28 June 2020

Contrôles Locaux Lab

Texte rédigé par Jacques Desmis (mise à jour 28 juin 2020)

Contents

1 Comment démarrer - premiers pas

1.1 Démarrage

  • Dans la barre des onglets, sélectionnez la "main" (Onglet Local)
  • Puis activez "expander" "Local Adjustments" (si il n'est pas déjà activé)
  • Sélectionnez "Add"
    Original

    Fichier raw: [1]










1.2 Préparation

Positionnez le RT-spot à l'endroit souhaité. Dans ce cas, je souhaite accroître la saturation de la fleur rouge et réduire la luminance (lightness) sans affecter le reste de l'image:

  • déplacez le centre du RT-spot de telle manière que son centre soit situé sur une zone représentative de ce que vous souhaitez changer.
  • positionnez les 4 délimiteurs largement au delà de la fleur.
  • sélectionnez le "Lockable color picker" et repérez 3 couleurs : a) une sur la fleur rouge, b) une sur le ciel bleu, c) une sur une feuille verte
  • Dans l'exemple les 3 couleurs sont:
    • fleur rouge L=49.0 a=74.8 b=47.1
    • ciel bleu : L=68.6 a=-3.1 b=-16.5
    • feuille verte : L=48.9 a=-27.8 b=51.9
Préparation











1.3 Ajouter l'outil Color & Light

Dans le menu settings, choisissez "Add tool to current spot..."

  • une liste de choix vous est proposée : "Color&light(defects) - 11",..., "Encoding log 0". Pour chaque RT-spot vous pouvez associer 1 ou plusieurs outils de la liste. L'ordre de traitement dans le processus correspond au numéro à la fin du choix : "Encoding Log - 0" est le premier traitement (si bien sûr il est activé), "Color&light(defects) -11" est le dernier. Ceci est également vrai pour les masques associés.
  • sélectionnez "Color&Light (Defects) - 11"
Ajouter l'outil Color and Light














1.4 Réglez la luminance (lightness) et la chrominance

  • réglez la luminance sur -70
  • réglez la chrominance sur 130
  • Examinez les résultats
  • la fleur rouge a une nouvelle couleur L=41.0 a=65.6 b=52.8
  • le ciel est inchangé
  • la feuille verte est inchangée
Réglez luminance et chrominance












1.5 Essayez Scope Color Tools - Transition

Dans le menu "settings"

  • Agissez sur "Scope Color Tools"
    • si vous réduisez la valeur (par défaut 30) seule une partie des rouges sera concernée.
    • si vous accroissez la valeur, progressivement le ciel, puis la feuille verte, puis toute l'image sera concernée (Scope=100)

Laissez la valeur Scope à 100 et dans le menu "settings"

  • Agissez sur transition:
    • essayez de réduire vers 5
    • essayez d’accroître vers 100 et constatez le résultat

1.6 Prévisualisez la zone modifiable - deltaE - ΔE

Vous pouvez avoir un aperçu des zones de l'image qui seront touchées par les modifications - cela ne montre pas les modifications, ni les transitions, mais permet de régler "Scope". Deux possibilités:

  • utiliser le bouton "Preview ΔE" situé dans "settings" et un et seulement un, outil doit être activé (expander)
  • utiliser dans "Mask and modifications" - "Preview deltaE" - dans ce cas le GUI prend en compte l'état des outils - cette option fonctionne quelque soit le nombre d'outils activés.

Vous pouvez faire varier l'intensité et la couleur de cette prévisualisation avec "Color preview selection ΔE - Intensity" Vous pouvez aussi voir l'action des divers réglages possibles relatif à la détection de forme : essayez les curseurs de "Shape detection" à l'exception de Threshold structure.

Prévisualisez les zones modifiables










1.7 Voir les modifications

Vous pouvez avoir un aperçu des modifications que vous avez réalisées:

  • Allez à "Mask and modifications" - "Show modifications without mask"
  • vous pouvez visualiser les incidences de la luminance, du contraste, des changements de couleurs et saturation, structures,...
  • vous pouvez aussi visualiser l'incidence des réglages de la transition (settings) :
    • transition value : pourcentage géographique entre pleine action et action décroissante (jusque zéro)
    • transition weakening : "vitesse" d'affaiblissement de la zone d'action décroissante
    • transition différentiation XY : différence entre abscisse et ordonnée


Essayez ici tous les réglages:

  • ceux de Scope (deltaE)
  • ceux des transitions
  • les réglages de l'outil (luminance, chroma, etc.)
Voir les zones modifiées












1.8 Travailler en Image entière et utiliser "excluding" spot

Local adjustments ne se limite pas aux retouches locales. Vous pouvez profiter des ressources de ce module pour traiter l'image entière. Actuellement ce mode est "manuel", une automatisation du GUI est prévue...

Choisissez dans "settings" :

  • Shape RT-spot area = rectangle
  • positionnez les 4 délimiteurs en dehors de la prévisualisation (preview)
  • réglez la transition sur 100 (ou une autre valeur si vous le souhaitez... pour générer un gradient), mais il y a d'autres outils pour réaliser des gradients!

Vous êtes prêts maintenant pour utiliser l'ensemble des outils en mode pleine image

Travailler en image entière - réglages














1.9 Un exemple - changer la couleur des feuilles vertes - sauf une

1.9.1 Changer le couleur des feuilles

  • L'utilisation des composantes "a" et "b" de "Lab" dans "Color grid correction", en choisissant "direct" et une valeur élevée de "Strength", amène un changement de couleur de toutes les feuilles.
  • Vous pouvez adapter si nécessaire avec "Scope color tools"
  • Les autres couleurs : fleur, ciel ne sont pas modifiées
Changer la couleur des feuilles











1.9.2 Une des feuilles redevient verte

  • Ajouter un deuxième RT-spot (add)
  • choisir Spot Method = Excluding Spot
  • déplacer le RT-spot vers la feuille à conserver - encadrer largement
  • agir sur "Scope excluding" (settings) jusqu'à obtenir l'effet désiré
  • vous pouvez utiliser le "Excluding spot" comme un RT-spot normal et si nécessaire utiliser tous les outils disponibles notamment Denoise, Blur, etc.
Usage de Excluding spot











1.10 Traiter les yeux rouges - retirer les défauts du capteur

Traiter les yeux rouges - 3 étapes : préparation, régler le RT-spot, supprimer le rouge

1.10.1 Préparation

  • Choisissez une sélection large autour de l’œil
  • mettez le RT-spot sur la zone rouge de l’œil (pupille)
  • mettez 4 "Lockable color pickers" pour repérer les changements
Préparation











1.10.2 Régler le RT-spot

  • Ajoutez l'outil "Color and light"
  • Pressez le bouton dans "Settings" "Preview deltaE"
  • Réglez le RT-spot pour obtenir l'effet désiré au niveau de la sélection
    • Ici j'ai choisi de réduire la taille du centre (Spot size) = 14
    • Scope color tools = 18
Preview dE











1.10.3 Supprimer le rouge

  • dans l'outil "Color and light", réduisez la chrominance à -100
  • examinez le résultat :
    • la pupille de l’œil n'a quasiment plus de dominante de couleur
    • l'iris, la cornée et la peau du visage sont inchangés
    • vous pouvez être amenés selon les cas, à changer les valeurs des "transitions" (plus faibles) et "transition weakening" plus élevée
Eye whithout Red











1.10.4 Même démarche pour retirer les défauts de capteur ou les taches

Vous pouvez utiliser le même principe pour retirer les petits défauts de capteur, mais avec d'autres outils

  • soit CBDL (Contrast By Detail Levels)
  • soit avec Wavelet pyramid2 - Contrast by levels
  • dans les 2 cas, réduisez le contraste pour les bas niveaux de décomposition
  • agissez éventuellement sur Blur levels (wavelet pyramid1)
  • Utilisez de faibles valeurs de "transition" (moins de 20) et d'importantes valeurs de "transition weakening" (plus de 15)
  • la taille minimale du RT-spot dans ces 2 cas est de 32x32 - ce qui n'a que peu d'incidences
1.10.4.1 Un exemple - retirer de nombreuses taches avec wavelet pyramid2
  • constat
Many blotches











  • une solution possible
  • activez l'outil "local contrast - wavelets"
  • choisisez "expert", puis "wavelet"
  • réglez scope vers 20
  • allez dans Pyramid2 et activez "Contrast by level"
  • réglez avec des valeurs élevées de "Attenuation Response", "Offset", "Chroma levels" (si nécessaire)
  • activez la courbe "Contrast by level" en réduisant le contraste pour les faibles niveaux.
less blotches














1.11 Comment réaliser un Dodge and burn (Éclaircir et brûler)

Dans beaucoup de portraits, ou de photos où la peau est exposée à la lumière, il se produit un phénomène peu agréable d'accroissement de contraste, certaines parties de la peau sont légèrement surexposées, alors que d'autres sont légèrement sous exposées.

  • traditionnellement ce problème est traité avec des masques et des calques - il est existe de nombreux tutoriels avec Photosshop. Vous pouvez aussi probablement le traiter avec les masques incorporés dans RT "Local adjustments"
  • d'autres techniques permettent un traitement localisé avec des brosses, faisant ou non appel à des processus automatiques de traitement.
  • ce que je propose ici est tout autre, il s'agit d'utiliser le concept de "Original Retinex" (Provient de la recherche Ipol) - ce pourquoi a été élaboré Retinex dans les années 1970 et non l'usage qui en a été fait ailleurs - y compris ici dans Rawtherapee:
    • utiliser un ou plusieurs Laplaciens à seuil réglable
    • résoudre l'équation de Poisson (PDE - Équation aux dérivées partielles)
    • équilibrer les luminances.

Je ferais la démonstration en 3 étapes : préparation, réglages du Laplacien et aperçu des modifications, résultat

1.11.1 Préparation

  • Je ne reprendrais pas les étapes de réglage du deltaE (attention à utiliser le Scope de Original Retinex), ni des transitions, les principes sont identiques aux exemples précédents
  • j'ai choisi un portrait, mais par souci de confidentialité j'ai masqué les yeux.
  • choisir "Add tool to current spot..." : "Soft Light - Original Retinex" - "Expert" - "Original Retinex"
Préparation









1.11.2 Réglages du Laplacien et aperçu des modifications

  • Agir sur le curseur : Strength (qui prend en compte le seuil du premier Laplacien)
  • Agir sur le curseur : Laplacian threshold deltaE (qui prend en compte le deltaE de l'image pour agir sur un deuxième Laplacien). Ce traitement est en amont des algorithmes Scope - et peut prendre en compte les différences dans les arrières plans...
  • Visualiser les modifications en choisissant: "Show process Fourier" : "show modifications without mask"
Show Modifications









1.11.3 Résultats

Résultats

Un algorithme similaire est utilisé dans "Exposure" - Laplacian PDE IPOL Contrast attenuator" - il permet de traiter des images avec d'importants écarts d'exposition, souvent globalement sous-exposées.








1.12 Réaliser un "Graduated Filter" Luminance - Chrominance et Teinte (filtre dégradé)

Toujours à titre de démonstration, je vais utiliser les possibilités de réaliser un Filtre dégradé à la fois pour la luminance, la chrominance et le teinte (hue).

1.12.1 Préparation

  • je choisis l'image qui a servi au démarrage
  • Je repère 7 points avec un "Lockable color picker"
  • Add tool to current spot..." - "Color and Light" - "Expert"
Préparation

Fichier raw: [2]









1.12.2 Réaliser un "Graduated Filter"

Arbitrairement je choisis les réglages suivants

  • Gradient strength luminance : -0.44
  • Gradient strength Chrominance : -1.13
  • Gradient strength Hue : 2.69
  • Gradient angle : -87.6
  • Scope color tools = 30
  • Feather gradient(settings) = 25
Gradient Luminance Chrominance Hue












1.12.3 Changer les réglages par défaut

  • Essayez de changer progressivement "Scope color Tools", portez le à 70, 75, 80, 85, 90, 100
  • Changez "Feather" et notez les variations
  • Bien sûr vous pouvez aussi changer les valeurs des gradients (L, C, H, angle)
  • et aussi si vous le souhaitez les valeurs de "Color and light"
Gradient Luminance Chrominance Hue - Scope Feather












1.13 Cinq manières de changer l'exposition - relever les ombres

Cette démonstration est uniquement à caractère pédagogique, pour montrer les diverses possibilités (non exhaustives) en matière de traitement de l'exposition. Mes choix sont arbitraires.

  • J'ai choisi de le faire avec une image difficile, ombre accentuées avec au centre une zone proche des limites d'exposition.
  • Cinq méthodes sont juste "montrées" avec des réglages arbitraires
    • Exposure
    • Shadows Highlight
    • Tone Equalizer
    • TRC (Tone Response Curve)
    • Encoding Log

J'aurais pu aussi utiliser :

  • des courbes de contraste,
  • ou relever les ombres avec "Lightness" (Color and Light)
  • ou utiliser un Graduated Filter Luminance
  • ...


  • par défaut j'ai réglé Scope à 50 ("Scope color tools" pour Exposure,Shadows Highlight", mais aussi Scope pour Encoding Log)
  • Essayez de faire varier cette valeur de 20 à 100
Relever les ombres - préparation

Fichier raw : [3]










1.13.1 Utiliser Exposure

Add tool to current spot..."Exposure"

  • j'ai réglé des curseurs de "Tools exposure" : black à -1500, shadows à 50
  • essayez en neutralisant ces réglages
  • essayez d'autres réglages de "Tools exposure"
Relever les ombres - Exposure












1.13.2 Utiliser Shadows Highlight

Add tool to current spot..."Shadows Highlight - Tone Equalizer"
  • Shadows Highlight
  • essayez de changer "Shadows tonal width"...et "Highlight"
Relever les ombres - Shadows Highlight












1.13.3 Utiliser Tone Equalizer

Add tool to current spot..."Shadows Highlight - Tone Equalizer"
  • Tone Equalizer
  • essayez les curseurs 2, 3 et 4
Relever les ombres - Tone Equalizer










1.13.4 Utiliser TRC

Add tool to current spot..."Shadows Highlight - Tone Equalizer"
  • TRC
  • augmentez "slope" jusque 150....revenez à 60
  • essayez de diminuer gamma et de l'accroître
Relever les ombres - TRC











1.13.5 Utiliser Encoding log

Add tool to current spot..."Encoding log"
  • Attention le "scope" à utiliser est celui de "encoding log" : scope = 50
  • cliquez sur le bouton "Automatic"
  • agissez sur "Target grey point"
Relever les ombres - Encoding Log













1.14 Image à forte dynamique - utiliser Encoding Log ou les algorithmes PDE (Équation aux dérivées partielles)

Les images à forte dynamique sont un des problèmes récurrents du traitement d'image. Plusieurs algorithmes dans Rawtherapee permettent un traitement plus ou moins complet de ces problèmes : Dynamic range compression, Shadows / highlight, Tone Equalizer, Tone Response Curve, etc.

  • dans le cas présent je tiens à montrer l'outil "Encoding Log" (Origin Filmic - Darktable - adapté à ART par A.Griggio). J'ai adapté légèrement cet outil à Rawtherapee - "Local adjustments"
  • je l'ai associé à un autre objectif pédagogique : réaliser un gradient de luminance, sans faire appel au Graduated filter pourtant présent dans le menu "Encoding Log"
  • Trois étapes : préparation, réglages automatiques, ajustements

1.14.1 Préparation

  • Régler le RT-spot de telle manière que :
    • le centre se trouve en bas à gauche de l'image
    • le coin supérieur droit soit aux limites de l'image
  • Aller à "Add tool to current spot..." : "Encoding log" (j'ai volontairement désactivé l'outil)
Préparation

Fichier raw : [4]









1.14.2 Réglages automatiques

  • Appuyez sur le bouton "Automatic"
  • l'image va s'éclaircir
  • re-cliquez sur le bouton "Automatic" pour mieux percevoir les réglages
  • Black Ev = -6.7, White Ev = 6.9 : traduisent une dynamique de 13.6 EV très importante
  • Source gray point : value (réglée en automatique) = 1.2
  • ces 2 réglages (que vous pouvez changer) traduisent les calculs réalisés en amont du processus après la conversion vers un espace de travail
Automatique










1.14.3 Ajustements

Vous pouvez maintenant adapter l'image à vos souhaits:

  • jouer sur le gradient diagonal en agissant sur "settings" - "Transitions" : "Transition value" = 45. vous pouvez aussi agir sur "Transition weakening" et "Transition differentiation XY" (essayez)
  • agir sur la répartition de l'action à l'intérieur de l'image en agissant sur Scope (Encoding log) = 50
  • Changer la luminance globale de l'image en agissant sur "Target Gray point" = 22.0
Gradient et ajustements










1.14.4 Une autre solution le traitement PDE - Exposure

Une autre manière consiste à combiner deux algorithmes présents dans Exposure PDE. On combine 2 algorithmes différents :

  • PDE Ipol - Contrast attenuator
  • Dynamic range compression
PDE Ipol - Dynamic range compression

















1.15 Traitement d'une image brumeuse

Je prendrais l'exemple d'une image très brumeuse et appliquerais en première étape le traitement "Dehaze" du main menu Puis je continuerais le traitement avec un complément pour le ciel et l'horizon, avec Retinex local

1.15.1 Image originale

Image brumeuse

Fichier raw: [5]










1.15.2 Traitement avec Dehaze (main)

J'aurais pu le faire avec "dehaze local"...et un RT-spot! Mais examinez l’arrière plan, les collines...il reste beaucoup de brume

Image brumeuse - dehaze main













1.15.3 Complément avec Retinex local

  • Choisir "add tools to current spot.." : Dehaze - Retinex - "expert'
  • Essayer plusieurs réglages par itérations successives
  • agissez si nécessaire avec la courbe "transmission map"...avec un affaiblissement de la courbe à droite...
  • examinez maintenant les collines et le ciel à l'horizon !
Image brumeuse - dehaze + retinex












1.16 Comment utiliser le module "Denoise"

Plusieurs utilisations sont possibles.

  • en complément sur certaines zones du module "denoise main", dans ce cas les réglages de "denoise main" seront réalisés a minima
  • en traitant toute l'image en mode "local adjustments" - "Denoise" et en excluant une zone avec "excluding"
  • pris isolément pour réduire le bruit dans des images peu bruitées - par exemple pour retirer le bruit d'un ciel, ou d'un visage
  • pris isolément pour traiter le bruit dans une zone choisie et en le laissant volontairement dans le reste de l'image, à des fins artistiques

C'est ce dernier cas que je vais expliciter.

L'image de la jeune fille est particulièrement bruitée avec un fort bruit chromatique

Denoise préparation

Fichier raw : [6]












1.16.1 Zoom 100%

Denoise zoom 100%












1.16.2 Quels réglages pour denoise ?

  • la position du spot, sa taille ont de l'importance : j'ai choisi une zone du visage avec un fort bruit chromatique et un assez gros RT-spot "spot size"
  • le choix de scope est important : dans ce cas - où le bruit occupe quasiment tout le spectre coloré (rouge, vert, bleu, jaune) il faut choisir une valeur élevée de scope (ici 90). Si, avec une autre image, le traitement du bruit concernait uniquement la luminance il faudrait choisir la valeur de scope "habituelle", soit aux environs de 30, pour permettre à l'algorithme de différencier l'action selon les couleurs.
  • par rapport à "denoise main" plusieurs changements:
    • possibilité de régler le débruitage luminance en fonction du niveau de détail (de 0 à 6 selon la position sur l'abscisse de la courbe), à l'aide d'une courbe
    • une différentiation est faite en fonction du niveau de détail : si les niveaux 3 et au-dessus sont supérieurs à 20% de l'ordonnée de la courbe, il en résultera une action plus destructive sur la luminance.
    • la différenciation "sombre - clair" pour la luminance est traitée par un "equalizer", plutôt que par "gamma"
    • possibilité de différencier l'action entre "chroma fine" (bruit d'impulsion, bruit faible de chrominance...niveaux de 0 à 4) et "chroma coarse" (paquets, bloatches..niveaux 5 et 6)
    • l'algorithme "chroma" utilise une action plus destructive, si le curseur "coarse" est supérieur à 20.
    • un "equalizer" "rouge vert" / "bleu jaune" peut être utile pour les images faiblement bruitées
    • ajout d'un curseur "chroma detail recovery" - utilisant DCT (discrete cosinus transform : Fourier)
    • ajout d'un curseur "Detail threshold luminance Chroma (DCT)" qui permet de différencier l'action en fonction des bords ("edge detection")
Denoise réglages













1.17 Un moment de folie - utiliser wavelet

1.17.1 A titre de démonstration....(ne fuyez pas... ce n'est pas si complexe que cela)

Image originale, avec "Exposure compensation" +1.5

Amsterdam











1.17.2 La même image avec "Levels Dynamic Range (un)Compression (wavelet local)"

  • Tous les réglages par défaut (settings)
  • Outil "wavelet pyramid2" activé (expert)
  • scope (wavelet) réglé sur 80
  • puis les réglages visibles sur la capture d'écran
  • bien sûr l'apparence est subjective, chacun peut accentuer ou réduire les réglage, en ajouter,....
  • cette version de "Tone mapping" est différente des autres algorithmes implantés dans Rawtherapee (Fattal "dynamic range compression", Mantiuk "Tone mapping", Encoding Log), elle est spécifique à Rawtherapee Wavelet.
Amsterdam Wavelet Tone mapping













1.18 Trois manière d'accroître la texture

Toujours à titre de démonstration, 3 manières d’accroître la texture. Ceci est obtenu par des principes de Tone-mapping J'utiliserais :

  • tone-mapping (Mantiuk)
  • Retinex
  • Wavelet

1.18.1 Préparation - image originale - Venise

Préparation

Fichier raw : [7]











1.18.2 Traitement "Tone mapping"

  • remarquez l'utilisation de "normalize luminance" qui maintient à l'image la même moyenne et la même variance que l'image originale
  • utilisation du mode "expert" - "edge stopping" et "scale'
Tone mapping 'mantiuk'










1.18.3 Traitement "Retinex"

  • remarquez l'utilisation de "Normalize luminance" qui maintient à l'image la même moyenne et la même variance que l'image originale
  • l'usage de "Fast Fourier Transform"
Retinex












1.18.4 Traitement "Wavelet"

  • remarquez l'usage de "Levels dynamic range compression", les valeurs de "Attenuation Response", "balance threshold" et "compress residual image"
  • essayez aussi "Contrast by levels"
  • essayez aussi "Levels directionnal contrast"
  • ou une combinaison de ces traitements
Wavelet TM










1.19 Fusion d'images - modes de fusion (merge file)

Vous pouvez utiliser dans "Color and light" - "Merge file" qui va vous permettre de simuler la fusion de calques. En effet chaque RT-spot correspond (ce n'est qu'une similitude) à un calque. Le système proposé permet de gérer jusqu'à une prise en compte de 2 RT-Spot et l'image d'origine.

  • Le premier "calque" est appelé "Original", il correspond (comme "Excluding spot") aux données avant toute intervention "Local adjustments"
  • si vous empilez des RT-spots l'un au dessus de l'autre, par exemple 4:
    • "Merge file" fusionnera le 4ème (calque), soit avec le 3ème (Previous Spot), soit avec "Original" (les données d'origine), soit avec une couleur définie dans "background"
    • pour chacune de ces fusions vous disposez de 21 modes de fusions inspirés de ceux de Photosshop (Normal, differences, ....soft light,..., overlay,...)
    • pour chacun vous pouvez gérer l'opacité, la prise en compte du deltaE, et un "contrast threshold" (à l'exception du choix "background")
    • les "Graduated Filter" (Luminance, Chrominance, Hue) - situés dans "Color and Light" - fonctionnent avec "merge files"
  • A titre d'exemple je vais utiliser ces fonctionnalités pour gérer un flou variable (bien sûr vous pouvez faire autre chose)

1.19.1 Préparation

Je passe sur les premières étapes qui sont similaires. Dans ce cas, je choisis "add tool to current spot" = "Smooth - Blur - denoise"

  • régler le RT-spot en inverse
  • choisir Scope = 90 ou 100 selon l'effet recherché
  • régler radius sur une valeur élevée (2000 ou plus - noter l'option FFTW), régler le mode de flou sur "Luminance & chrominance"
Préparation

Fichier raw : [8]














1.19.2 Créer un deuxième RT-spot

Avec "Add tool to current spot" - "Color and light" - "Expert"

  • réglez "Scope color tools" sur 100
Deuxième spot










1.19.3 Première fusion - mode de fusion "normal"

  • Allez jusque l'expander "merge file"
  • choisissez dans la liste "Original" - les autres choix :
    • "Previous spot" permet la fusion avec le RT-spot précédent (identique à Original - si il n'y a que 1 RT-spot)
    • "Background" permet la fusion avec un fond coloré;
  • choisissez ensuite dans "Merge with Original or Previous or Background" le mode de fusion et choisissez les réglages : Merge background, Opacity, contrast threshold
  • bien sûr vous pouvez utiliser tous les réglages possibles de "Color and Light"
Fusion "normal"










1.19.4 Deuxième mode de fusion - Soft light

Dans la liste des modes de fusion essayez "Soft light Photosshop" (ou un autre mode...)

  • choisissez les réglages, essayez...
  • remplacez "Original" par "Previous Spot"...notez les différences
Fusion "normal"












1.20 Utilisation d'un masque simple pour accroître la sélection de couleur

1.20.1 Préparation

  • J'ai choisi l'image de la montagne de sel à Pammukale (Turquie).
  • C'est une image difficile à traiter, du fait des faibles différences de couleurs entre le ciel et la montagne. De plus cette montagne contient de nombreuses irrégularités.
  • Je passe sur les étapes préliminaires similaires aux cas précédents. Notez le réglage de "Scope color tools = 40" qui est un compromis pour permettre de traiter correctement la montagne
  • Je propose à titre pédagogique d'accroître de manière très forte la luminance (lightness) et la chrominance de la montagne (ce n'est pas un objectif artistique) : l'objectif est si possible que cette modification ne touche pas le ciel
  • j'aurais pu utiliser des "excluding spot", ou si le GUI le prévoit un jour, une délimitation par un polygone; mais à titre pédagogique j'utilise un masque simple. J'aurais pu utiliser plusieurs courbes pour le masque, ou plusieurs masques (dupliquer le RT-spot).
  • "Local adjustments" permet la gestion de 2 types de masques:
    • 1) ceux qui n'ajoutent ou ne retranchent pas le masque à l'image. On vise l'amélioration de la qualité de la sélection deltaE
    • 2) ceux qui utilisent ces différences
    • nous sommes ici dans le premier cas (amélioration de la sélection)
Préparation

Fichier raw: [9]










1.20.2 Accroître fortement lightness et la chrominance

  • Constatez le résultat : les couleurs bavent, le ciel est touché par les changements, alors que je souhaite l'éviter
Accroissement de lightness et de la chrominance











1.20.3 Élaborer un masque simple

  • j'ai pris le parti de ne me servir que de une des 3 courbes LCH (ici L)
  • examinez le positionnement de la courbe L(L) : le point d'inflexion est situé à la transition entre zones grises. Pour toutes les courbes - C(C), L(L), LC(H), cette "transition" correspond aux 3 références du RT-spot (chroma, luma, hue)
  • ne pas utiliser "blend" : donc il n'y a que la détection de forme qui est améliorée
  • vous pouvez utiliser aussi dans "Mask and modifications" - "Show modifications with mask"
Affiche le masque










1.20.4 Finaliser le résultat

  • mettez "mask and modifications" sur "none"
  • activez "enable mask"
  • agissez si nécessaire sur "Smooth radius mask"
  • retouchez éventuellement les courbes "Contrast curve mask" et L(L)
  • passez en mode "expert" et essayez "Gamma mask", "Slope mask", ainsi que "Laplacian threshold mask" (à la place de "Smooth radius mask")
  • certes ce n'est pas parfait, mais nettement mieux....l'objectif est la découverte du fonctionnement des masques.

Pour améliorer le traitement de type masque, 2 solutions s'offrent à vous :

  • Dupliquer le RT-spot : si vous dupliquez le RT-spot, à côté du précédent, en changeant légèrement la position du centre (références), vous pouvez utiliser un second masque pour retoucher les "anomalies - incomplétudes" du précédent. De plus cette option permet de retoucher si nécessaire la valeur des traitements (ici lightness, chrominance) et la "partager" entre les 2 RT-spot pour une meilleure homogénéité.
  • Utiliser le masque d'un autre outil ouvert (si bien sûr celui-ci est doté d'un masque). Dans ce cas vous conservez les mêmes références (luma, chroma, hue) aussi bien pour élaborer les masques que pour la prise en compte du deltaE (scope)

Prise en compte des deltaE:

  • vous pouvez désactiver la fonction cœur de "Local adjustments" - c'est à dire la fonction "Scope" qui prend en compte le deltaE - si vous souhaitez travailler entièrement avec les masques et ignorer "Scope", dans ce cas réglez "Scope=100". A l'évidence la fonctionnalité "Scope" étant désactivée, seule l'utilisation de "blend" sera opérationnelle pour assurer la combinaison masque / image.
  • Lorsque vous utilisez les outils des masques "Tools" (Contrast curve mask, chroma mask, gamma mask, etc.), ceux-ci sont sensibles au réglage spécifique du deltaE masque : "Mask deltaE image" ("settings")
Résultat











1.21 Utilisation d'un masque avec mélange (blend) du masque et de l'image

Je souhaite ici accroître l'impression de perspective (relief) des Pagodes...

1.21.1 Préparation

  • j'aurais pu ici utiliser des outils spécifiques pour accroître l'impression de relief, comme CBDL ("contrast by detail levels") ou Wavelet pyramid
  • mais à titre pédagogique je vais utiliser un masque avec "blend"
  • je ne retrace pas les démarches de démarrage qui sont identiques
  • à retenir : "Scope color" réglée à 40 (arbitraire), et "Color and Light" en mode "expert"
Préparation

Fichier raw : [10]










1.21.2 Réglages du mask

  • A titre pédagogique j'utilise 2 fonctionnalités:
    • Courbe LC(H) pour sélectionner les couleurs
    • "Mask Blur" qui associe un "contrast threshold" et une fonction de floue (blur)
  • A noter la case à cocher "FFTW", qui certes consomme des ressources, mais accroît les possibilités ainsi que la qualité des résultats : dans le cas sans FFTW le rayon (radius) est limité à 100, avec FFTW celui-ci est porté à 1000.
Affiche le masque











1.21.3 Résultats

  • Là encore, activez le masque "Enable mask"
  • réglez "blend" à votre souhait
  • éventuellement ajustez "Smooth radius mask"
  • si vous avez activé les réglages "non mask" de "Color and light" (lightness, contrast, etc.), le curseur "Structure spot" va avoir une incidence.
  • vous pouvez constater que l'image a maintenant une dominante de couleur... La cause, la courbe LC(H) qui utilise "blend", donc amène un changement de couleur
    • essayez de passer la courbe en mode "linear", vous verrez la disparition de la dominante
    • conséquence : évitez de mettre plusieurs réglages masques impliquant ou non "blend"
    • si vous avez besoin de ces 2 réglages, il est souhaitable comme dans le cas vu plus haut "masque simple" soit de créer un deuxième (ou plus) RT-Spot avec "dupliquer", l'un avec "blend", l'autre sans (ou avec des valeurs de "blend" différentes), soit d'utiliser un autre masque associé à un autre outils.
Résultat













1.22 Comment se servir de Common Color Mask - puis Exemple de combinaison avec une fusion de 2 RT-Spot

Ce masque ne fonctionne pas exactement comme les autres masques de "Local adjustments". Il ne vient pas en complément d'un outil, comme par exemple le masque dans "Color and light", mais est un outil en lui même. Vous pouvez vous en servir pour changer l'apparence d'une image - contraste, luminance, couleur....mais aussi texture.

  • cet outil fonctionne en prenant en compte le masque qui vient modifier l'image (en plus ou en moins). L'écart des couleurs entre l'image +- masque et l'image originale est régulée par la prise en compte du deltaE - ΔE - et bien sûr des transitions.
  • bien sûr vous pouvez l'utiliser aussi en association avec d'autres outils dans le même RT-spot ou non
  • l'exemple donné - simple - permet de comprendre le fonctionnement; Il rentre dans la "philosophie" de "Local adjustments"...utiliser le ΔE

1.22.1 Préparation

Je ne reprends pas toutes les étapes, seulement celle de l'ouverture de l'outil

  • "Add tool to current spot...", "Common color mask" - "Normal", et à titre pédagogique pas d'autres outils ouverts.
  • pour l'élaboration du masque, je vais simplifier au maximum en ne prenant que 2 courbes C(C) et L(L) et en prenant en compte les références du RT-spot
  • notez que les 2 curseurs "Add / substract mask luminance" et "Add / substract mask chrominance" ne sont pas à zéro, afin que l'utilisateur ne soit pas dérouté par une absence de réponse du système; les 2 valeurs -10 sont arbitraires et de faible amplitude.
Préparation

Fichier raw :[11]











1.22.2 Masque luminance

J'ai choisi une action simple sur la luminance et de relativement faible amplitude.

  • remarquez la position du sommet de la courbe sur la transition grise....Le masque "Luminance" s'accorde avec la référence du RT-spot
Masque luminance













1.22.3 Masque chrominance

  • remarquez la position du sommet de la courbe sur la transition grise....Le masque "Chrominance" s'accorde avec la référence du RT-spot
Masque Chrominance












1.22.4 Preview ΔE

C'est à partir d'ici que vous pourrez jouer sur le deltaE (ΔE), entre "Image +- Masque" et "Image originale"

  • essayez d’accroître ou réduire "Scope" (attention c'est le curseur de "common color mask" qui a une action).
  • essayez les réglages de "settings" - "Shape detection" : "Threshold ΔE scope", "ΔE weakening", "Balance ΔE ab-L", "Balance ΔE C-H"
Preview deltaE - ΔE














1.22.5 Show modifications

Allez dans "Show modifications with mask"

  • agissez sur "Add / substract mask luminance" et "Add / substract mask chrominance" (j'aurais pu appeler ces curseurs "Opacité")
Show modifications










1.22.6 Résultat

Vous pouvez changer:

  • "Scope" (toujours celui de "Common color mask" qui agit sur le ΔE)
  • activer "Smooth Radius Mask"... qui va tenter de réduire les artefacts dus à l'élaboration du masque par les 3 courbes - C(C), L(L), LC(H).
  • chroma mask
  • agir sur la courbe "Contrast curve mask"
  • essayez dans "settings" - "Scope Mask ΔE image" : ce curseur agit sur la masque et prend en compte le deltaE du masque par rapport au centre du RT-spot, c'est différent du "Scope" (le premier curseur de "Color color mask") qui agit par différence entre l'image originale et le masque que vous avez créé

Passez en mode "expert"

  • agissez sur "Soft Radius", celui-ci va réduire les artefacts entre l'image originale et celle obtenue après "addition" du masque. Par défaut même en mode "normal" (il est à 1) ce qui induit un petit changement - même sans masque - dans "show modifications".
  • essayez "Laplacian threshold mask", et notez les différences avec "Smooth radius mask"
  • essayez "Gamma mask" et "Slope mask"
  • essayez de changer la structure par un des outils fournis : "Mask Structure", "Mask Blur", "Mask levels local contrast"
  • essayez "Graduated Filter Mask"
Résultat










Et bien sûr, vous pouvez créer autant de "Common color mask" que vous souhaitez, dupliquer ce "masque" près de l'autre avec des réglages proches...

Maintenant nous allons améliorer cette image "common color mask" avec l'outil "Merge file" de "Color and Light"

1.22.7 Ajouter un nouveau RT-spot "Color and light - Expert"

Toujours à titre pédagogique, sans recherche artistique, je vais expliquer comment réaliser 3 modes de fusion parmi les 21 possibles

  • ajoutons un nouveau RT-spot
  • créons un outil "Color and Light" - "Expert"
  • réglons correctement "Scope" (avec Preview ΔE)
  • choisissons 3 réglages pour accroître la luminance, le contraste et la chrominance
Ajout d'un RT-spot











1.22.8 Préparer le "merge" (fusion en français)

  • choisir "Previous spot", on va donc fusionner le nouveau RT-spot (Color and Light) et le précédent (Common color mask)
Préparer fusion











1.22.9 Première fusion en mode "normal"

  • choisir le mode de fusion "normal"
  • arbitrairement j'ai choisi 3 réglages : Merge background = 54.2 prend en compte le deltaE entre les 2 couches; Opacity = 54.2 - environ 50% pour chacun; Contrast threshold = 12.5 - prend en compte les différences aplats / structure
  • les deux valeurs 54.2 identiques sont le fait du hasard, il est évident que vous pouvez choisir d'autres valeurs 43, 68, etc.
Fusion Normal











1.22.10 Deuxième fusion en mode "SoftLight Photosshop"

  • changer de mode de fusion et choisir "Softlight Photosshop"
Fusion Softlight Photosshop













1.22.11 Troisième fusion en mode "Color Burn"

  • changer de mode de fusion et choisir "Color Burn"
  • bien sûr ces 3 choix de modes de fusion sont arbitraires
  • notez les différences de rendus en luminance et chrominance
Fusion Color Burn











1.23 Une approche de traitement complet - Portrait sombre - peau granuleuse - Mairi

Le portrait de Mairi, va être l'occasion d’utiliser plusieurs outils:

  • accroître "l'exposition" de l'image pour qu'elle soit moins sombre
  • utiliser "CBDL" pour adoucir la peau et "Clarity" pour éclaircir le visage
  • réaliser un "graduated filter" pour dégager les ombres du visage à droite
  • utiliser 3 "excluding spot" pour "exclure" les yeux et les lèvres du traitement
  • utiliser un "masque LC(H)" pour "exclure" les cheveux de l'adoucissement (et donc perte de définition)
  • comparer avant après
  • remarque : les réglages ont donnés à titre indicatif, tout est fonction de son goût....
Préparation

Fichie raw: [12]










1.23.1 Accroître exposition

Exposure + 0.5 J'aurais pu utiliser un RT-spot pour limiter la zone qui sera accrue en exposition au lieu d'un accroissement global de l'exposition.

Exposition











1.23.2 Utiliser CBDL

  • Créer un RT-spot avec un "gros" Spot Size = 47
  • Réduction progressive du contraste pour les niveaux 0 à 4
  • Clarity à 60
  • Scope à 40
CBDL













1.23.3 Graduated Filter

  • Créer un autre spot "Color and Light"
  • Graduated filter : luminance -0.6 ; Gradient angle = 5
  • vous pouvez aussi (expert) jouer sur la chrominance
Graduated Filter










1.23.4 Exclure les yeux et les lèvres

  • Créer 3 RT-spot "exluding" sur les yeux et les lèvres
  • agir sur Scope (excluding) pour obtenir le résultat recherché
Excluding










1.23.5 Masque pour exclure les cheveux

  • revenir au premier RT-spot
  • aller sur masque
  • show mask
  • utiliser la courbe LC(H)
  • repérer la couleur de la peau (séparation des zones grises)
  • abaisser la courbe comme sur le graphique (ou similaire)
  • agir sur Smooth radius mask
  • agir éventuellement sur gamma mask et slope
Masque












1.23.6 Résultat

  • mettre mask sur none
  • cocher "enable mask"
Résultat










1.23.7 Comparaison avant après

Avant après












1.23.8 Une alternative - remplacer CBDL par "wavelet contrast by level"

  • Le module "wavelet" est plus performant que CBDL (Contrast By Detail Levels)....il peut sembler plus complexe...vu le nombre d'options.
  • Il permet à contrario de CBDL de différencier l'action avec notamment les curseurs "Attenuation Response" et "offset" : au lieu d'avoir une réponse linéaire sur le signal de la décomposition - même amplitude pour les petites valeurs (bruit) et les grosses valeurs - l'amplification (ou la réduction) prend en compte la valeur du signal.
  • bien sûr vous disposez aussi d'une fonction "Clarity"
Wavelet contrast by level et Clarity











1.23.9 Et bien sûr, vous pouvez utiliser un masque avec "wavelet"

Masque wavelet











2 Quel type de contrôle local?

Lorsqu'on observe les différents logiciels du marché on trouve plusieurs types de contrôles locaux

  1. les contrôles de type "lasso", associés à des calques et masques de fusion, comme par exemple dans Photoshop (c). Ce type de contrôle est majoritaire dans les logiciels (Photoshop, Gimp, Darktable...) et l'avis des utilisateurs est obligatoirement orienté vers ceux-ci au détriment du point 4. ci-dessous moins connu!
  2. les dispositifs de suppression de "yeux rouges", ou de "spot" (poussières...) liés aux imperfections du capteur
  3. les brosses qui permettent des mini corrections locales
  4. les contrôles de type U-points, utilisés jusque récemment dans Nikon Capture NX2 (c), ou comme complément à d'autres logiciels comme Nik Software (c), et récemment dans DxO ou Capture NXD. Pour qui a tâté de ces dispositifs (encore minoritaires aujourd'hui) il n'est pas question de revenir aux calques et masques de fusion! Ce type de contrôle nécessite un apprentissage différent de ceux de type lasso-calque et un désapprentissage cognitif de ceux-ci. De mon point de vue, ils sont globalement plus performants.

Dans la version présente de Rawtherapee, l’algorithme développé est proche dans le principe du point 4. ci-dessus, les U-points avec quelques possibilités pour 2. Bien sûr, le code de Nik Software m'est inconnu, mais il y a quelques années j'ai été séduit par la facilité d'utilisation et les performances des U-points, et j'ai entrepris de développer un produit qui ne ferait pas appel, ni au lasso, ni aux calques, ni aux masques de fusion (même si j'en ai récemment ajouté en complément).

Bien sûr rien n'interdit d'avoir les 3 possibilités (Lasso-calque, retouches spot, U-points) !

3 Quels défis à résoudre?

Plusieurs problèmes généraux sont à résoudre afin d'obtenir un fonctionnement fluide :

  • permettre un nombre quasi illimité de RT-spot (spot de contrôles);
  • adapter les algorithmes locaux aux problèmes d'échelle, car beaucoup d'algorithmes tiennent compte de la taille de l'image - donc de la zone traitée. Cet aspect est fondamental, notamment avec les courbes qui agissent sur toute l'image;
  • adapter - lorsque c'est le cas - les algorithmes RGB du code principal, en mode L*a*b* utilisé par le contrôle local
  • minimiser l'occupation mémoire et les temps de traitement en sortie JPG et TIF;
  • permettre des mises à jour logicielles faciles en cas d’évolution des algorithmes ou d'évolution du nombre de méthodes ;
  • optimiser les écarts entre "preview" et sortie JPG / TIF;
  • etc.

Pour chaque RT-spot :

  • permettre selon le cas, une action dans la zone sélectionnée ou à l'extérieur de la zone sélectionnée;
  • permettre selon le cas une détection de forme pour délimiter l'action ou une action également répartie sur toute la zone sélectionnée;
  • assurer une transition entre le cœur de la zone traitée et le reste de l'image;
  • etc.

Actuellement, les RT-spot (spot de contrôles) sont opérationnels, pour le mode Lab, et pour les méthodes suivantes:

  1. Color and light (defects) : lightness, chrominance, contraste, Color correction, en mode normal avec quatre courbes L=f(L), L=f(H), C=f(C), H=f(H) avec possibilité de masques et inverse ;
  2. Exposure - Dynamic Range Compression: en mode normal avec possibilité de masques et inverse;
  3. Shadows Highlight - Tone equalizer - TRC: en mode normal avec possibilité de masques et inverse;
  4. Local Contrast en mode "unsharp mask" et "wavelet" (defects) avec possibilité de masques;
  5. Vibrance et warm cool avec possibilité de masque;
  6. Soft Light et Original Retinex;
  7. Smooth - Blur and Noise - Grain: en mode normal, inverse, avec possibilité de masques;
  8. Denoise : en mode normal avec possibilité de masques (associés à Smooth - Blur and Noise)
  9. Dehaze - Retinex : en mode normal, maintenant avec gestion de la courbe "transmission gain" et "masques" (spéciaux);
  10. Sharpening : en mode normal et inverse;
  11. Tone Mapping avec possibilité de masques;
  12. Contrast By Detail Levels : en mode normal avec possibilité de masques;
  13. Encoding Log

4 Développement - Performance - Interface graphique - GUI

L'ensemble de l'équipe de Rawtherapee a contribué au développement, mais en particulier:

  1. Principe des algorithmes - code de base - Jacques Desmis
  2. Amélioration des performances (vitesse, mémoire...) - Ingo Weyrich
  3. Interface GUI - Pierre Cabrera. Elle me semble simple et intuitive.

Certaines parties récentes sont issues du travail de Alberto Griggio :

  • Detail threshold recovery (denoise),
  • Film grain,
  • Tone Equalizer
  • Amélioration de Guide Filter Luminance (log),
  • Encoding Log.

4.1 Nouveauté du GUI (Pierre Cabrera)

Depuis avril 2020, l'interface graphique présente de nombreuses innovations

  • pour chaque RT-spot vous pouvez choisir les outils qui vous conviennent. Ce qui va éviter de noyer l'interface avec des champs inutiles. Par exemple vous pouvez choisir "Color and Light" et "denoise"
  • les fichiers pp3 ne contiennent que les modifications, ce qui simplifie et accélère le travail courant
  • lorsque vous réalisez un "copy" "paste" des profiles - soit à partir du "File Browser", soit à partir de la barre des "Processing profiles", un menu vous propose quels RT-spot vous voulez copier.

Depuis mai 2020, vous pouvez pour chaque outil, choisir le niveau de complexité "Expert" ou "Normal"

5 Aide - Tooltip

Vous pouvez désactiver l'aide qui apparaît pour certains sliders, expanders, comboBox,... et qui peut être gênante.

Aller dans "Preferences " - "General" - "Show local adjustments Tooltip"

6 Choix du niveau de complexité

Depuis mai 2020 vous pouvez choisir le niveau de complexité, "normal" ou "expert" quel que soit le module. Dans "Preference" vous pouvez choisir quel mode sera affiché par défaut ("normal" ou "expert")

Vous pouvez ainsi sélectionner le niveau de complexité de "Local adjustments". Cette sélection va permettre d'adapter le niveau des algorithmes et fonctions à vos usages et compétences

  • "normal" : l'application dispose du nécessaire pour assurer les opérations courantes, l'interface graphique est simplifiée
  • "expert": toutes les fonctionnalités sont présentes, certaines (par exemple Retinex) nécessitent un apprentissage important.

6.1 Modules et fonctions disponibles par niveau : Normal, Expert

  • ne sont mentionnées que les différences "Expert" / "Normal"

6.1.1 Color & Light

Différences Expert / Normal

  • Merge files
  • Graduated filter chrominance et hue
  • Curves C(L), L(C), L(H), H(H), RGB Tone curves
  • Mask and modifications : Mask structure, Mask Blur, Laplacian mask, Gamma mask, Slope mask, Shadows mask, Hue curve mask, Mask levels wavelet

6.1.2 Exposure - Dynamic Range Compression

Différences Expert / Normal

  • Mask and modifications : Laplacian mask, Gamma mask, Slope Mask, Graduated filter mask

6.1.3 Shadows Highlight - Tone Equalizer

Différences Expert / Normal

  • Mask and modifications : Laplacian mask, Gamma mask, Slope Mask, Dynamic Range Compression Mask

6.1.4 Vibrance - Warm Cool

Différences Expert / Normal

  • plus d'options dans Vibrance : pastels - saturated - Curve : skin tones
  • Graduated Filter chrominance et Hue
  • Mask and Modifications : Laplacian mask Gamma Mask, Slope Mask

6.1.5 Soft Light & Original Retinex

Différences Expert / Normal

  • Original Retinex (atténuateur de contraste cf Dodge and Burn)

6.1.6 Smooth Blur - Grain - Denoise

Différences Expert / Normal

  • Gaussian Blur : possibilité d'utiliser FFTW
  • Mask and Modifications : Gamma mask, Slope Mask, Highlight Mask, Mask levels wavelet

6.1.7 Tone mapping - Reinforced structure

Différences Expert / Normal

  • Gamma, saturation, Reweighting iterates
  • Mask and modifications : Laplacian Mask, Gamma mask, Slope mask

6.1.8 Dehaze - Retinex

Différences Expert / Normal

  • Retinex
  • Mask and modifications (Retinex)

6.1.9 Sharpening

Différences Expert / Normal

  • damping
  • iterations

6.1.10 Local contrast - Wavelet

Différences Expert / Normal

  • Wavelet - tous les outils

6.1.11 CBDL

Différences Expert / Normal

Mask and modifications : Laplacian mask Gamma mask, Slope mask

6.1.12 Encoding Log

Pas de différences

7 Principes généraux

7.1 L'Objet RT-spot

Comme je l'ai évoqué, le système utilisé est proche de celui mis au point par Nik Software, avec de grandes différences :

  • chaque RT-spot, peut être considéré comme un objet qui comporte plusieurs champs - à ce jour environ 100 (Il y a 180 événements gérés!), constitués de curseurs, courbes, combobox, checkbox, mask;
  • chaque champ, regroupé en paquets peut être ou non activé, et peut avoir des valeurs variables selon sa nature ;
  • les paquets sont des ensembles cohérents pour l'utilisateur : color & light, exposure, local contrast, shadows highlight, soft light, tone mapping, vibrance, Smooth blur and noise, retinex, sharpening, contrast by detail level, denoise ;
  • chaque RT-spot, crée une "couche" supplémentaire qui peut être assimilée à un calque. Chaque Rt-spot ajouté travaille par transparence et laisse voir les modifications précédentes - "Excludind Spot" permet d'accéder à l'image originale.
  • l'ensemble des RT-spots fonctionne en mode L*a*b* - contrairement au mode pleine image qui est soit en mode "RGB" avant demosaicing, soit en mode "rgb", soit en mode L*a*b*
  • les "RT-spots objets" sont gérés - création, modification, suivi - dans une boucle "for";
  • il n'y a pas de duplication de code.

7.2 La délimitation des zones - l’aperçu de la zone RT-spot

Lorsque l’utilisateur sélectionne un RT-spot (spot de contrôle),l’image à l’écran montre:

  • un centre "C", constitué d'un cercle dont on peut faire varier : a) le diamètre, b) la position avec la souris ou les curseurs;
  • quatre "points délimiteurs" horizontaux ou verticaux ("T" top, "B" bottom, "L" left, "R" right) dont on peut faire varier les positions avec la souris ou les curseurs.

On aboutit à :

  • une zone globale (rectangle) délimitée par les 4 "points délimiteurs" ("T", "B", "L", "R"): cette zone est celle où sont opérés les calculs des différents algorithmes (Exposure, Retinex, Shadows Highlight, etc.). C'est à l'intérieur de celle-ci (sauf bien sûr en mode inverse) que sont calculés et appliqués les algorithmes de détection de couleur et de structure.
  • 4 zones (à l'intérieur de la zone globale), dont on ne peut pas faire varier l'orientation; ces 4 zones ont chacun de leurs sommets reliés par une ellipse imaginaire ou un rectangle (settings).

Il est possible de pointer les limites des zones en dehors de la zone "preview".

A terme, il doit être possible, même si l'utilité me semble discutable du fait de l'algorithme de détection de forme - à noter que DxO et Capture NXD n'ont qu'une sélection circulaire - , de remplacer l'ellipse ou le rectangle, par une courbe (courbe de Beziers) ou un polygone tracée à l'aide de la souris, à condition :

  • que la transformée homothétique - de centre le centre du Spot "C" - de chacune des 4 courbes n'ait pas d'intersection avec la courbe originale.
  • chacune des 4 courbes passe par 2 "points délimiteurs" "T" ou "B" et "L" ou "R"
  • chacune des 4 courbes soit à l'intérieur des 4 rectangles "C", "T", "L", "C" ou "C", "T", "R", "C" ou "C", "B", "L", "C" ou "C", "B", "R", C" ou à l'intérieur de la zone globale en permettant l'homothétie comme évoqué ci-dessus
  • permettre l'élaboration de 4 LUT de type y=f(x)

Cette "amélioration" intellectuellement satisfaisante, ne devrait être que d'un apport négligeable (sauf cas spécifiques) - dans le cas des RT-spots. Néanmoins il sera toujours possible de faire coexister les actuels RT-spot avec des contrôles par"lasso" de type Photoshop (c).

A noter que l'utilisation de un ou plusieurs masques (avec 1 ou 2 Spots), peut suppléer à ces "nouvelles" courbes.

7.3 Les 4 types de gradient

L'objet RT-spot est conçu sur le principe de 4 gradients:

  • gradient du à la dissymétrie possible. En plaçant le centre du spot dans un angle du Spot et en faisant varier hauteur et largeur on crée naturellement un gradient différentiel avec les 3 gradients suivants :
  • gradient du à la transition - réglable - du centre vers la périphérie du Spot : 3 sliders permettent une variation différentielle
    • "Transition value" : jusque la valeur choisie "x" - l'algorithme est appliqué à 100% du centre jusque "x%" de la zone sélectionnée, puis une décroissance est assurée jusque 0, pour atteindre la périphérie du Spot. Avec cette transition on aboutit à 3 zones (à noter que en mode inverse, ces 3 zones sont inversées !):
      • zone 0 : celle située à l'extérieur du rectangle de sélection et à l'extérieur des 4 courbes aucune action;
      • zone 1 : celle située à l'intérieur des 4 courbes où est prise en compte l'action des curseurs "transition" : action progressive
      • zone 2 : celle située à l'intérieur des 4 courbes, proche du centre "C", où n'est pas prise en compte l'action des curseurs "transition" : action complète
    • "Transition weakening" : fait varier l'intensité géographique de la transition: 1 linéaire, jusque 10 transition à très forte décroissance (puissance 10).
    • "Transition differentiation XY" : Si le slider est différent de zéro, crée un gradient différentiel entre l'abscisse et l'ordonnée. Les valeurs négatives réduisent la zone de transition en ordonnée, et l'inverse pour les valeurs postives.
  • gradient de couleur (en fait de deltaE) grâce à la fonction "Scope" (étendue) - cette fonction prend en compte le deltaE. Plus les valeurs sont faibles, moins les écarts de couleur (L, C, H) sont pris en compte, à partir de Scope=80, l'étendue augmente pour à 100 atteindre une action égale quelque soit les couleurs. 3 sliders permettent de faire varier le gradient
    • deltaE Weakening : intensité de l'action en fonction du deltaE - 1 linéaire - jusque 10 à très forte décroissance (puissance 10)
    • Threshold deltaE-scope  : interagit sur les valeurs de deltaE prises en compte et "scope" - réduit ou accroît la sensibilité - à utiliser selon l'image. Les images à fort gamut (fleurs, couleurs artificielles..) supportent des valeurs élevées de ce slider
    • balance deltaE ab-L : Pour une valeur de 1, le calcul du deltaE prend en compte de manière égale les 3 composantes L* , a* , b*. Les valeurs supérieures vont accroître l'action de la L* et réciproquement
    • balance deltaE C - H : pour une valeur de 1, le calcul du deltaE prend compte à part égales, la chromaticité et la teinte, les valeurs supérieures vont accroître l'action de H (hue) et réciproquement.
  • gradient de type "Graduated Filter" (GF) de luminance, mais dans certains cas aussi de Chrominance et Teinte, qui permet des dégradés (gradient) en fonction de l'angle et du "feather"

Ainsi, tous les modules (y compris CBDL, Retinex, TM, etc.), ainsi que les modules agissant principalement sur la luminance (Color and Light, Exposure, Shadows Highlight...) réalisent de fait des gradients, croissants ou décroissants. Le centre du Spot étant toujours le point de référence.

7.4 Les 2 types de RT-spot

Deux types de RT-spot sont proposés:

  • Normal: chaque nouveau spot prend en compte les réglages des précédents - si bien sûr ils sont dans la zone d'action commune - on peut parler d'action récursive.
  • Excluding : chaque nouveau spot réinitialise, l'image à partir des données originales, mais garde pour les calculs, les références de l'image modifiée par les autres RT-spots.

Dans les deux cas, vous avez accès à la quasi totalité des réglages : Color and Light, CBDL, Blur, etc.

7.4.1 Commentaires sur le "Excluding spot":

  • il est dans le principe assez similaire au "Contre point" de Capture NX2(c) et permet de défaire des actions trop invasives par exemple une "bavure" non désirée, ou d'empêcher l'action sur une partie déterminée, par exemple si l'utilisateur souhaite accroître la saturation d'un portrait et qu'il veut exclure l’œil ou une partie avec une exposition différente.
  • l'algorithme que j'ai utilisé est très proche de ceux présents jusqu'ici dans "local adjustements", il est fondé sur les différences de deltaE et aussi sur la structure de l'image (via une transformée de Sobel Canny). Il n'est pas "parfait" mais devrait satisfaire 70% des cas.
  • il permet de simuler un module "inverse", pour cela créez un Rt-spot qui dépasse les limites de l'image, appliquez le module (Exposure, Retinex, etc.) que vous souhaitez, puis positionnez un second Rt-psot où vous souhaitez revenir sans modifications, choisissez "Excluding Spot", agissez sur Scope si nécessaire. Bien sûr vous pouvez avec ce RT-spot "excluding" apporter des modifications "Color and Light, ShadqosHighlight", etc.

7.4.2 Comment se servir de "Excluding spot"

  1. il suffit de placer le nouveau spot sur la zone à exclure
  2. choisir dans le menu "Settings", Spot method = "Excluding spot"
  3. Puis régler "Scope", "Transition", "Spot size" ainsi bien sûr que 4 limiteurs de zone, pour obtenir les effets désirés. Vous pouvez utiliser si nécessaire, des réglages complémentaires (comme pour le spot normal) par exemple "Color and Light", "Exposure", etc...
  4. dans certains cas (faible différence de deltaE...) il peut être nécessaire d'ajuster le curseur "Threshold deltaE-scope" - notamment en réduisant la valeur par défaut.
  5. dans le cas de zones avec aplats, vous pouvez utiliser "Structure" qui pourra aider dans certains cas à une meilleure délimitation de l'action.

7.5 Les références teinte, chroma, luminance et le principe de l'algorithme

Afin de mettre en œuvre un algorithme performant de détection de forme :

  • la zone du cercle central, sert de référence. En fonction du diamètre choisi par l'utilisateur, le système calcule, la moyenne de la teinte (hue), de la chroma, et de la luminance (lors de l'utilisation de Denoise, ou de Global quality = Enhanced + chroma denoise", ces différentes valeurs sont calculées après un léger floutage pour réduire l'impact du bruit) .
  • le choix du diamètre de la zone centrale dépend de l'usage. Par exemple pour un feuillage, l'utilisateur aura intérêt à choisir une valeur faible afin de ne sélectionner que le vert du feuillage; à l'inverse pour la peau l'utilisateur aura intérêt à accroître le diamètre afin d'éviter les prises en compte de données parasites (bruit, cils, etc.).
  • pour chaque quart, et en fonction du curseur "scope", le système prend en compte :
  1. en premier lieu de l'écart de deltaE (différence perçue entre 2 couleurs prenant en compte, la teinte, la chroma et la luminance)entre la zone centrale et le pixel courant) ;
  2. puis, un algorithme s'appuyant sur ce deltaE , atténue l'action en fonction de l'écart entre la zone centrale et le pixel courant.
  3. la modification d'action utilise soit une loi linéaire, soit une loi 'puissance' (parabolique, cubique,....) en fonction du réglage de "DeltaE weakening" dans settings (1 conduit à une loi linéaire, 2 parabolique, etc.)

Ceci va permettre de différencier l'action selon les critères énoncés ci-dessus, comme par exemple, si le cercle central se trouve dans un feuillage, de limiter l'action à l'ensemble du feuillage sans toucher à l'arrière plan (ce qui est impossible avec un lasso). De plus si un autre feuillage se situe dans la zone couverte, celui-ci sera également concernés par la modification.

  • l'action sur le curseur transition va permettre de faire varier l'action : si le curseur est réglé sur 50, la moitié (linéaire) de la zone concernée verra une application à 100% de l'effet, puis une transition agira régressivement jusqu'aux limites de la zone. Cette régression est par défaut "linéaire"; vous pouvez changer pour une régression parabolique ou une autre puissance, en agissant sur "transition weakening"
  • si on accroît la valeur de "scope", progressivement l’ensemble de la zone sélectionnée est prise en compte quelque soit la couleur, la chroma et la luminance.
  • si on réduit la valeur de "scope",l'action se limitera aux pixels très proches (en termes de deltaE) de la zone de référence.
  • si scope est supérieur à 80, progressivement l'ensemble de la zone est concernée de manière identique (pas du tout de prise en compte du deltaE). Ce mode de travail doit rester exceptionnel et n'est en général pas recommandé sauf par exemple pour créer des gradients de luminance .

L'algorithme de détection de forme est opérationnel en mode "normal" - son implantation en mode inverse s'accompagne de restrictions.

Cet algorithme va avoir ses performances modifiées, si l'utilisateur choisit : "Quality enhanced + chroma denoise". Ce second choix apporte une très légère réduction du bruit de chroma afin de supprimer les artefacts possibles liés à des images légèrement bruitées (à noter dans le cas + chroma denoise, un accroissement des besoins en mémoire et du temps de traitement).

Au dessus de la valeur de "scope" choisie, l'algorithme "deltaE" n'est pas pris en compte (voir ci-après).

7.5.1 Mise à jour récursive des références

Si vous activez la case à cocher "Recursives references"

  • les références hue (teinte) chroma, luma (luminance) et Sobel seront dynamiquement mises à jour, d'une part entre chaque module utilisé pour un même RT-spot, et d'autre part pour chaque RT-spot
  • les références qui apparaissent dans les masques C(C), L(L) et LC(H) et h(H) seront elles aussi mise à jour
  • attention, si vous activez cette case, et souhaitez utiliser le masque associé, le réglage du masque initial devra se faire sans activer l'expander (valeurs "avant" le travail réalisé par le module en cours)

7.5.2 Prévisualisation des zones sélectionnées Preview ΔE (deltaE)

Dans "Settings", si vous sélectionnez le bouton "Preview ΔE", vous aurez un aperçu des zones de l'image affectée par la sélection - les transitions ne sont pas prises en compte.

Egalement dans "settings" "Color preview ΔE and intensity" permet:

  • la sélection de la couleur de prévisualisation - bleu ou vert - et son intensité

Les curseurs et courbes agissant sur la couleur sont sans effet avec cette sélection. Les curseurs et courbes agissant sur la luminance ont un effet avec cette sélection.

"Scope" est le réglage le plus sensible puisque il agit directement sur le deltaE.

Les 4 curseurs situés en "Settings": a) Threshold ΔE-scope, b) ΔE weakening, c) Balance ΔE ab-L, d) Balance ΔE C-H, ont également un effet avec cette sélection.

7.5.3 DeltaE ΔE utilisé

J'ai choisi la version la plus simple du deltaE.

Si on évalue les valeurs L*a*b* dans l'intervalle : L [0..100] a [-128..+128] b [-128..+128]

  • Si Lc, ac, bc sont les valeurs du pixel courant
  • Si Lr, ar, br sont les valeurs de la référence (converties des valeurs LCH de base)
  • deltaE = sqrt(SQR(Lc - Lr) + SQR(ac - ar) + SQR (bc - br))

Correspondance avec la valeur de "scope":

  • il y a une relation entre scope et deltaE et l'affaiblissement (weakening), et "threshold deltaE-scope"
  • threshold deltaE-scope agit sur l'étendue de prise en compte
    • par défaut threshold deltaE-scope = 2 conduit à des valeurs de deltaE prises en compte de 2 à 155
    • si vous réduisez threshold deltaE-scope, la valeur maximale va être réduite jusque 130, à l'inverse si vous augmentez au maximum, le maximum deltaE sera de 230. De mon point de vue il faut réserver cette situation aux images avec de très grosses variations de gamut, par exemple des fleurs aux couleurs éclatantes. Par contre accroître légèrement threshold deltaE-scope (3 à 5) permet un rendu différent du système.
      • un deltaE de 230 ne peut se rencontrer que dans des cas extrêmes, par exemple 80 d'écart sur L, 158 sur a, 145 sur b... (uniquement accessible pour les très grands espaces de travail, avec des couleurs de base telles fleurs éclatantes ou couleurs artificielles, et action importante sur les sliders chroma et luma)

Cas avec threshold deltaE-scope = 2 (défaut)

  • les deltaE pris en compte varient de 2 (scope=0) à 155 (scope=100). Bien sûr ce choix est arbitraire on peut changer les 2 seuils mini et maxi (voir ci-dessus), mais il semble fonctionner dans une majorité de cas.
  • 2 n'est pas perceptible par l'oeil (mais ici ce n'est pas l'objectif recherché)
  • 155 correspond à des valeurs très élevées, par exemple 80 d'écart sur "a" (composante rouge vert), 80 sur "b" (composante bleu jaune"), 80 sur "L" ou autre exemple 50 sur "L", 105 sur "a" et 100 sur "b"

Par exemple lorsque "scope" est réglé sur 15, ceci signifie que toutes les couleurs telles que deltaE < 3 seront traitées telles quelles sans atténuation. Celles avec deltaE > 27.5 seront ignorées, les valeurs intermédiaires sont affaiblies d'autant plus qu'on se rapproche de deltaE = 27.5, par exemple:

  • un deltaE de 3 correspond par exemple à (il y a d'autres combinaisons...):
    • delta L = 2
    • delta a = 1
    • delta b = 2
  • un deltaE de 15 correspond par exemple à (il y a d'autres combinaisons...) :
    • delta L = 10
    • delta a = 9
    • delta b = 6.6
  • ou encore un deltaE de 27.5 par exemple à (il y a d'autres combinaisons...) :
    • delta L = 15
    • delta a = 14
    • delta b = 18.3

Lorsque on augmente "scope", par exemple à 50, toutes les couleurs telles que deltaE < 4.5 seront traitées telles quelles sans atténuation. Celles avec deltaE > 80 seront ignorées, les valeurs intermédiaires sont affaiblies d'autant plus qu'on se rapproche de deltaE = 80, par exemple:

  • un deltaE de 80 correspond par exemple à (il y a d'autres combinaisons...):
    • delta L = 20
    • delta a = 62
    • delta b = 44,7

Etc.

7.6 Algorithme complémentaire - détection de structure

L'algorithme de Sobel-Canny permet en association avec le filtre "Guide Filter" qui lisse les irrégularités, d'utiliser la différence entre la référence (cercle central) et la valeur de la structure en chaque point de l'image.

Cet "écart" est ajouté au calcul de deltaE pour mieux déterminer les contours et les zones à réduire l'effet. Ce système est efficace, si:

  • la référence est dans une zone avec une assez importante structure
  • la zone à affaiblir est un aplat ou avec une structure faible.

Structure est implanté dans "Color and Loght" et "Exposure" ainsi que dans "Excluding spot". Dans le sens Aplats vers structure vous pouvez agir si nécessaire, sur "Threshold structure" (Settings), la valeur est fonction du niveau de bruit.

Il est possible d'utiliser "structure" lorsque :

  1. les différences de deltaE sont très faibles et qu'on souhaite une différenciation
  2. et lorsque que se trouve accolée une zone avec structure et une autre avec aplats

7.7 Synthèse des différentes options de settings

Settings reprend tout ce qui est commun à la gestion des RT-spot, par exemple :

  • les transitions seront identiques quelque soit l'outil choisi (Color and Light, Exposure, Denoise...)
  • mais ce qui n'est pas commun sera traité spécifiquement dans chaque outil, comme par exemple la gestion du deltaE (Scope) pour les outils autres que "Color and Light", "Exposure (standard)", "Shadows Highlight", "Vibrance".
  • remarque : des outils comme
    • le choix de travailler avec la souris ou avec des sliders (présents dans les versions de développement) a été caché pour simplifier l'interface (il est facile de le réactiver si nécessaire)
    • même constat pour "qualité globale"

7.7.1 Gestion des RT-spots

Les premières lignes de l'interface permettent la gestion des RT-spot

  • création (add)
  • Suppression (delete)
  • Duplicate - créer un nouveau spot avec les caractéristiques de l'ancien en termes de forme
  • Rename (renomme le nom du Spot pour personnaliser le suivi)
  • Show - Hide : permet de cacher le Rt-spot pour assurer une meilleure lisibilité.

7.7.2 Shape RT-spot area

Permet de choisir entre ellipse et rectangle comme forme du Rt-spot. A noter que dans une majorité de cas, ce choix est avec très peu d'incidences sur les résultats. Peut être, dans les semaines à venir y aura-t-il d'autres mode (courbes de Beziers, polygone...)

  • Ellipse est le mode par défaut
  • Rectangle peut servir à travailler en mode pleine image

7.7.3 Spot method

Par défaut en mode "normal". Chaque RT-spot peut contenir tout ou partie des outils disponibles. L'action est récursive

En mode "excluding" Chaque Rt-spot peut contenir tout ou partie des outils disponibles. Excluding réinitialise les données d'origine. Excluding va par exemple permettre de supprimer des actions trop invasives ou de créer un mode inverse

7.7.4 Spot size

La taille par défaut doit convenir dans une majorité de cas. De petites valeurs, permettent de ne traiter par exemple que les feuilles d'un arbre (bien sûr en association avec Scope deltaE) Des valeurs plus importantes vont permettre de gommer les petits écarts dans le calcul des références (hue, chroma, luma). Ceci peut être utile pour traiter la peau.

7.7.5 Transition Gradient

  • Transition value : permet de choisir l'incidence du réglage de tous les RT-spot. géographiquement selon le réglage de Transition "X", en-dessous de cette valeur 100% des réglages sont appliqués, au dessus il y a décroissance progressive (sauf si vois choisissez 100%)
    • de très faibles valeurs permettent par exemple la réduction des défauts
  • Transition weakening : traduit la vitesse d'affaiblissement au del de "X%" ci-dessus. Avec 1 la décroissance est linéaire,...avec 25 une loi exponentielle réduit considérablement l'incidence de l'action, la rendant quasiment nulle. Ceci permet de choisir des Rt-spot relativement importants pour traiter certaines actions (défauts,...) sans incidences (ou presque au delà de %)
  • Transition differentiation XY: pemet de différentier l'action selon l'abscisse ou l'ordonnée créant de fait une variation du gradient
  • Feather gradient : n'a aucune action si un des "Graduated filter" utilisable dans de nombreux outils n'est pas activé. Agit en pourcentage de la taille de diagonal du Rt-spot, lorsque un ou plusieurs des "Graduated filter" (luminance, chrominance, hue, local contrast) est utilisé.

7.7.6 Shape detection

  • Threshold structure : seuil d'action de l'algorithme de détection de structure - qui va contribuer à une meilleure sélection - pour "Color and Light" et "Exposure" (structure Spot). Pour visualiser l'action aller dans "Masks and modification" - show structure spot
  • Threshold deltaE -scope : permet d'adapter les réglages par défaut du deltaE au type d'image. Si l'image est avec un fort gamut (fleurs, couleurs artificielles,...) il peut être nécessaire d'accroître les valeurs.
  • DeltaE weakening : accroît l'efficacité du deltaE, de fortes valeurs vont rendre la sélection plus pertinente
  • Balance deltaE ab-L : équilibre l'action de deltaE par rapport aux lois habituelles, plus axées vers la luminance, ou vers la couleur.
  • Balance deltaE C-H : équilibre l'action de deltaE par rapport aux lois habituelles, plus axées vers le teinte, ou vers la chromaticité
  • Color preview selection deltaE - strength et bouton associé : le slider permet de choisir la couleur visible "bleue" ou "verte" ainsi que son intensité. Le choix "vert" permet aussi de visualiser en couleur dans "mask and modifications" - show modifications with or whithout mask. Presser le bouton donne un aperçu de ce qui est concerné par le deltaE (sans tenir compte pleinement ni des modifications, ni des transitions), mais cette possibilité est limitée à un outil actif (alternative : Mask and modifications : Preview deltaE)

7.7.7 Avoid Color shift

Tente de remettre les couleurs dans le gamut du working profile, une correction Munsell est ensuite appliquée

7.7.8 All changes forces in Black and white

Lorsque l'utilisateur a utilisé en amont de "Local adjustments" un module noir et blanc ou une simulation de films noir et blanc, cette case à cocher permet d'éviter l’apparition de couleurs dues aux réglages de "Local adjustments"

7.7.9 Recursives references

Force l'algorithme à recalculer les références après chaque outil.

7.7.10 Mask an merge

Uniquement utilisé par les masques (lorsqu'ils sont activés : courbes LCH, etc.)

  • delta Mask laplacian solve PDE : résoud l'équation de Poisson lors d'utilisation de Laplaciens dans les masques (expert)
  • Mask deltaE image et slider Scope mask deltaE image : permet de prendre en compte le deltaE pour l’élaboration des masques - ce réglage est sans action sur les différents "Scope" présent dans chaque outils - il permet une meilleure sélection du masque - suppose que un des outils masque est activé (chroma mask, contrast cuve mask, gamma mask, slope mask....)
  • Luminance background mask : ajuste le niveau de gris de l'arrière plan des masques (Mask and modifications : Show Mask)

7.8 Algorithme complémentaire - Soft process (Soft radius)

Certains algorithmes peuvent être agressifs:

  • Color and light
  • Exposure
  • Contrast By Detail Level

L'utilisation de "GuideFilter" sur la variation de luminance entre l'image originale et l'image modifiée, va permettre d'adoucir le résultat.

Nota : Shadows-Highlight possède par conception cet algorithme.

Actuellement seule la luminance est traitée... rien ne s'oppose à traiter la dimension "couleur" soit sous la forme de "Chroma" (C*) soit sous la forme des 2 composantes a* et b*

7.9 Algorithme complémentaire : Graduate Filter - GF

En m'inspirant du "Graduated Filter" (gradient de luminance) présent dans le menu principal, j'ai élaboré 2 autres gradients:

  • chrominance : il est ainsi possible de faire varier la chrominance et réaliser des dégradés de chroma (ciel, portrait)
  • hue : il est possible de faire varier la teinte et réaliser des dégradés de teinte (paysages, réglages fins, effets spéciaux..)

Les modules suivants sont dotés d'un module "Graduated Filter"

  • Color and Light : luminance, chrominance, hue (teinte), dans le menu de base, mais également dans "Merge file"
  • Exposure : luminance
  • Exposure Mask : luminance
  • Shadows Highlight : luminance
  • Vibrance : luminance, chrominance, teinte
  • Local contrast - wavelet pyramid : local contrast

Le réglage de "feather" - répartition sur le RT-Spot du gradient - se trouve dans Settings

Il n'y a pas "d'aide" avec la souris pour accompagner la rotation du gradient, c'est un curseur (-180 +180) qui permet cette fonctionnalité.

Bien sûr les fonctions de "transition" et de "scope" sont conservées.

7.10 Algorithme complémentaire : fusion d'images

Dans "Color and light" vous pouvez choisir dans : "Merge image and Mask", 5 possibilités:

  • "None" : Rawtherapee utilise toutes ses fonctions habituelles y compris les masques
  • "Shortcut 'L' Mask" : court - circuite les courbes de masque L, C, H et permet un mélange de l'image en cours avec un masque de la luminance de l'image originale (désactivé)
  • "Original image" : permet la fusion de l'image courante avec l'originale sans aucune modifications
  • "Previous Spot" : permet la fusion de l'image courante avec l'image du spot précédent
  • "Background" : permet de choisir un fond avec choix de couleur (hue, chroma) et luminance.

7.10.1 Background permet de simuler une brosse (brush)

En association avec: 
  • une faible taille du Rt-spot,
  • une valeur très faible de transition,
  • une valeur élevée de transition weakening
  • dupliquer le spot

7.10.2 Plusieurs types de fusion sont possibles avec ou sans utilisation du mask

Bien sûr les fonctions de Scope et Transition sont conservées. Attention la valeur de scope (et l'algorithme) sont différents de ceux de base, à ce jour les options de "previsualisation" - show modifications without mask... ne sont pas disponibles.

Vous disposez des 3 possibilités de "graduated filter" (voir cette rubrique) : luminance, chrominance, hue, et bien sûr de du gradient d'angle

Modes de fusion - similaires à ceux de Photoshop:

  • normal, substract, difference, multiply, addition, divide, soft Light Photshop, SoftLight Illusion, Soft Light W3C, hard light, overlay, screen, darken only, lighten only, exclusion, Hue, stauration, Color, Luminosity
  • vous pouvez régler le "mélange" à l'aide du curseur "Opacity"
  • vous pouvez régler la répartition de l'action entre zones sans relief et zones avec contraste avec le curseur "contrast threshold" qui prend référence dans la luminance de l'image originale

7.10.3 Exemple d'effet spécial obtenu avec "merge file"

Bien sûr cet exemple n'est pas exhaustif, mais uniquement démonstratif. L'exemple va permettre de créer un double dégradé sur fond flou.

  • créer un premier RT-spot, "Normal spot", "Elipse"
    • Inverse
    • sélectionner avec les 4 délimiteurs, la zone à conserver exempte de flou gaussien
    • Smooth - Blur - Noise - Grain : "Gaussian Blur - Noise Grain" :
    • "Radius" 1000 à 10000,
    • "Scope" élévée 80 à 100,
    • "Luminance only" activée ou non, suivant souhaits
  • créer un deuxième RT-spot, "Normal spot", "Elipse", "Transition" 60, mais vous pourrez changer ensuite selon souhaits
    • mettre le centre de ce RT-spot à l'intérieur de l'aire du premier (zone exempte de flou)
    • sélectionner avec les 4 délimiteurs, la zone qui sera avec un flou variable, évidemment au delà de la première. Si vous sélectionnez au delà de l'image, il n'y aura qu'une simple dégradé de flou.
    • activer "Color and Light"
    • "Scope" élévée proche de 100 ou 100
    • "Merge File" : "Original Image"
    • "Merge with Original or Previous or Background" : "Normal" ou autre par exemple "Soft Light Photshop" - selon souhaits
      • Merge Background : 50 plus ou moins selon souhaits
      • Opacity : 50 plus ou moins selon souhaits
      • Contrast Threshold : selon souhaits
Doubleblur

7.11 RT-spot et calques

Lorsque vous créez un nouveau Spot, un "calque" est créé, c'est en réalité une copie de l'image précédente entière, même si le Spot est petit

Imaginons que l'utilisateur à créé 2 spots, on aboutit à :

  • calque N°1 : image originale non modifiée (celle qui est en "réserve") et qui peut servir pour "excluding spot"
  • calque N°2 : image copie de N°1 avec le Spot créé, par exemple la retouche d'une fleur à gauche de l'image
  • calque N°3 : image copie de n°2 avec un deuxième Spot créé, par exemple un portrait à droite de l'image


  1. Lorsqu'on fusionne N°2 et N°1 (Fusion du premier Spot avec "Original"), les modes de fusion répondent comme on s'y attend, par exemple si on active "mode difference", l'image dans la zone concernée de la fleur sera noire (si Scope est à 100)
  2. Si on fusionne N°3 et N°1 (Fusion du 2ème Spot avec "Original"), les modes de fusion laisseront apparaître l'image entière créée à l'occasion de la création du Spot N°1, donc le mode de fusion "difference" ne fera pas apparaître une image noire.
  3. Si on fusionne N°3 et N°2 (Fusion du 2ème Spot avec "Previous"),les modes de fusion laisseront apparaître l'image entière "originale", donc le mode de fusion "difference" ne fera pas apparaître une image noire.

Les mode de fusion sont sensibles aux paramètres de chaque RT-Spot, par exemple dans le cas de l'exemple N°1 ci-dessus, l'image noire ne sera possible que si Scope = 100

7.12 Algorithme complémentaire - Mask

Les 8 modules "Color and Light" , "Exposure", "Shadows Highlight","Vibrance", "CBDL", "Tone mapping", "Retinex" , ["Smooth and blur" + "Denoise"] (ces 2 derniers ont un masque commun) - provisoirement désactivé - ont la possibilité d'utiliser un masque, mais "retinex" est une exception aux informations ci-dessous.

  • Pour 4 modules : "Color and light", "Exposure", "Shadows highlight", "Smooth and Blur" ces masques peuvent être utilisés en mode inverse (avec des limitations)
  • Pour 2 modules : "Smooth and Blur" et "denoise", le masque est commun (provisoirement désactivé)
  • Pour 2 modules : "Tone mapping" et "Retinex", le masque peut être utilisé "avant" le traitement ou "après le traitement"

Vous pouvez utiliser un Laplacien de 2 façons (menu "Settings"):

  • Sans résolution de l'équation PDE (defaut) : dans ce cas le Laplacien réduira les artefact et va modifier le contraste local
  • Avec résolution de l'équation PDE : dans ce cas les inégalités de luminance du masque seront atténuées

A noter que selon le choix l'utilisation de "blend" sera inversée.

Vous pouvez agir sur la luminance de l'arrière plan des masques (menu settings), par défaut il est réglé à 10. A zéro, le masque traduit les réelles modifications, mais on peut moins percevoir les détails de structure.

7.12.1 Mask and modifications

Ce menu déroulant dispose de plusieurs choix, variables selon les outils

  • Show modifications without mask : montre l'aperçu des modifications - prend en compte les transitions
  • Show modifications with mask : montre l'aperçu des modifications si le masque est activé - prend en compte les transitions
  • Show mask : permet de visualiser l'aspect du masque avec l'action sur les courbes, filtres divers - ne prend pas en compte les transition et le deltaE principal, prend en compte le "Mask deltaE image" (Scope Mask deltaE image)
  • Show structure Spot : permet de visualiser l'effet sur la structure du curseur "Structure Spot" lorsqu'il est implanté

7.12.2 Ces masques visent 2 objectifs principaux:

  1. augmenter la sensibilité de détection et donc permettre une meilleure sélection des objets (objectif principal), sans modifier l'image, lorsque l'algorithme deltaE n'est pas suffisamment pertinent (rare).
  2. aboutir à des effets spéciaux en combinant l'image du masque et celle originale.

7.12.3 Fonctionnalités

7.12.3.1 Courbes LCH

L'image est modifiée avant le traitement (exception pour "Tone mapping" et "Retinex") par les algorithmes de "Color and Light", "Exposure", "Shadows Highlight", "Vibrance", "CBDL", "Tone mapping", "Smooth and Blur", "Retinex" et "Denoise" mais ces modifications sont prises en compte par les algorithmes de "locallab" que ce soit la détection de forme, les transitions, ... L'utilisateur dispose de 3 courbes qui sont au démarrage toutes positionnées à 1 (maximum) :

  • C=f(C) la chrominance varie en fonction de la chrominance, l'utilisateur peut ainsi diminuer la chroma pour améliorer la sélection. En mettant cette courbe proche de zéro (avec une petite valeur au maximum de C - pour activer la courbe -) va permettre en mode inverse de dé-saturer l'arrière plan
  • L=f(L) la luminance varie en fonction de la luminance, l'utilisateur peut ainsi diminuer la luminosité pour améliorer la sélection
  • L et C = f(H) la luminance et la chrominance varient en fonction de la teinte, l'utilisateur peut ainsi diminuer la luminosité et la chroma pour améliorer la sélection

Si l'utilisateur positionne les courbes près de l'ordonnée zéro, l'effet des masques sera inversé.

7.12.3.2 Structure

Un masque utilisant la structure de l'image (différenciation des zones sans contraste - ciels, aplats.. - et des zones avec contraste "habitations", "reliefs", ... -) peut être utilisé de 2 façons:

  • Structure mask (slider) avec la case à cocher "Structure mask as tool" non cochée : Dans ce cas, un masque faisant apparaître la structure sera généré même si aucune des 3 courbes n'est activée. Une action modérée sur le slider est recommandée !
  • Structure mask (slider) avec la case à cocher "Structure mask as tool" cochée : Dans ce cas, un masque faisant apparaître la structure sera généré après la mise en oeuvre de une ou plusieurs des 3 courbes. Ici, "Structure mask" se comporte comme les autres outils : gamma, slope, etc. Il permet de différencier l'action sur le masque selon la structure de l'image. Cette deuxième option est sensible à "Mask deltaE image" et le slider associé "Scope Mask deltaE image"
  • Structure mask est disponible pour les mask 1 (Blur and denoise" et mask 7 (Color and Light)
7.12.3.3 Blur

Un maque utilisant la création d'un flou à grand rayon (Mask Blur), permet de faire varier le contraste de l'image et/ou assombrir / éclaircir des parties d'images

  • Contrast threshold mask blur : permet de déterminer en fonction de la texture de l'image, les zones impactées ou non
  • Radius Mask blur: permet de faire varier le "rayon"du flou gaussien (0 à 500)
  • case à cocher FFTW : utilise la transformée de Fourier pour une meilleure qualité (augmentation du temps de traitement et des besoins en mémoire)

A noter que selon le "mode" (expert, confirmed, normal), cette fonction est ou non présente. De plus en mode "confirmed" absence de FFTW, et rayon limité à 100.

7.12.3.4 Radius et Laplacian Theshold

L'utilisation simultanée des 2 filtres est peu conseillée (cas sans résolution de l'équation PDE)

7.12.3.4.1 Radius

Un curseur "radius" - utilisant "GuideFilter" permet de diminuer les artefacts et adoucir les transitions.

7.12.3.4.2 Laplacian Threshold

Un curseur "Laplacian" permet une transformation du masque par application d'une convolution qui élimine les valeurs inférieures à Threshold.

  • Ceci permet de réduire les artefacts et le bruit, et modifier le contraste local (sans résolution de l'équation PDE)
  • Ou permet une modification de la luminance du masque en atténuant les écarts (avec PDE)
7.12.3.5 Gamma, Slope, Chroma, Blend, Shadows ou Highlights, Dynamic compression range

Vous pouvez modifier le masque - avec bien sûr l'incidence inverse sur l'image - à l'aide de 3 curseurs qui jouent:

  • sur la chroma en adaptant sa force à la valeur réelle rencontrée qui dépend de plusieurs facteurs dont la grandeur de l'espace de travail (sRGB, Prophoto, ...).
  • sur le gamma et la pente (même principe par exemple que le gamma sRGB) en agissant uniquement sur la luminance L*, avec une courbe sans discontinuité.
  • Blend permet de mélanger en plus ou en moins le masque avec l'image en cours
  • 2 masques "Color & light" Mask et "Smooth Blur and Denoise" Mask disposent d'un curseur "Shadow mask" ou "Highlight mask" qui permet un travail fin sur les ombres et les lumières du masque
  • le masque "Shadows Highlight - Tone equalizer", permet une action sur le masque à l'aide de l'algorithme "Dynamic Compression Range" qui peut agir soit sur les ombres, soit sur les lumières (Anchor) - cette fonction est désactivée.
7.12.3.6 Structure mask as tool (case à cocher "enable")

Un masque faisant apparaître la structure sera généré après la mise en oeuvre de une ou plusieurs des 3 courbes. Ici, "Structure mask" se comporte comme les autres outils : gamma, slope, etc. Il permet de différencier l'action sur le masque selon la structure de l'image. Cette deuxième option est sensible à "Mask deltaE image" et le slider associé "Scope Mask deltaE image"


7.12.3.7 Contrast curve, Wavelet local contrast, Hue curve
  • tous les masques sont dotés de la fonction "contrast curve"
  • 2 masques "Blur and Denoise" (provisoirement désactivé) et "Color and Light" sont dotés d'un contraste local fondé sur les "wavelets" avec choix du niveau
  • 1 masque "Color and Light" est doté de la fonction H=f(H) qui permet des retouches fine de la teinte, par exemple pour la peau
7.12.3.8 Quel usage pour les 7 possibilités d'action sur la luminance des masques et la couleur
  • Gamma et Slope : permet une transformation douce et sans artefacts du masque avec une action sur "L" très progressive sans aucune discontinuité
  • Contrast curve : peut être utilisée comme "Gamma et slope", mais son usage est une action ciblée sur certaines parties (en général les plus claires du masque) en utilisant une courbe excluant les parties sombres
  • Wavelet local contrast : permet de diminuer ou accroître l'action sur le niveau de détail souhaité du masque, en privilégiant l'action sur certaines zones de luminance (en général les plus claires)
  • Shadows mask (mask 1) permet un travail fin sur les ombres et les tons moyens - à utiliser de préférence avec "Mask deltaE image" activé
  • Highlights mask (mask 8) permet un travail fin sur les hautes lumières et les tons moyens
  • Dynamic Range Compression (mask 5) permet de compresser les lumières ou les ombres (désactivé)
  • Hue curve : permet la retouche fine de la couleur du masque, évidemment les seules couleurs qui peuvent être impactées sont celles qui apparaissent dans le masque
7.12.3.9 Case à cocher "Mask deltaE Image" et curseur "Scope Mask DeltaE image (menu Settings)

Ces 2 fonctionnalités permettent

  • pour chaque masque
  • pour les curseurs et courbes qui modifient l'action sur les masques après leur élaboration :
    • curseurs :"gamma mask" "Chroma mask" "slope mask" "Shadows mask" ou "Highlight mask"
    • courbes : "contrast curve mask" , "Mask levels contrast" (lorsque cette courbe est présente), "Hue curve" (lorsqu'elle est présente)
  • d'éviter une action sur la zone de sélection - celle où est présente le RT- spot
  • le plus "Scope" sera faible, plus l'action sera différenciée
  • cette fonctionnalité est désactivée en mode "Inverse"

7.12.4 Utilisation

Comment procéder, pour l'essentiel pour l'objectif n°1 ?

  • pour satisfaire l'objectif n°1 il est impératif de ne pas (ou peu) modifier la zone où se trouve le "spot". Le GUI permet de visualiser sur la courbe elle même la valeur de L, C ou H à éviter de modifier, c'est à l'utilisateur de positionner correctement le point des courbes qui ne sera pas modifié.Il suffit de positionner le sommet de la courbe à chacun de ces points (limite de la transition gris foncé, gris clair) selon le cas.
  • attention, la case à cocher "Recursive reference" peut interagir sur cette limite (gris foncé, gris clair) : si le masque concerne le module sur lequel on souhaite agir (par exemple "Exposure compensation" pour le module "exposure"),il est souhaitable, pour trouver la bonne valeur pour le masque de désactiver l'expander.
  • ensuite en examinant le masque, vous pouvez réduire très raisonnablement les valeurs de chroma, ou luma, selon le cas. Des valeurs de 0.8 à à.9 doivent être suffisante dans la majorité des cas
  • pour satisfaire l'objectif n°1, il est souhaitable que le(s) curseur(s) "blend" soi(en)t à zéro.

Pour l'objectif n°2, tout est fonction de ce que l'on veut faire, mais je recommande quand même d'appliquer le même processus que ci-dessus, sinon que les valeurs d'affaiblissement peuvent être plus importante. A noter que le masque utilisé dans n°2, sera aussi utilisé pour accroître la sélection.

  • pour satisfaire l'objectif n°2, il est souhaitable que les curseur "blend" ne soient pas à zéro: si vous réglez blend avec des valeurs négatives, l'image complémentaire au masque sera soustraite de l'image originale, et ajoutée avec des valeurs positives de "blend".

Plusieurs assistances sont proposées pour aider aux processus :

  • a) visualisation du masque dans tous les cas
  • b) visualisation des modifications sans le masque (pas en inverse)
  • c) visualisation des modifications avec le masque (pas en inverse)

et également pour l'action sur la structure, l’aperçu d'un masque de structure (pas en inverse). Il n'est - ceci peut paraître évident - pas possible d'utiliser plusieurs masques en même temps...mais une fois généré ils peuvent être utilisés ensemble

Vous pouvez changer l'aspect de la visualisation des modifications avec et sans le masque dans "Settings"

  • "Color preview selecion deltaE et intensity"
    • les valeurs positives du curseur ne modifient l’apparence des couleurs
    • les valeurs négatives du curseur ajoutent la composante "b" (de L* a* b*) et ainsi permettent une meilleure visualisation des changements de luminance.

A noter la consommation importante de mémoire liée à ces masques lors de la sélection de zones étendues. A noter également le côté peu intuitif des masques, les actions sur les masques se traduiront par un effet inversé sur l'image.

7.12.5 Utilisation isolée des masques

Chaque module équipé de "mask" peut être utilisé sans activer les commandes internes à chaque module. Par exemple:

  • "CBDL" qui est le premier module utilisable (après denoise), peut être utilisé uniquement pour les masques, sans utiliser les sliders...Ceci va permettre de modifier l'image au début du process; par exemple modifier le gamma de l'image!
  • "Color and Light" est le dernier module utilisable (juste avant "avoid color shift"), peut être utilisé uniquement pour les masques, sans utiliser les sliders ou les courbes. Ceci va permettre de modifier l'image à la fin du process.

Bien sûr, les 5 autres modules avec "mask" - Exposure - Shadows Highlight - Vibrance - Tone mapping - [Smooth and Blur - Denoise] peuvent aussi être utilisés seuls.

7.12.6 Utilisation de plusieurs masques

Pour chaque RT-spot et chaque outil (Tone mapping, Exposure, etc.) vous ne pouvez utiliser qu'un seul masque associé à cet outil, mais il est très facile d'en utiliser plusieurs.

Le masque suivant prendra en compte les résultats du précédent.

7.12.6.1 Comment utiliser plusieurs masques pour un même outil

C'est très simple, il suffit d'activer (expander) un autre outil équipé d'un masque, et de mettre en oeuvre le masque. Vous n'êtes pas obligé de mettre en oeuvre l'outil, par exemple vous pouvez vous servir du masque CBDL, sans aucune action CBDL (tous les curseurs à 1) Les masques agissent dans l'ordre indiqué par le numéro devant "masks and modifications"

  • Les masques suivants : CBDL, Exposure, Color and light, ShadowsHighlight, Vibrance, Smooth Blur & Denoise, peuvent être utilisés sans activer les outils conjoints.
  • Les masques suivants : Color and light, Smooth Blur & Denoise", ils permettent l'utilisation d'un "contraste local" fondé sur le niveau de wavelet, ainsi q'un ajustement "fin" de travail sur les ombres et les tons moyens et clair.
  • Le masque "Color and light" permet l'utilisation d'une courbe hue = f(hue).
  • Le masque "ShadowsHighlight Tone curve", permet de mettre en oeuvre "Dynamic range compression" (désactivé)
  • le masque Vibrance" est un peu particulier, car il n'y a pas d'action sur la luminance dans Vibrance (sinon pour le contrôle du gamut), les réponses en luminance seront donc très faibles

Bien sûr on peut combiner cela avec les actions "Merge file" et "Mask DeltaE image"

7.12.6.2 Comment utiliser plusieurs masques pour un même outil en dupliquant le RT-spot

Il suffit de dupliquer le RT-spot et d'ajuster sa position et ses dimensions. Cette action permet:

  • de prendre en compte les nouvelles valeurs des valeurs de référence (hue, Chroma, luminance)
  • de changer la zone d'action
  • de changer l'ordre des masques.
7.12.6.3 Utilisation d'un masque inverse et d'un masque normal

Vous pouvez combiner parmi les masques

  • utilisation normale d'un masque associé à un outil
  • utilisation d'un masque inverse avec un des autres masques possibles (toujours avec le même RT-spot ou un RT-spot dupliqué). Dans ce cas il faudra activer (expander) l'outil associé à inverse; Vous pouvez par exemple en utilisant"chroma mask" uniquement et inverse, rendre un fond quasiment gris. Attention si "Mask deltaE image" est activé, le fonctionnement en masque inverse n'en prendra pas compte.
  • vous pouvez pour tout outil doté d'un masque, transformer celui-ci en "mask inverse" en créant 2 Rt-spot: un premier étendu à toute l'image et un second "Exluding spot"

7.12.7 Cas spécifique de Retinex

Le module masque de Retinex ressemble aux autres mais:

  • il ne permet l'accès à l'objectif 1) "accroître les capacités de sélection" que en mode "normal" (pas d'utilisation de transmision map)
  • lorsque l'option "Use transmission map" est choisie, le comportement n'est plus "traditionnel":
    • mais va permettre une exploitation de "Retinex" exploitant au maximum les effets de contraste local. A noter que le système se comporte de la même manière pour les valeurs positives ou négatives de "blend"
    • avec "Use transmission map" la fonction d'aide indiquant graphiquement les valeurs "référence" 'hue", "Luma", "Chroma" sont totalement erronées...

Il ne permet pas d'utiliser le Laplacien avec résolution de l'équation PDE

7.13 Le fonctionnement en mode inverse

Lorsqu'il est proposé, le fonctionnement en mode inverse est simplifié, certaines fonctions ne sont pas implémentées (mask partiel, certaines courbes,...).

7.14 Simuler le fonctionnement en mode pleine image (similaire au "main menu")

Vous pouvez, aux différences de rendus des algorithmes - par exemple Exposure qui se comporte différemment entre "local" et "main" -, faire fonctionner "Local Adjustements" comme "main", pour cela choisissez :

  • Settings
    • Normal spot
    • Shape RT-spot area = Rectangle (de préférence)
    • Transition value = 100
    • positionnez le RT-spot de telle manière que les 4 délimiteurs soient en dehors du Preview
  • Module choisi (Color and Light, Exposure,......., Denoise)
    • Scope = ce que vous voulez, 100 si vous souhaitez simuler le mode "pleine image"

7.15 Avoid color shift

Cette case à cocher vise deux objectifs :

  • mettre les couleurs dans le gamut de l'espace de travail courant (working profile) en utilisant une colorimétrie relative ;
  • ajuster les couleurs à l'aide d'une correction "Munsell" - notamment les rouges-orangés et les bleus-pourpres, lorsque la saturation dans le domaine L*a*b* a évolué notablement.


7.16 Fast Fourier Transform

La transformé de Fourier - Fast Fourier Transform - sous sa forme "FFTW real DCT" est utilisée dans Rawtherapee et notamment dans "Local adjustements" sous 3 formes:

  • Créer un flou Gaussien "Blur"
  • Résoudre l'équation de Poisson PDE - suite à un Laplacien
  • Réduire le bruit

7.16.1 Flou Gaussien

Dans 2 modules de "Local Adjustements", une case à cocher "Use Fast Fourier" (FFT) a été ajoutée, elle permet d'utiliser la transformée rapide de Fourier, pour générer le flou (blur) nécessaire à Multi Scale Retinex (pas installé dans Retinex "pleine image")ou "Local contrast unsharp",

  • La formule utilisée pour le flou est la formule de Gauss qui s'applique après la transformée et avant la transformée inverse.
  • formule de Gauss G(x,y) = (1/2*PI*sigma) * exp(-(x^2 + y^2) / 2* sigma^2).
  • celle appliquée est sa version "Fourier" G(x,y) = exp((-sigma^2)*(PI * x^2 + PI * y^2))

Cette formule par définition est exacte quelque soit le rayon sigma.

A noter pour le flou, la différence de rendu avec la fonction utilisée dans Rawtherapee qui utilise une série de formules approximatives, FFT est quasiment exacte, donc de meilleure qualité. Pour Retinex MultiScale il est possible (pas recommandé) d'utiliser la variable Fftwsigma=true dans "options". Si vous basculez sur "false", l'algorithme FFT sera modifié pour essayer de s'approcher de la formule "ancienne".

7.16.2 Résoudre l'équation de Poisson PDE

Sont concernés par cette utilisation :

  • Original Retinex pour atténuer les différences de luminance notamment sur les portraits
  • Exposure avec 2 modules : a) PDE Ipol Contrast atenuator; b) PDE Fatal - Dynamic Range Compression (similaire à Dynamic Range Compression "pleine Image")

7.16.3 Réduire le bruit

Dans "Local Adjustements" la FFT vient en complément des ondelettes pour réduire le bruit de Luminance et de chrominance (non installé pour Chrominance dans Denoise "pleine image)


7.16.4 Optimisation FFT

La FFT (Fast Fourier Transform) a un temps de traitement qui ne dépend que la surface a traiter et bien sûr du nombre d'appels (exemple scale Retinex), l'application de la fonction de Gauss, est quasi instantanée et indépendante du rayon. A noter l'optimisation de la FFT lorsque les dimensions (H, W) de la zone correspondent à la décomposition en facteurs premiers et uniquement ceux-ci. 2^n, 3^p, 5^q, 7^r, 11^a, 13^b (avec a + b = 0 ou 1)

  • une table utilisée par le code permet de sélectionner les dimensions appropriées : elle est actuellement utilisable jusqu'à une dimension (L ou H) de 18144 pixels
  • Cette optimisation n'est pas effective dans le Preview.
  • Le gain de temps peut varier d'un facteur 2 à 10: 10 si les dimensions du RT-spot sont de type 2^n, 2 si on a la combinaison maximale des facteurs premiers. De ce fait FFTW peut passer plus de temps pour un "petit" spot que pour un "grand"
  • A noter que si vous souhaitez sélectionner toute l'image, 1 délimiteur Horizontal et 1 vertical doit être légèrement à l'intérieur de l'image.

A noter que pour "denoise" l'optimisation n'esr pas rélaisée par ajustement de la taille du RT-spot, mais par utilisation de "Tiles"

7.16.5 Précision des calculs

La version FFTW est "float", après plusieurs essais cette précision semble suffisante, les erreurs après une transformée suivie d'une transformée inverse, concernent sur une image entière quelques pixels isolés avec des différences inférieures à 1/1000ème, sur la globalité de l'image pas de différences mesurables.

Il doit être possible - si la nécessité s'impose - d'installer dans GitHub - la version "double" de FFTW

8 Quelques particularités du mode local (par rapport à Lab adjustements)

Voici quelques informations qui peuvent intéresser l'utilisateur. Ces informations sont souvent des particularités du mode local

8.1 Color and Light

  • Les algorithmes utilisés pour la luminance et le contraste sont différents de ceux utilisés par "Lab adjustements", ce qui peut amener quelques différences de rendu.
Original
Avec Color correction grid
  • Vous disposez d'une fonction "Color correction grid" qui peut être selon le cas :

Deux méthodes sont possibles: Color Toning et Direct

  • Color Toning
  1. Dans ce cas, la luminance est prise en compte dans la variation de la chroma
  2. l'équivalent d'une fonction H=f(H) si le "point blanc" de grid reste à zéro et si vous ne faites varier que le "point noir"
  3. l’équivalent d'un "Color toning" si vous faites varier les 2 points.
  • Direct
  1. Dans ce cas, il y a action directe sur la chroma


Vous pouvez agir sur l'effet souhaité avec "strength", mais aussi avec les autres fonctions notamment "scope" qui permet de délimiter l'action, par exemple en isolant une couleur parmi d'autres.
















  • Le mode inverse, est maintenant doté de la fonction "scope", il peut servir pour l'essentiel, à réaliser des dégradés (gradient), simulation de vignettage, ou de cadres dégradés, ou générer des effets spéciaux. Dans le cas de cadres dégradés, si vous sélectionnez -100 pour "lightness", et réduisez la chrominance, et sélectionnez une valeur de "scope" supérieure à 75, la "bordure" sera noire.


8.1.1 Courbes

  • Une courbe L=f(L) et une C=f(C) permet de moduler la luminance ou la chrominance pour chaque RT-spot (spot de contrôle) en fonction de la luminance ou de la chrominance.
  • Une courbe L=f(H) permet de moduler la luminance pour chaque RT-spot en fonction de la teinte.
  • Une courbe H=f(H) permet de moduler la teinte pour chaque RT-spot en fonction de la teinte.
  • Une courbe L=f(C) permet de moduler la luminance pour chaque RT-spot en fonction de la chrominance.
  • Une courbe C=f(L) permet de moduler la chrominance pour chaque RT-spot en fonction de la luminance.

Pour les rendre actives, il est nécessaire d'activer la combobox "Curves type".

Color and Light dispose de deux améliorations : mask et structure.

En mode "inverse" les courbes L=f(H) et H=f(H), L=f(C), C=f(L) ne sont pas implémentées ainsi que l’aperçu des modifications.

  • RGB Tone curves
    • En mode RGB vous disposez de 4 choix : Standard, Weighted standard, Luminance, Film Like
    • vous disposez d'une case à cocher "Special use of RGB curves" : de part la conception de "Local adjustements", l'algorithme va comparer le résultat de RGB tonecurce avec l'original, ce qui dans certains cas peut fausser les attentes de l'utilisateur, notamment si on inverse la courbe par exemple pour créer un effet "négatif". La case à cocher permet d'isoler le travail RGB tonecurve, supprimant toutes les autres actions: "Scope", masques, curseurs...à l'exception des transitions. Si vous souhaitez utiliser cette image en la travaillant il suffit de créer un nouveau RT-spot au même endroit.

8.2 Exposure

Ce module "ressemble" à celui en mode global RGB, mais :

  • il fonctionne entièrement en mode L*a*b*, d'où des différences de rendu;
  • il n'a pas les curseurs "lightness, chroma et contraste" dont les fonctions sont déjà présentes dans "Color and Light"
  • un curseur "chroma compensation" est une particularité du mode L*a*b* : il permet d'éviter une variation de saturation apparente - le réglage par défaut devrait convenir dans une majorité de cas.
  • vous avez le choix entre l'algorithme standard et un "Poisson discrete equation' (PDE)

8.2.1 Algorithmes PDE

Ces algorithmes sont de 2 types:

8.2.2 Ipol - Contrast attenuator (modifié par jacques)

  • Ce 2eme algorithme qui est un "atténuateur de contraste" (ce n'est pas un "Dynamic Range Compression") PDE possède 3 curseurs 1 menu :
    • Laplacian threshold qui réalise une convolution ignorant les valeurs inférieures au seuil
    • Linearity qui permet d’accroître la luminance pour les valeurs inférieures à la moyenne
    • Balance PDE qui équilibre le résultat en mélangeant le résulta PDE à standard (1 = 100% PDE)
    • Gamma qui modifie la répartition de la Luminance avant et après le Laplacien
    • le menu permet de choisir de débruiter ou non avant le Laplacien : la méthode utilisée (median) est assez destructrice, il est préférable d'utiliser le module "denoise", soit "denoise" agit avant (par défaut), soit après si on crée un RT-spot supplémentaire.

N'hésitez pas à modifier les réglages "traditionnels" utilisés dans Exposure :

  • valeurs négatives de 'black'
  • gamma inférieur à 1
  • réduction des valeurs habituelles de "Exposure compensation"
  • action sur Shadows
  • etc.

PDE résoud l'équation de Poisson (Laplacien + Fourier) après une transformée de Fourier : il apporte des résultats différentes qui adoucissent l'image et atténuent le bruit.

8.2.3 Fattal Tone mapping - Compress Dynamic Range

Légèrement différent de celui du menu principal avec 3 curseurs "standard", Amount, Detail, Anchor, plus un curseur "Details levels" (sensible à la taille du RT-spot). Il permet notamment:

  • d'accroître la compression dynamique des images.

8.2.4 Autres

  • un curseur "shadow" qui utilise le même algorithme que "Shadows-Highlight", mais limité à shadows et avec les paramètres par défaut : il utilise pour pondérer l'action en fonction de la luminance, le même curseur que celui des "shadows compression" , en effet soit ils sont exclusifs (black ou shadows), soit ils vont dans le même sens. Ce curseur supplémentaire "simplifie" l’usage pour l'utilisateur!
  • il y a une seule courbe "contraste", similaire à celle de L=F(L) présente dans "Color and Light". Il est évident que le rendu de cette courbe est différent de "Tonecurve" qui agit en mode RGB. Vous pouvez si vous le souhaitez activer les 2 courbes L=f(L) dans "Color and Light" et "Exposure"
  • ne pas hésiter à utiliser modérément "highlight compression" qui améliorera la sélection.

Exposure dispose de deux améliorations "mask" (partiel en inverse) et "structure" (pas en inverse).

Il peut servir de gradient (graduated filter), dans ce cas choisir des valeurs de "scope" élevées.

Shadows-Highlight est une alternative possible, notamment si le RT-spot est dans une zone d'ombre importante.

  • Remarque : éviter de placer le Spot dans des parties à très faible luminance, les résultats peuvent être inattendus

8.3 Shadows Highlight - Tone Equalizer - TRC

Seul le mode "Lab" est disponible.

Cet algorithme associé à la notion de RT-spot et de "scope" est une alternative à Exposure, notamment lorsque le Rt-spot est dans une zone d'ombre où la luminance est très faible.

Il est doté d'un module "inverse" et de masques (partiel en inverse).

Il peut servir de gradient (graduated filter), dans ce cas choisir des valeurs de "scope" élevées.

Dans les cas d'importants débouchage des ombres, l'utilisation de "Local denoise" peut être nécessaire.

8.3.1 Tone equalizer et Tone Response Curve (TRC)

Ce module (origine Darktable - transformé pour Rawtherapee par Alberto Griggio) permet une retouche progressive des Tons en fonction de l'exposition (en EV)

  • 5 curseurs du plus "sombre" au plus "clair", plus un curseur "detail" permettent un travail fin sur la luminance, par exemple ne déboucher que les ombres très prononcée -16 ou -18EV
8.3.1.1 TRC

Avec ce module vous pouvez retoucher le gamma et la pente (slope) de l'image:

  • j'ai mis une TRC plutôt qu'un simple gamma / slope pour réduire les artefacts et avoir une meilleure restitution des couleurs
  • par défaut le réglage : Gamma 2.4 et Slope 12.92 (gamma sRGB) correspond à celui mis en oeuvre en sortie par défaut dans Rawtherapee (profil d'écran, ou sRGB). Rappel tout le traitement de Rawtherapee est réalisé avec un gamma de 1.
  • Essayez d'autres réglages qui donnent un image semblable mais agissent différemment sur les ombres et les lumières
    • BT709 : gamma 2.22 slope 4.5
    • Lab : gamma 3.0 slope 9.02
  • Ce module permet d'agir sur:
    • hautes lumières avec Gamma
    • basses lumières avec Slope

8.4 Vibrance and Warm & cool

Vibrance : Module similaire à celui du menu principal. Possibilité de masques.

8.4.1 Warm - Cool

Un curseur permet :

  • de faire varier la "chaleur" de la zone sélectionnée.
  • de réduire ou supprimer certains artefacts de couleurs, par exemple dus à de multiples illuminants,...

A noter que l'algorithme ne correspond pas à une balance des blancs - même si cela en a l'apparence. L'algorithme utilise une partie de CIECAM02, le processus CAT02 qui est probablement la meilleure adaptation chromatique disponible. Par rapport à la référence D50, lorsque vous souhaitez réchauffer l'image, le curseur va au contraire abaisser la température des "viewings conditions", et bien sûr l'accroître lorsque vous souhaitez "refroidir" la zone concernée. A noter que vous pouvez obtenir un résultat similaire pour l'image entière en utilisant le module CIECAM02, avec :

  • "Scene conditions" : WP model ==> free temp + green + cat02, temperature = 5000K, Surround = average, CAT02 adpatation = 100, Yb=18, Scene absolute luminance = 400
  • aucun réglage dans "Image adjustements"
  • "Viewing conditions" : CAT02 adaptation = 100, Viewing absolute luminance = 400, Surround = average, Yb=18, et bien sûr réglage de la température souhaitée.

8.5 Local contrast & Wavelet Pyramid

Vous disposez de 2 options

  1. Unsharp mask : l'algorithme est similaire à celui du menu principal
  2. Wavelet : l'algorithme correspond à une utilisation - simplifiée - du module wavelet, combinant un algo proche de "Final contrast local" et "contraste pour l'image résiduelle", plus un "expander" "Wavelet pyramid" abritant divers outils, permettant contraste localisé, merge d'images, Graduated Filter local contrast, Compression Dynamique de niveaux (par wavelet ou par Laplacien), floutage de niveaux, et/ou d'image résiduelle

8.5.1 Unsharp mask

Rendu différent du fait de la position dans le processus.

Une case à cocher "Use Fast Fourier" a été ajoutée, elle permet d'utiliser la transformée rapide de Fourier, pour générer le flou (blur) nécessaire à "Local contrast"

  • La formule utilisée est la formule de Gauss qui s'applique après la transformée et avant la transformée inverse.
  • formule de Gauss G(x,y) = (1/2*PI*sigma) * exp(-(x2 + y2) / 2* sigma2).
  • version adaptée à Fourier : G(x,y) = exp((-sigma)*(PI * x2 + PI * y2))

Cette formule par définition est exacte quelque soit le rayon sigma.

A noter la différence de rendu avec la fonction utilisée dans Rawtherapee qui utilise une série de formules approximatives.

La FFT (Fast Fourier Transform) a un temps de traitement qui ne dépend que la surface a traiter, l'application de la fonction de Gauss, est quasi instantanée et indépendante du rayon. A noter l'optimisation de la FFT lorsque les dimensions (H, W) de la zone correspondent à la décomposition en facteurs premiers et uniquement ceux-ci. 2^n, 3^p, 5^q, 7^r, 11^a, 13^b (avec a + b = 0 ou 1).

8.5.2 Wavelet Pyramid

Vous disposez:

  • d'une courbe "Local contraste luminance" qui agit sur le contraste, attention on n'agit pas directement sur la luminance mais sur les décompositions. Cette première courbe prend en compte la luminance de l'image non décomposée et les niveaux de décomposition de 0 à 9 (les hauts niveaux ne sont possibles que si la taille du RT-Spot le permet et que les dimensions du "Preview" sont suffisantes).
  • d'un sélecteur de "level" (niveau) avec seuil qui permet de sélectionner une plage de niveaux - l'algorithme réduit automatiquement le niveau si l'espace disponible (taille du spot - ou dimension du preview) est insuffisante : au niveau 9, il faut au minimum 1024 pixels, au niveau 8 512, au niveau 7 256, au niveau 6 128, au niveau 5 64, au niveau 4 32, au niveau 3 16, au niveau 2 8, au niveau 1 4, au niveau 0 2
  • cette courbe, plus le sélecteur de niveaux va permettre de modifier le micro-contraste en fonction de la luminance, par exemple renforcer ce contraste dans les moyennes lumières, abaisser le contraste dans les ombres. Bien sûr, si nécessaire vous pouvez ajouter un autre RT-spot avec d'autres réglages...
  • un curseur qui agit sur le contraste de l'image résiduelle
  • un curseur qui agit sur la saturation (chroma) de l'image résiduelle
  • 4 curseurs qui permettent d'agir sur sahdows/highlight de l'image résiduelle, avec la possibilité d'entrer des valeurs négatives.
  • Deux "expander" "Wavelet Pyramid" regroupant:
8.5.2.1 "Clarity" & "Sharp Mask" et "Blend & Soft Images"
  • c'est le sélecteur de niveaux qui permet de choisir entre "Clarity" et "Sharp mask", pour les valeurs inférieures ou égales à 4 "Sharp Mask", pour 5 et au dessus "Clarity"
  • "Merge Luma" permet de sélectionner l'intensité de l'effet recherché sur la luminance.
  • "Merge chroma" permet de sélectionner l'intensité de l'effet recherché sur la chroma.
  • "Merge only with original image", empêche de mélanger l'ensemble des actions "wavelet pyramid" et préserve ainsi la possibilité de "Clarity" et "Sharp mask", sans interférences
  • attention, "Merge Luma" et "Merge chroma", mélangent l'ensemble du processus "wavelet", qui peut se limiter à Clarity (voir ci-dessus).
8.5.2.1.1 Soft radius
  • un slider "Soft radius" (algorithme GuidedFilter) permet de réduire les halos et les irrégularités aussi bien pour Clarity et Sharp Mask que pour l'ensemble des processus de wavelet pyramid. Pour désactiver, mettre à zéro
8.5.2.2 Graduated filter Local contrast
  • permet de faire varier le contraste local en fonction d'un gradient souhaité et d'un angle. Ce qui est pris en compte est la variation du signal "luminance" (et non la luminance)
8.5.2.3 Edge sharpness

Ce module comporte les mêmes réglages et finalités que celui du module principal dans "main wavelet" Il vise à cibler l'action du contraste local sur les bords et utilise les mêmes réglages

Bien sûr il bénéficie en plus des particularités de "Local adjustements" (scope, transition, selections multiples,...)

8.5.2.4 Blur Levels
  • "Blur residual" : permet de flouter l'image résiduelle, essayez avec des valeurs différentes du sélecteur de niveaux. Les valeurs intermédiares du sélecteur (Top right, Bottom right) peuvent amener des résultats curieux.
  • "Blur levels" : permet de flouter n'importe quel niveau ou plage de niveaux. L'abscisse du graphique représente le "level" de la décomposition en ondelettes. La partie gauche correspond aux faibles valeurs 2, 4, 8 pixels. Le curseur supérieur permet de fixer le maximum de flou, quelque soit les positions du sélecteur de niveaux. Chroma levels agit en pourcentage en plus ou en moins de la luminance.
8.5.2.5 Contrast by levels
  • est le pendant de "Contrast By Details Levels", mais aussi du module "contrast" du wavelet principal. Là encore la courbe représente en abscisse les niveaux de décomposition, et en ordonnée l'amplification ou la réduction du signal.
  • "Sigma" permet de choisir l'étendue de la zone impactée, autour de la valeur moyenne du signal.
  • "Offset" : déplace l'action centrale du système vers les basses ou hautes luminances
  • "Chroma levels" : agit sur les composantes "a" et "b" de L*a*b* en pourcentage d'action de la luminance.

Avec ce module, vous pouvez - combiné ou non avec la courbe "local contraste luminance renforcer ou atténuer des détails - contraste apparent

8.5.2.6 Directional Contrast

Vous pouvez opérer un ton mapping avec ce module. Il agit sur la différence entre les 3 directions de décomposition : horizontale, verticale et diagonale Le processus joue sur l'écart entre diagonal et le coupe horizontal / vertical. Ceci permet d'agir sur l'effet de bord (edge). La courbe agit en fonction de la luminance. Damper permet de contrôler l'action au plus proche des contrastes moyens , en réduisant l'action sur les faibles et fort contrastes. Accroître "Damper' va augmenter l'action en dehors des contrastes moyens. "Delta balance", permet d'agir selon la valeur positive ou négative, plutôt sur les niveaux élevés (levels) ou les niveaux faibles.

8.5.2.7 Levels dynamic wavelet range (un)compression

Ce module ne fait intervenir que l'outil "wavelet" avec une compression qui peut toucher chaque niveau de décomposition et l'image résiduelle. L’atténuation des artefacts dus à la recomposition est assuré par un "Guided Filter" (voir ci-dessous).

  • Un curseur "Balance Threshold" (défaut 1.4) permet un équilibrage de l'action, autorisant dans certains cas aux ombres d'être débouchées
  • Les valeurs négatives assurent la compression des données et donnent un rendu "Tone mapping", différent des opérateurs habituels (Mantiuk, Fattal...); il sera plus sensible - par conception - aux différents niveaux de contraste local, et moins sensible pour traiter les aplats.
  • Les valeurs positives servent à réduire le contraste apparent et permettent des effets similaires à "Retinex PDE" (Original Retinex). Ils sont une alternative à "dodge and burn"
  • il est recommandé, pour réduire les artefacts, d'utiliser si nécessaire "Clarity and Sharp mask - Blend & Soft images" en ajustant la valeur de "Soft radius" qui est à 1 par défaut (faible valeur convenant dans une majorité de cas)
8.5.2.8 Commentaire
  • n'oubliez pas que vous pouvez utiliser "scope" pour cibler l'action et/ou "excluding spot" pour annuler une action sur une zone choisie, notamment avec "Levels dynamic Range Compression" pour annuler des ombres trop prononcées.
8.5.2.9 Importance de Damper

Pour la quasi totalité des algorithmes "wavelet pyramid", la prise en compte pour chaque niveau de la moyenne, de l'écart type, du maximum, permet de traiter la décomposition d'une manière non linéaire afin d'éviter les artefacts. Les valeurs de micro-contraste proche de la moyenne subissent une amplification plus importante que les basses et hautes valeurs. "Damper" - agit sur l'écart type, il est quelque fois associé à "Offset". L'accroissement de "Damper", va accroître les effets dans les basses et hautes valeurs de micro-contraste. Offset va décaler l'action selon son sens vers les hauts ou les bas micro-contrastes.

8.6 Tone Mapping

  • Ajout d'un slider "saturation" (formule de Mantiuk quelquefois insuffisante)
  • Strength est renommé en "Compression strength" - sa vraie fonction.
  • Gamma est étendu de 40 jusque 400
  • Changement de Iterates de 5 à Edge stopping * 15 (il faudrait faire la même chose au niveau algo principal)
  • ajout d'une "checkbox" : "Normalize luminance". Dans le cas activé, l'image finale a la même moyenne et la même variance que l'image initiale.
  • Mask


Tone-Mapping associé à "scope" permet de réaliser - entre autres -une fonction clarté (clarity), limitée à une zone d'action.

8.7 Soft Light and Original Retinex

Soft Light est identique à celui du menu principal

8.7.1 Original Retinex

Après essais, j'ai tenu à ajouter - exclusivement en mode local, l'algorithme original de Retinex. Cet algorithme est différent de ceux utilisés par ailleurs, y compris dans Rawtherapee. Il essaie de traduire la perception de l’œil lorsque il y a des ombres et des variations de luminance; perception de l’œil qu'un capteur photographique a du mal à rendre. Par exemple pour un portrait au flash ou en lumière forte le visage verra souvent apparaître des zones ombre ou lumineuse trop accentuées - qu'on pallie quelquefois avec des fonctions telles "dodge" and "burn"

Il peut dans certains cas remplacer cette fonction "dodge" and "burn" qui indiquent avec une brosse les endroits à assombrir ou éclaircir. Dans le cas de ce Retinex original PDE cette opération est automatique.

Je me suis servi du code trouvé sur "Ipol" https://www.ipol.im/pub/art/2011/lmps_rpe/ que j'ai modifié et adapté à Rawtherapee et au "contrôle local"

Cet algorithme complexe se décompose en plusieurs étapes:

  • lecture de l'image
  • utilisation d'un Laplacien discret avec seuil qui permet de déterminer l'intensité du Laplacien : les valeurs de "strength" aux environs de 70 amènent un "threshold" interne du Laplacien aux environs de "4" (référence habituelle des transformées de Laplace). Ce Laplacien va éliminer les petites variations de luminance inférieures au "threshold"
  • Le curseur "Laplace threshold deltaE" permet une différenciation du seuil du Laplacien selon le deltaE. Sous la valeur sélectionnée un Laplacien "plein effet" est choisi, au dessus de la valeur un 2ème Laplacien 60% plus faible est combiné avec le premier. Cette action est différente de celle de "scope" qui réduit l'action mais globalement. Ceci permet de mieux séparer l'avant-plan de l'arrière plan.
  • création d'une transformée de Fourrier - 2 dimensions (DCT Discrete Cosinus Transform)
  • résolution de l'équation de Poisson (PDE) pour "équilibrer" le système
  • transformée inverse de Fourrier - 2 dimensions
  • normalisation de la luminance par rapport à l'image d'origine : même moyenne et même écart-type.

Vous pouvez avoir un aperçu du processus avec le menu "Show process Fourier" qui permet de voir les différentes étapes;

  1. création du Laplacien variable (1ère étape)
  2. transformée de Fourier (DCT : discrete cosinus transform) de ce Laplacien
  3. résolution de l'équation de Poisson (PDE : Poisson discrete equation) sous la décomposition de Fourier : notez la relative proximité de cette image (sous sa forme Fourier) et celle du Laplacien
  4. transformée inverse - non visible dans cet aperçu... mais vous avez le résultat final!
  5. normalisation de la luminance (ici "absence de")

A tester, notamment dans les portraits...

8.8 Retinex

8.8.1 Avertissement important

Retinex exige de sévères conditions pour fonctionner de manière optimale. Il est indispensable d'avoir l'étendue nécessaire pour mettre en oeuvre les très importants rayons de flou gaussien. L'architecture de Rawtherapee ne permet pas dans le "preview" d'avoir dans tous les cas les conditions qui permettent cette mise en oeuvre. En conséquence il y aura des différences entre l’aperçu à l'écran et la sortie "TIF ou JPG". Ces différences sont d'autant plus importantes que:

  • le spot est de petite taille;
  • les valeurs de "scale" sont élevées;
  • "radius" est important.
  • "chroma" est utilisé au delà de 40

L'algorithme "pleine image" n'est pas soumis à ces restrictions !

De plus la quantité de ressources consommées, mémoire, temps de traitement augmente avec :

  • la taille du spot
  • "radius" élevé
  • "scale" élevé
  • "chroma" est utilisé au delà de 40
  • utilisation de masques
  • utilisation de FFTW

On peut facilement atteindre des valeurs de 6 ou 8 GB de mémoire consommée ! Par exemple une image de D850 : 8280*5512 - Retinex : spot au delà des limites de l'image, Radius = 500, Scale = 10, pas de masques, aboutit à plus de 9GB nécessaires !!

8.8.2 Fast Fourier Transform

Une case à cocher "Use Fast Fourier" a été ajoutée, elle permet d'utiliser la transformée rapide de Fourier, pour générer le flou (blur) nécessaire à Multi Scale Retinex. Elle s'accompagne d'un accroissement notable du temps de traitement, mais d'un gain en qualité pour les grands rayons

8.8.3 Fonctionnalités

A compter de septembre 2019, j'ai apporté des modifications

  • à l'interface GUI;
  • ajouté un curseur à Dehaze (depth), alors que auparavant il était calculé à partir des paramètres Retinex
  • ajouté une cas à cocher pour "Dehaze" "luminance only".
  • ajouté une case à cocher pour choisir entre mode "linéaire" qui me semble approprié pour travailler sur le contraste et mode "logarithm" plus approprié pour réduire la brume, mais qui permet aussi des effets sur le contraste local plus importants, mais "logarithm" peut apporter ou accroître un effet de halo.
  • ajouté une courbe "Transmission Map" qui permet d'agir en interne sur la Transmission et réduire les artefacts
  • ajouté l'affichage des données liées à Transmission map et aux données reconstituées
  • ajouté un curseur "Clip Restored Data" qui permet d'ajuster - conjointement avec Threshold" et aussi "Offset" les valeurs affichées de Transmission Map.
  • ajouté un curseur "Reduce artifact deltaE" qui agit sur les données juste après les actions sur "transmission map"
  • changé les paramètres par défaut
  • séparé (au niveau du GUI et en partie au niveau de l'algorithme) la place du curseur Dehaze


Le nombre de réglages est différent, par rapport au mode standard. D'autre part, "Retinex local" agit en fin de processus contrairement au mode standard qui est au début du processus Raw. Vous disposez en plus du module "raw" Retinex pleine image

  • un curseur "Chroma" qui permet d'agir sur la couleur en plus de la luminance : ce curseur n'agit pas sur la saturation (ou partiellement), mais agit sur "C" (LCH) de la même manière que sur "L", la luminance. Afin de réduire les besoins en ressources (mémoire, temps de traitement), jusque Chroma = 40, Retinex chroma n'est pas appliqué, mais seulement un ajustement de la chromaticité "C" (saturation). A partir de Chroma=40 , Retinex est appliqué.
  • un curseur "dehaze" qui utilise l'algorithme dehaze pleine image. La combinaison des 2 algorithmes de réduction du voile atmosphérique (Retinex et Dehaze) permet une résolution élevée du traitement du voile atmosphérique, chacun des algorithmes ayant ses points forts - en particulier Retinex permet de différencier avant et arrière plan et Dehaze est globalement plus facile et pertinent dans l'action.
  • Par défaut "dehaze" est en mode L*a*b*, sauf si vous cochez "Luminance only"

L'algorithme "Retinex" n'est utilisé que si "Strength Retinex" est supérieur à 0.2

  • "Si vous choisissez scale=1, l'algorithme "Retinex" est partiellement court-circuité et le process se comporte comme "local contrast" mais avec des valeurs de réglages nettement plus importants - certaines fonctionnalités ont disparues ou changées (masques, Tone mapping...), d'autres ont des réglages différents (radius, variance, Threshold).
  • "Darkness" et "Lightness" sont sans effet lorsque la valeur "1" est choisie. Dans les autres cas, la dernière étape de "Multiple scale Retinex" se voit appliquée un algorithme proche de "local contrast", ces 2 curseurs, associés à "Strength" vont permettre de jouer en amont sur le contraste local.
  • les autres sélections possibles : "Méthode : low, uniform, high", "Strength", "Radius", "Threshold", "Contrast", ont un principe similaire à ceux du module principal, même si certains réglages et effets induits sont un peu différents.
  • ajout d'une "checkbox" : "Normalize luminance". Dans le cas activé, l'image finale a la même moyenne et la même variance que l'image initiale.

Possibilité de "masques" dont le fonctionnement est globalement similaire aux autres masques, mais qui a ses particularités - notamment d'être incorporé au processus Retinex avec la possibilité, soit d'être élaborés juste au début du traitement, soit à la fin prenant en compte "transmission map"

Par exemple pour traiter une image fortement brumeuse

  • en première étape agir dans le menu principal avec la fonction "dehaze", dans certains cas l'arrière plan ne sera pas ou peu impacté et restera brumeux
  • puis sélectionner "locallab" et "Retinex", positionner le spot dans la zone brumeuse puis
    • agir sur "dehaze"
    • puis généralement régler "radius" avec une valeur élevée (supérieure à 100 ou 150, mais des valeurs inférieures peuvent convenir)
    • régler généralement "variance" (contraste) avec une valeur faible (inférieure à 100, mais des valeurs supérieures peuvent convenir)
    • régler scale sur 3 ou plus. Plus les valeurs seront élevées, plus "variance" pourra être élevée et réduire ainsi les artefacts.
    • agir sur "scope", strength et chroma pour obtenir l'effet souhaité.

Les résultats sont la plupart du temps assez imprédictibles, par exemple certaines images seront peu sensibles au curseur "Threshold", d'autres très sensibles... Mais globalement ce module à deux usages essentiels - avec des réglages différents :

  • traiter les images brumeuses
  • réaliser un contraste local avec des valeurs importantes, avec possibilité de simuler "Clarity"...
8.8.3.1 Maîtriser les artefacts et le halo

Retinex est très performant, mais : a) complexe, b) il peut générer des artefacts notamment aux zones de transition de luminance, c) il peut généralement produire du halo

Pour réduire artefacts et halos, une fois les réglages de base choisis (Radius, variance, scale, darkness, transmission gain...et strength)

  • Utiliser le tableau de bord des données "Transmission map"
  • agir sur "Clip Restored datas", "Offset", ainsi que sur "Threshold" pour obtenir des valeurs de "Restored datas" Min et Max proches respectivement de 0 et 32768. Attention d'autres valeurs peuvent convenir, mais il est important que les ordres de grandeurs soient respectées, par exemple éviter des valeurs telles que Min = -25000 et Max = 90000
  • si les artefacts persistent, agir sur la courbe "Transmission map" et abaisser la partie proche du milieu de l'abscisse (qui correspond à la moyenne des données), vous pouvez également essayer de modifier les parties Max et min de l'abscisse (peut être en rehaussant min et abaissant max)
  • vous pouvez aussi agir sur la courbe "Transmission gain"
  • vous pouvez également agir sur "Reduce artefacts deltaE" en accroissant la valeur par défaut (vous pouvez également agir sur Scope)
  • vous pouvez déplacer le Rt-spot pour changer les valeurs de référence
  • bien sûr vous pouvez modifier les réglages de base et recommencer la démarche !
  • vous pouvez vous aider d'un masque notamment sur la luminance en privilégiant le mode "use transmission map" et agir sur les paramètres de "fusion" (Blend, radius, etc.)

Certes c'est complexe, mais les images obtenues notamment pour travailler sur le contraste local peuvent être très belles.

8.9 Sharpening

Seul le mode "RL deconvolution" est proposé, vous devez travailler en mode 1:1 (zoom 100%) .

8.10 Contrast By Detail Levels

  • zone minimum d'action : 64x64 pixels - mais vous pouvez utiliser conjointement les propriétés de "Transition" pour réduire la zone d'action.
  • à utiliser de préférence en mode 1:1 (zoom 100%)
  • pas de curseurs pour la gestion de la peau; le système utilisé par les RT-spot le remplace.
  • ajout d'un curseur pour la chroma
  • ajout de "image résiduelle" avec 2 possibilités - "Clarity" - et contraste

Masque en mode normal.

Cet algorithme permet plusieurs améliorations "locales"

  • par exemple réduire les défauts de la peau
  • accroître les perspectives et le relief sur des zones de couleurs et de structure (comme le wavelet), mais en limitant l'action (par scope) à des zones délimitées.
  • retirer des défauts (tâches étendues grises ou de couleurs) sur le capteur

Rappel - si la zone sélectionnée est grande et comprends plusieurs objets similaires en "teinte", "chroma", luma" et 'contrast", l'algorithme ne sélectionnera que celles-ci, laissant le reste de l'image inchangée.

8.11 Smooth Blur and Noise

Vous avez le choix entre 3 méthodes:

  1. Gaussian Blur -Noise - grain : un filtre gaussien est appliqué (vous pouvez choisr d'utiliser en sortie TIF/JPG) une transformée de Fourier (FFT), Blur n'est actif que si Radius supérieur ou égal à 1.6; En réduisant notablement la valeur par défaut de "scope" et en agissant éventuellement sur "Luminance only" il est possible d'obtenir des flous différenciés selon la teinte.
  • grain permet de simuler le grain des films
  1. Median : vous pouvez choisir entre 3x3, 5X5, 7X7, 9X9 et le nombre de passes de 1 à 4 (ces medians sont directement dérivés de ceux de Denoise)
  2. Guided Filter : vous pouvez sélectionner "Soft radius", "Strength" et "detail", l'ensemble agit sur l'impression de force. Ce module peut venir en complément de "denoise"

Pour ces 3 modules vous avez le choix entre travailler en mode "Luminance only", "Chrominance only", ou "Luminance + chrominance"

Vous disposez de masques et aperçu des modifications y compris en mode inverse.

8.11.1 Action en complément de denoise

Vous pouvez utiliser ce module, notamment "median" et "Guided filter" en complément de "denoise" dans les cas délicats


Vous disposez de 2 méthodes :

  • "normal" : l'algorithme de détection de forme a été amélioré. Il se rapproche de celui utilisé dans les autres modules.
  • "inverse" : ce nouvel algorithme utilise les mêmes processus que "normal" et par l'utilisation de "scope" l'utilisateur peut cibler plus précisément l'action.


Attention:

  • travailler en mode inverse, va flouter des zones importantes qui ne pourront pas être corrigées ensuite (sinon par RT-spot exclude)
  • l'action de "scope" peut être déroutante dans certains cas : par exemple pour un portrait les yeux - différents de la peau - seront floutés si "scope" est trop faible.

8.12 Denoise

Cette fonction permet 6 usages et doit être utilisé en mode 1:1 (zoom 100%):

  1. grâce à la sélection "Global quality" - enhanced + chroma denoise, elle réduit très légèrement sans intervention de l'utilisateur le bruit de chroma pour améliorer la sélection dans des images légèrement bruitées
  2. Ne sélectionner qu'une zone à débruiter (par couleur...) et laisser le reste de l'image bruitée
  3. Débruiter une zone qui aura vu le bruit s'accroître notamment à cause d'un accroissement important de l'exposition, ou de débouchage des ombres
  4. Venir en complément de l'algorithme principal. Par exemple faire un réglage général a minima, puis dans certaines zones choisies réduire le bruit plus profondément.
  5. Comme le traitement "local" est plutôt en fin de processus (le module Denoise principal est en début), il va autoriser une réduction du bruit généré par les traitements intermédiaires.
  6. apporter un flou gaussien par niveau (pour les faibles niveaux 0, 1 et 2) pour simuler un bokeh


  • Zone minimum d'action pour les ondelettes (wavelet) : 128 pixels * 128 pixels
  • moins de courbes, mais plus de curseurs afin de sélectionner le bon niveau de décomposition "wavelet" et affiner le résultat.
  • vous pouvez différencier l'action sur la luminance et la chrominance en fonction de la grosseur du bruit - fine (3 niveaux pour la luminance) ou coarse pour la luminance - à l'aide d'une courbe "denoise luminance by level" et "fine" (correspond aux 4 premiers niveaux) ou "coarse" pour la chrominance .
  • de plus vous avez à votre disposition, 2 curseur "DCT" : 1 pour la luminance et 1 pour la chrominance, réglés par défaut à 0%. DCT est désactivé pour une valeur de 100.
    • l'algorithme utilise pour la luminance et la chrominance une transformée de Fourier (FFT - fast fourier transformed - DCT discrete Cosinus transformed)
    • les curseurs à 0, l'action de la DCT est maximum, si vous souhaitez restituer des détails, accroissez les valeurs.
    • un slider "detail threshold" permet de mieux prendre en compte les contours.
  • Un curseur "Scope" permet de faire varier - avec un algorithme simplifié - l'action selon le deltaE du sujet, par exemple renforcer l'action sur la peau et laisser le fond bruité (luminance et chrominance). Au delà de "scope=80", progressivement - jusque 100 - toute la zone sélectionnée aura la même intensité de dé-bruitage, bien sûr en tenant compte de la transition.
  • Un très léger accroissement de la saturation est exécuté, si vous actionnez l'un ou l'autre des curseurs "chroma".

8.12.1 Action combinée avec "Smooth Blur Noise grain

Vous pouvez conjuguer l'action dans les cas délicats avec le module précité notamment

  • Median
  • Guided Filter : qui va agir un peu à la manière d'un flitre bilatéral notamment pour la dimension "chrominance"

8.12.2 Qualité améliorée

  • Si vous déplacez le curseur "coarse" à 1, aussi bien pour la chrominance et en déplaçant très légèrement la courbe luminance au level 3+ juste au dessus de zéro, un algorithme "amélioré" est utilisé - en réalité il fait "2 passes".
  • A la position "1" l'algorithme améliore seulement l'algorithme "fine"
  • A partir de "2" l'algorithme "coarse" est activé.

8.12.3 Equalizer

Vous disposez de 2 "equalizers", aussi bien pour la luminance que la chrominance.

  • Le premier renforce (par défaut) l'action sur les basses lumières. A "0" l'action sur les lumières hautes / moyennes / basses est identique.
  • Le second équilibre la force d'action sur le canal "rouge -vert" ou sur le canal "bleu - jaune"

8.12.4 Bilateral filter

Ce dispositif est la réplique du "Impulse denoise" des rubrique générales. de mon point de vue son action va au delà du bruit d'impulsion.

8.13 Encoding Log

Ce module "dérivé" de celui présent sur ART (Alberto Griggio - merci à lui pour cet excellent module) permet de traiter les images sous exposées, ou à très haute dynamique Il encode les données avec une échelle logarithmique qui va assurer une compression intelligente des données

Dans une première étape, il est important de connaître les valeurs des zones noires en écart Ev (Black Ev) et celles des zones blanches (White Ev) pour évaluer le "dynamic range" - par défaut à 15 (+ 10 Ev white, -5 Ev black, Source Gray Point Value = 18%). Cette estimation est réalisée en amont du processus, avec une copie d'image réalisée juste après la conversion colorimétrique (passage à sRGB, Prophoto...), donc avant les opérations "rgb" du process principal ("exposure", "Lab adjustements", etc.)

Le système va calculer ces 2 valeurs (blackEv, WhiteEv) si vous cliquez sur le bouton "Relative Exposure levels" - "Automatic". L'algorithme prend en compte la taille du RT-spot et permet de différentier si nécessaire des zones à fort contraste ou sombres par rapport aux autres. Bien sûr si vous choisissez un RT-spot qui couvre toute l'image les résultats seront proches de ceux obtenus avec ART. Par défaut cette fonctionnalité est désactivée - case à cocher "Calculate DarkEv WhiteEv Value on the entire Image"

Si vous souhaitez que le calcul prenne en compte automatiquement le Point gris de l'image avant le process, il faut laisser la case à cocher "automatic" dans "Source gray point" activée. Selon le cas, 2 algorithmes assurent un calcul automatique, celui intialement prévu par les calaculs originaux, il peut dans certains cas échouer. Alternativement un calcul fait à partir de Yb (luminance moyenne) s'y substitue

Bien sûr vous pouvez retoucher directement les valeurs de "Black Ev", "White Ev", "Value", mais le calcul ne sera ré-effectué automatiquement que si vous cliquez sur le gros bouton "Automatic".

Vous pouvez modifier le point gris (réglé par défaut à 18%) de l'image finale ("Target Gray Point"), si nécessaire.

Bien sûr "Scope" fonctionne et permet de cibler l'action sur certaines étendues de couleurs.

Avec "Calculate DarkEv WhiteEv Value on the entire Image" désactivée, si vous positionnez le RT-spot sur une zone claire, les valeurs de "Value" (Source Gray point) seront perturbées et probablement trop élevées, donc :

  • privilégiez les zones sombres,
  • ou retouchez si nécessaire "Value" en le réduisant,
  • ou laissez activée la case à cocher "Calculate DarkEv WhiteEv Value on the entire Image"

8.13.1 Graduted Filter

A la fin du traitement "log", vous pouvez agir sur la luminance résultante avec un "Graduated Filter" doté de 2 sliders : "gradient strength" et "gradient angle"

9 Cas d'usage spécifique : réduction des défauts (capteur sale, yeux rouges, ...)

Par conception "Local Adjustements" n'a pas été conçu pour éliminer ces défauts. Néanmoins par effet de bord, certains défauts apparents et gênant en photographie peuvent être réduits voire supprimés. Ceci bien sûr n'est pas incompatible avec d'autres modules plus spécialisés incorporés ou non à "Local adjustements"... Au moins 3 fonctions présentes, en adaptant l'usage, peuvent être utilisées, séparément ou ensemble :

  • "Color and light" pour des défauts ponctuels ;
  • "Contrast by detail level" pour des défauts répartis ;
  • "Wavelet pyramid" pour les défauts répartis;
  • "Blur and Noise" en complément éventuel : attention cette action est assez destructrice - à utiliser avec modération.

Vous pouvez agir soit:

  • directement, cas général, sur le fichier "raw", ou "TIF", etc.
  • soit sur le fichier flat-field si vous en avez élaboré un.

9.1 Choix de la taille du RT-spot

On peut être tenté d'ajuster la taille du RT-spot à celles des défauts, en général petits. Cette démarche est en général à éviter car :

  • elle masque la visibilité de l'action
  • elle risque dans certains cas soit un crash dus à des problèmes d'allocation mémoire, soit des dysfonctionnements aux limites des processus

Il est préférable de mettre un RT-spot couvrant largement le défaut, et soit facilement visible par exemple un RT-spot de 50x50 pixels ou 100x100 pixels, puis:

  • choisir une taille du Spot (Spot size) petite, adaptée au défaut
  • réduire la transition à une valeur faible entre 2 et 10, de telle façon que à cette valeur la quasi totalité du défaut est couvert
  • accroître "transition weakening" jusque 10 ou 15, avec ce réglage la décroissance d'action est très rapide
  • agir sur "scope" pour centrer l'action sur le défaut

Par exemple si c'est un oeil rouge de 6x6 pixels, choisissez "transition = 5", "transition weakening = 10", à partir du 8ème pixel l’affaiblissement (sans l'action de "scope") est de plus de 90%.

Exemple d'affaiblissement - sans action avec "scope":

  • taille du RT-spot 100x100
  • taille du défaut 10x10 (Iris d'un oeil)
  • "transition" = 9
  • "transition weakening" = 15
  • à la limite du défaut 10x10 baisse de l'action : 75%
  • à 2 pixels après le défaut, baisse de l'action 28%
  • à 4 pixels après le défaut baisse de l'action 12%

Si le RT-spot, pour le même défaut est de 50x50

  • à 2 pixels après le défaut, baisse de l'action 14%
  • à 4 pixels après le défaut, baisse de l'action 4%
  • etc.

9.2 Utilisation avec le module "Color and Light"

  • Activez "Color and Light"
  • Vous pouvez utiliser l'équivalent d'une fonction "yeux rouges" en choisissant un encadrement assez serré de l’œil - sélecteur circulaire centré sur le rouge, délimiteurs de spot proches de l’œil - une valeur de scope réduite, puis agir sur réduction "lightness" -100, et réduction chrominance -100.
  • De la même manière vous pouvez réduire les défaut du capteur de type "Spot IR", en choisissant un encadrement assez serré du défaut - sélecteur circulaire centré sur le défaut, délimiteurs de spot proches du défaut - puis agir sur "chrominance" en réduisant la valeur, agir éventuellement sur "scope" pour réduire l'étendue de l'action.
  • Vous pouvez dans des cas simples, réduire les défauts de type "capteur encrassé" notamment lorsque celui-ci est gras. Ceci se traduit par des taches qui apparaissent sur les fonds unis. Pour cela choisissez un encadrement assez serré du défaut - sélecteur circulaire centré sur le défaut (adaptez la taille du spot) , délimiteurs de spot pas trop proches du défaut pour permettre une transition peu visible. Puis: a) réduisez "Transition" à des valeurs faibles - transition weakening élevé; b) agissez sur "luminance" et éventuellement sur "chrominance" pour approcher le rendu de la zone polluée à celui de la zone saine; c) agir modérément sur "scope" pour moduler l'action souhaitée. d) possibilité d'utiliser "Color correction grid - direct", ainsi que "Softradius"

9.3 Utilisation avec le module "Contrast by detail levels"

Dans le cas de capteur encrassé (de type "graisse"), et lorsque la zone est importante ou pour une série de petits défauts, Il peut être utile d'utiliser "Contrast by details levels" qui va agir comme un outil "wavelet" sur la luminance et aussi si nécessaire sur la chrominance. Dans ce cas:

  1. mettez le Spot de sélection sur un défaut prononcé (en adaptant sa taille si nécessaire);
  2. choisissez une zone de sélection large pour couvrir la majorité de la surface concernée par les défauts;
  3. Sélectionnez une valeur de transition assez importante (selon le cas) et "transition weakening" élevé;
  4. Activez "Contrast by detail levels" et agissez sur les niveaux 3 , 4 (rarement 5) ou plus faibles en réduisant le contraste (valeurs inférieures à 100) et en agissant si nécessaire sur le curseur chroma.


Attention, la zone d'action est limitée à 64x64 pixels, en dessous de ces valeurs, CBDL est désactivé pour éviter le crash - la décomposition en ondelettes de Harr, nécessite au mimima 64x64 pixels.

9.4 Utilisation avec le module "Local Contrast - Wavelet pyramid"

Vous pouvez utiliser notamment :

  • contrast by levels : en agissant sur la courbe, en étant proche de la partie gauche de la courbe - les niveaux faibles - et en réduisant le micro-contraste
  • vous pouvez agir si nécessaire sur "Chroma levels" pour réduire les artefacts colorés
  • Blur levels : là encore avec les niveaux faibles, vous pouvez flouter (blur) les petits défauts, avec ou sans action de "contrast by levels"

10 Temps de traitement et utilisation de la mémoire

Lorsqu'on utilise la sortie JPG ou TIF, et pour le mode "normal", l'algorithme n'effectue les calculs que pour la zone délimitée. En ce sens les temps de traitement et l'occupation mémoire sont réduits. Bien sûr le temps de traitement va dépendre du nombre de spots de contrôles, de leur taille, et du type de traitement.

Les plus gros consommateurs de temps sont

  • "Retinex" : forte influence de la taille du spot, de "radius" et de "scale" et de "chroma" au delà de 40, ainsi que de FFTW.
  • "Tone Mapping" : "edge stopping" accroît linéairement le temps de traitement. "Reweigthting iterate" multiplie par sa valeur les temps de traitement. On peut très facilement attiendre des temps de plusieurs dizaines de secondes.

Si on exclue "Denoise" , "Sharp" et "Retinex", les temps de traitement sont de l'ordre de quelques dixièmes de seconde par spot de contrôle, et le besoin en mémoire de l'ordre de quelques centaines de M.

Quatre réglages agissent fortement sur les temps de traitement et le besoin en mémoire :

  • denoise qui ajoute selon la taille du spot de contrôle de l'ordre de 1 seconde et 1 M de mémoire.
  • quality "enhanced + chroma denoise", qui ajoute environ selon le spot de contrôle de l'ordre de 0.5 seconde à 1 seconde et 0.6 M.
  • "mask" ("Color and Light", "Exposure", "Shadows Highlight", "CBDL", "Tone mapping", "Retinex", "Tone mapping, "Smooth and blur" et "Denoise") accroît nettement les besoins en mémoire. Attention si votre machine a des capacités limitées et si vous sélectionnez une grande zone.
  • l'option FFTW (Retinex, Local contraste) même optimisée peut accroître ou réduire les temps de traitements - dans tous les cas elle améliore la qualité:
    • pour des petites tailles et moyennes tailles de Spot (jusque 2000 * 2000 pixels) FFTW sera plus rapide
    • pour les grandes tailles (5000 * 4000 pixels), FFTW sera plus lent

11 Aspects logiciels

Comme le traitement est itératif pour chaque Rt-spot, il est important de connaître l'ordre

  • Encoding log, Smooth Blur and noise, Denoise, Contrast By Detail Level, Vibrance, Tone mapping, Shadow Highlight, Soflight, Local contrast, Sharp, Retinex, Exposure, Color and light, Avoid color shift
  • cet ordre est indiqué par un nombre de 1 à 12 lors du choix de l'outil
  • Comme évoqué dans le texte, certaines fonctions ont été réécrites, soit pour s'adapter à l'échelle, soit par qu'elle fonctionne en mode Lab au lieu de RGB

12 Quelques questions ?

12.1 Et le détourage des objets ?

C'est une question fréquemment posée !

  • Dans une majorité de cas, l'algorithme de détection de forme sera largement suffisant pour ne sélectionner que ce qui est nécessaire, avec à la fois la commande "scope" et les curseurs prévus dans "settings" - shape detection et transition
  • l'utilisation de "exclude spot" doit permettre de résoudre les cas délicats
  • les masques prévus dans 8 modules - Color and Light, Exposure, Shadows Highlight", Vibrance, CBDL, Tone mapping, Smooth and Blur et Denoise (provisoirement désactivés) doivent aussi permettre d'améliorer la sélection dans quelques cas.
  • la sélection peut être encore améliorée en choisissant 2 spot, très proches mais chacun sur une "couleur" (au sens deltaE) différente, avec 2 masques complémentaires

Si un spécialiste GUI est capable par exemple d'agir sur les 4 ellipses et les transformer en courbes de Beziers (chacune inscrite dans le rectangle centre X Y), ou de réaliser un polygone (inscrit dans le rectangle centre X Y) à main levée alors avec une simple LUT on pourrait simuler un détourage... pour les irréductibles des détourages, calques...

12.2 Comment réaliser un gradient de luminance (graduated filter) ?

La réponse peut étonner, mais avec quasiment tous les modules ! Plus sérieusement 3 modules permettent seuls - ou combinés entre eux - de réaliser ce gradient de luminance

  1. shadows-highlight (celui que je recommande)
  2. exposure
  3. Color and light

Vous pouvez bien sûr utiliser le "graduated Filter" là où il est présent, sur la luminance, mais aussi sur la chrominance et la teinte (notamment pour Vibrance)

Vous pouvez aussi :

  • utiliser la dissymétrie possible de la forme du Spot, en plaçant le centre proche soit de la zone sombre dont doit partir le gradient - en évitant si possible le point le plus sombre lorsque la luminance est très faible, soit de la zone lumineuse - en évitant si possible le point le plus lumineux lorsque la luminance est très forte
  • par exemple si la zone sombre est en bas à gauche et qu'on souhaite éclaircir l'image en diagonale, placer le spot en bas à gauche et ouvrir le spot vers le haut et à droite avec l'angle souhaité pour le gradient
  • agir sur "shadows" ou "highlight" - avec le module 1. ou "exposure" avec le module 2., ou les sliders et courbes du module 3.
  • régler - accroître la valeur de "scope" pour obtenir l'effet souhaité (exclusion ou non de certaines couleurs...)
  • agir éventuellement sur les curseurs "Shape detection" pour accrôitre ou réduire l'effet - selon la valeur de "scope"
  • régler la "transition value", "transition weakening" et "transition differentiation" pour obtenir l'affaiblissement souhaité

Essayez aussi les fonctions "inverse" !

La rotation possible du Spot, peut paraître nécessaire a priori, mais:

  • elle va compliquer le code
  • il n'est pas sûr que cet apport soit indispensable, sinon lorsque la taille du RT-spot est proche de l'image entière, et que l'axe du gradient est proche de X ou de Y.

12.3 Comment réaliser un mode "inverse" pour tous les outils

Certains outils, "Color and light", "Exposure", "Sahdows Highlight", mais aussi "Smooth and Blur", "Sharpening". En règle générale, le mode "inverse" a des fonctionnalités réduites (moins de sliders, de courbes...) Si vous souhaitez conserver toutes les fonctionnalités et réaliser un mode "inverse" pour tous les outils:

  • créez un premier Rt-spot avec les réglages que vous souhaitiez appliquer en inverse
  • Dans settings :
    • Normal spot
    • Shape RT-spot area : rectangle
    • les 4 Délimiteurs en dehors du preview
    • Transition à 100
  • créez un deuxième RT-spot
    • Excluding spot
    • ajustez les réglages de ce Spot (settings)
    • vous pouvez utiliser tous les outils (Color and light, etc.)


12.4 Et le "Spot removal" pour retirer les défauts

En consultant les paragraphes précédents, je pense qu'une majorité de défauts peuvent être traités avec les modules actuels, même si "Local Adjustements" n'a pas été conçu pour cela:

  • yeux rouges
  • défauts - poussière sur le capteurs (1)
  • Spot IR (Infrarouge)
  • graisse (1)

Avec 3 modules - Color and light, CBDL, Wavelet pyramid


Mais bien sûr ceci dont (1) n'est pas incompatible avec un futur module "classique" à base de "brosse" ou autre algorithme

12.5 A quoi sert l'association Retinex - Dehaze ?

Chacun des 2 algorithmes a ses points forts

  • Dehaze est très performant globalement, mais "ignore" les arrières plans
  • Retinex est performant sur la différenciation avant - arrière plan, mais peut produire du halo

La combinaison des 2 : Dehaze à partir de l'image globale (ou locale) et Retinex pour la partie locale de l'arrière plan, permet de résoudre la quasi totalité des cas

12.6 Pourquoi y a-t-il un "masque" pour chacun des modules concernés et pas un "masque global" ?

Simplement parce que chacun des modules "Exposure" , "Color and "Light", "Shadows highlight", "Vibrance" "CBDL", "Tone mapping" subit les traitement récursif des autres modules - exactement comme l'ensemble des modules de Rawtherapee, interagissent l'un sur l'autre. J'ai fait une exception pour "Smooth and Blur" et "Denoise" qui ont en commun un masque, car:a) ils sont en début de processus "Local adjustements" et n'ont que peu d’interactions.

Avoir un masque global, revient par comparaison à n'avoir qu'une seule courbe pour gérer l'ensemble des courbes de Rawtherapee.

Bien sûr, par simplification, il n'y a que 7 modules avec "masques", rien n'interdit de l'étendre aux autres...ce n'est qu'une question de temps...si la demande s'en fait sentir

12.7 Pourquoi n'y a-t-il pas toutes les fonctions de Rawtherapee avec le mode "local" ?

Le mode local est fondé et articulé autour du concept "L*a*b*" et de la notion de deltaE (Lab nécessaire), une majorité de modules "principal" ont leur équivalent "local"

Par contre, les modules "rgb" après démosaicing ou "RGB" avant demosaicing nécessiterait une autre approche que le concept du deltaE. Donc rien d'impossible, par exemple pour réaliser un module "balance des blancs locale"...

Remarque : il est tout à fait possible de réaliser un mode global "plein écran" à partir de "Local adjustements" : régler transition sur 100, choisir un spot (rectangulaire) tel qu'il soit plus grand que le preview.

12.8 Comment modifier uniquement l'ensemble des feuillages d'une image ?

L'algorithme permet de ne sélectionner qu'une couleur, par exemple les feuilles d'un arbre.

Pour cela:

  • la taille du spot doit être réduite pour ne cerner que la couleur concernée.
  • Ajuster "scope" sur des valeurs faibles.
  • Étendre l'action du RT-spot pour prendre en compte - si vous le souhaitez - l’ensemble des feuillages de l'image (par exemple si il y a plusieurs arbres)
  • Agir sur les champs que vous souhaitez modifier (luminance, saturation, etc.)

12.9 Comment réaliser la fonction "Clarté" (Clarity)

Au moins 3 façons :

  1. en utilisant CBDL et en agissant sur "Residual image - Clarity" - effet "moyen"
  1. en utilisant Tone-Mapping - effet "fort" - notamment avec l'usage de gamma et amount et des valeurs modérées de "compression" (attention aux temps de traitement)
  2. en utilisant Local-contrast - effet "faible"
  3. en utilisant "wavelet" (local contrast)

Et pourquoi pas avec Retinex... qui est une autre manière de réaliser un "local contrast" - plus difficile à manipuler, mais l'algorithme de principe est proche.

Un masque sur la totalité de l'image (ou partielle) peut permettre de modifier le gamma de l'image et affaiblir - renforcer la luminance de certaines zones.