Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Contrôle des écrêtages en temps réel
#1
Lorsque les tons ou les couleurs sont écrêtés, on perd de l’information dans l’image. Comme en retouche, on se base souvent sur ce que l’on voit à l’écran on peut se tromper car on est pas forcément dans les conditions qui permettent de juger de manière optimale.
Pour éviter ces écueils, on a l’histogramme et l’étendue qui nous apportent des éléments plus objectifs.
Les alarmes de l’écrêtage sont des outils qui facilitent aussi l’obtention d’une image qui garde le maximum d’information.

1)La situation actuelle

Develop Persona:

Sur Affinity Photo on a des alarmes d’écrêtage dans Develop Persona sous la forme de 3 boutons dans la barre d’outils en haut à droite :
  • Le bouton rouge pour les tons clairs écrêtés
  • Le bouton bleu pour les tons sombres écrêtés
  • Le bouton jaune pour indiquer si un canal (R ou V ou B) est écrêté.
Avec l’outil Courbes, la courbe Maître agit essentiellement sur l’écrêtage des tons clairs et sombres ce qui se manifeste par des alertes rouges et bleues tandis que les courbes qui modifient les couleurs provoquent des alertes jaunes.
L’avantage de ces alertes c’est que l’image est préservée et les écrêtages sont bien localisés on peut donc juger de leur pertinence et décider d’en tenir compte ou non.
L’inconvénient des alertes jaunes c’est qu’on ne sait pas quelle couleur est concernée, il faut donc jouer avec les courbes couleurs pour savoir quelle couleur agit sur l’alerte jaune.


Photo Persona:

Dans Photo Persona, il faut lancer le Réglage Niveaux et maintenir la touche ALT lorsqu’on modifie le niveau de noir ou de blanc.
On obtient alors pour :
les tons clairs les couleurs opposées des couleurs écrêtées sur un fond blanc
les tons foncés les couleurs écrêtées sur un fond noir
On a donc ici plusieurs inconvénients qui sont :
1- Il faut utiliser le Réglage Niveaux
2- L’affichage de l’écrêtage ne se fait pas en temps réel mais uniquement si on modifie le niveau de noir ou de blanc .
3- Les écrêtages ne sont pas bien localisés puisque l’image est cachée par un fond noir ou blanc.


2)La solution proposée

Pour pallier à tous ces inconvénients, j’ai créé des filtres Texture procédurale.
Ces filtres ont les avantages suivants:
  • 1- Comme dans Develop Persona l’image reste visible.
  • 2- Ils agissent en temps réel quel que soit le réglage et les filtres utilisés. On peut donc régler le point noir et le point blanc avec le Réglage Courbes par exemple.
  • 3- On peut aussi les utiliser dans Develop Persona et Photo Persona
  • 4- On peut régler le point noir et le point blanc pour chaque canal R,V,B séparément ainsi que pour la luminosité ou la luma
  • 5- On peut modifier à sa convenance les seuils d’alerte.
3)Contenus des filtres :

a)Ecretage_Luminosite ou Ecretage_Luma
[Image: Presse-papiers-1-2.jpg]
Ce filtre Ecretage_Luminosite fonctionne comme les alertes dans Develop Persona. 
Dans ce filtre Ecretage_Luminosite on a les choix suivants :
  • 1- Les alertes d’écrêtages ne concernent que la luminosité des tons sombres et des tons clairs. Dans ce cas V est sélectionné et en surbrillance (1). Cela correspond aux boutons Rouge et Bleu de Develop Persona.
  • 2- Les alertes d’écrêtages concernent aussi les couleurs écrêtées dans ce cas il suffit de désélectionner V en 1 et activer V en (2). Cela correspond au bouton Jaune de Develop Persona.
On peut modifier les seuils d’écrêtages en modifiant les valeurs de a et de b. Ces valeurs peuvent être modifiées et aussi enregistrées dans un Préréglage.
Dans le cas du filtre Ecretage_Luma c’est le critère qui change, on a alors dans la formule :
var L=0.30*R+0.59*G+0.11*B au lieu de var L=(max(R,G,B)+min(R,G,B))/2

b)Ecretage_RGBA


[Image: Presse-papiers-2.jpg]

Ce filtre Ecretage_RGBA fonctionne comme les alertes dans le réglage Niveaux de Photo Persona.

Pour les tons clairs :
  • Les couleurs affichées dans les tons clairs correspondent aux couleurs opposées des couleurs écrêtées (Cyan pour le Rouge écrêté, Magenta pour le Vert, Jaune pour le Bleu).
  • Lorsque 2 couleurs sont écrêtées on obtient l’addition de ces couleurs. Exemple :Si le Rouge et le Vert sont écrêtés cela nous donnera du Bleu (Bleu = Cyan+Magenta).
  • Si les 3 couleurs sont écrêtées ont obtiendra du Noir (Cyan+Magenta+Jaune).
Pour les tons sombres :
  • Les couleurs affichées dans les tons sombres correspondent aux couleurs écrêtées (Rouge pour le Rouge écrêté, Vert pour le Vert, Bleu pour le Bleu).
  • Lorsque 2 couleurs sont écrêtées on obtient l’addition de ces couleurs. Exemple :Si le Rouge et le Vert sont écrêtés cela nous donnera du Jaune (Jaune = Rouge +Vert).
  • Si les 3 couleurs sont écrêtées ont obtiendra du Blanc (Rouge+Vert+Bleu)
Afficher l’écrêtage des couleurs dans les tons sombres et clairs en même temps peut dans certains cas rendre l’image illisible, c’est pour cette raison que j’ai prévu 2 options supplémentaires notées 1 et 2 dans la copie d’écran. Ces options permettent de choisir de cacher les couleurs écrêtées dans les tons sombres ou clairs.
  • Option 1 si on active A : Les couleurs écrêtées dans les tons clairs sont transparentes.
  • Option 2 si on active A : Les couleurs écrêtées dans les tons sombres sont transparentes.
4)Comment utiliser ces filtres

Utilisation dans Photo Persona

Dans la suite de mon exposé je considère que vous avez utilisé le lien situé à la fin de ce texte pour télécharger et installer les macros et les filtres.
  • Pour importer le fichier Ecretages.afmacros il faut aller dans le menu Fichier/Importer un contenu et sélectionner le fichier Ecretages.afmacros. Celui-ci va créer une catégorie Ecretage dans la bibliothèque des macros (à la fin de la liste).
  • Pour importer le fichier Ecretage.aftoolpresets il faut aller dans le menu Filtre dynamique/Texture Procédurale…./Gérer les préréglages../Importer des préréglages.. et sélectionner le fichier Ecretage.aftoolpresets. A partir de maintenant les textures procédurales seront disponibles dans la liste déroulante de la fenêtre Texture procédurale dynamique.
     
Lorsque le filtre est inactif, il suffira d’activer le calque pour le rendre actif et désactiver le calque pour le rendre inactif. 
Les paramètres a et b sont modifiables. Ces paramètres compris entre [0 et 255[ (255 est exclu) définissent les seuils au-delà desquels une alerte est déclenchée.

Utilisation dans Develop Persona 

Il faut activer 1 des 3 filtres avant de rentrer dans Develop Persona. Dans celui-ci il faudra cocher la case Afficher tous les calques pour rendre les alertes visibles et inversement pour supprimer les alertes. Si la case Afficher tous les calques est désactivée, on pourra toujours utiliser les alertes de Develop Persona. C’est pour cette raison que cette démarche est surtout intéressante pour le filtre Ecretage_RGBA.
On peut maintenant faire tous les ajustements que l’on veut dans Develop Persona et les couleurs écrêtées vont s’afficher en temps réel.
On peut ainsi par exemple choisir les Points noirs et Les Points Blancs pour chaque canal R,V,B dans Develop Persona avec le réglage Courbes ou modifier les Tons foncés et les tons clairs ou la balance des blancs.

[Image: Presse-papiers-3.jpg]

5)Un exemple d’utilisation de ces filtres 

[Image: ESC-1.jpg]

Sur cette photo de 2 escrimeurs, la salle était éclairée par la lumière jaune des lampes et les lumières blanches ( ou bleues ) de petites baies vitrées situées à gauche et à droite de la photo.

J’ai procédé de la manière suivante :
  • 1) J’ai dupliqué le fichier escrime.dng dans Photo Persona et activé le filtre Ecretage _RGBA
  • 2) Je suis ensuite repassé à Develop Persona
  • 3) J’ai coché la case Afficher tous les calques et le menu sortie : Raw lié est activé. Je peux ainsi voir les alertes sur les canaux RVB et je peux aussi passer de Develop à Photo et inversement de manière non destructive.
  • 4) Dans Develop Persona, je commence par modifier à l’aide du réglage Tons/Courbes les canaux R,V,B en tenant compte des alertes. Je règle ensuite le canal maître puis les autres réglages tons foncés et tons clairs, clarté, éliminer la frange, réglages de superposition et enfin la balance des blancs en manuel pour récupérer du jaune ou du bleu.
[Image: ESC-21.jpg]
  • 5) En retournant à Photo Persona, j’augmente les contrastes avec les courbes et je rectifie la balance des blancs. C’est aussi ici que l’on peut faire d’autres réglages.
[Image: ESC-3.jpg]

Il y a bien sûr de nombreuses manières de procéder selon les goûts de chacun.
Je me dois cependant de faire les remarques suivantes :
  • 1) Les courbes : si on abaisse la courbe à l’extrémité droite et on la relève à l’extrémité gauche, on supprime toute possibilité d’alerte d’écrêtage à moins de changer les critères en modifiant a et b dans les paramètres du filtre.
  • 2) La balance des blancs peut déplacer les histogrammes vers la droite ou la gauche ce qui peut supprimer toute alerte d'écrêtage de la Luma ou de la Luminosité. Dans ce cas on peut aussi activer V (2) dans la formule pour voir s’il y a des couleurs écrêtées.
  • 3) Les histogrammes qui apparaissent dans l’outil Courbes ne sont pas actualisés pendant le réglage des courbes. C’est l’histogramme du menu de droite qui est actualisé ( il faut cliquer sur le triangle jaune lorsqu’il apparaît). Si on veut une représentation finale plus grande de l’histogramme des courbes,  il faut créer un nouveau calque Courbes.
  • 4) Ne pas considérer que les écrêtages sont forcément interdits en photo, il suffit pour s’en persuader de prendre des photos que vous considérer comme belles et de les analyser avec ces outils pour s’en convaincre. Les paramètres a et b modifiables dans les formules permettent de s’adapter à de nombreux contextes.
[Image: ESC-4.jpg]

Je joins dans ce lien :
  • La macro qui permet d’utiliser ces filtres avec 1 seul Clic dans la bibliothèque.
  • Les textures procédurales que l’on peut importer.
  • La macro de l’aide visuelle
  • La photo de départ pour ceux qui désirent essayer et pourquoi pas partager leur expérience.
ECRETAGE :https://drive.google.com/file/d/1mShXracjzfKo_yw5Ve3ZsQd7v-D0rw44/view?usp=sharing


J’espère que ce travail vous sera utile.
Je remercie Ldina du forum officiel (serif) qui a fait naître chez moi l’idée de cette réalisation.
ecole
Vos applications :
  • > Affinity Photo Windows
  • > Affinity Designer Windows
  • > Affinity Publisher Windows
- Version : 2
#2
Très bel effort, que je lirai à tête reposée pour les détails techniques — ma culture sur les filtres de Texture procédurale est nulle. Mais j'ai d'ores et déjà quelques remarques à te transmettre.

Tous d'abord, le mot même d'écrêtage est quelque peu trompeur, car il suggère qu'on a perdu quelque chose dans une opération sur l'image et c'est la possibilité même de cette perte qui a poussé à  créer ces alertes pour prévenir quand ça arrive. En fait cette alerte annonce simplement qu'une ou plusieurs des composantes RVB est à 0 ou à 255, mais ce n'est pas forcément qu'on a perdu quelque chose. Par exemple, toutes les couleurs complètement saturées, ça se rencontre, et elles sont toutes partiellement écrêtées à 0 (c.à.d. une ou deux composantes RVB nulle). Le même reproche s'applique au terme anglais clipping

Je proposerais ensuite quelques retouches à ta description de la situation actuelle.
Dans le Develop Persona
— l'alerte jaune signale une ou deux composantes écrêtée, mais pas les trois
— le fonctionnement annoncé ne fonctionne pas toujours, ou pas correctement, selon qu'on utilise tel ou tel réglage. Voir mon tuto http://www.ch22.fr/numeric/affinity_phot...P.html?7b2

 Dans le Photo Persona, dire que les écrêtages ne sont pas bien localisés est un peu excessif, puisqu'l suffit de libérer la tache ALT et on voit alors très bien où ça se passe. C'est moins commode, ça, oui : on ne voit pas au premier coup d'oeil, il en faut deux.

Enfin... last but not least, il y a des pionniers qui avaient déjà proposé des palliatifs à ces faiblesses que tu déplores dans les alertes actuelles. Moi-même, enfin, il y a cinq ans...  http://www.ch22.fr/numeric/affinity_phot...AP.html?3c  

Cela dit, j'accorde que ta proposition a de l'élégance. 

[Image: temp-Image9-Ws2-GE.avif]
Vos applications :
  • > Affinity Photo Mac
#3
Bonjour,

Merci Ch22 pour toutes ces remarques.

Dans le rappel de la situation actuelle, je voulais surtout mettre en avant les points que je voulais améliorer.
Pour le petit bouton jaune, je connaissais sa fonction c'est pour cette raison que j'avais utilisé le singulier et des virgules, j'ai corrigé maintenant en remplaçant les virgules par "ou".Ce qui nos donne: Le bouton jaune pour indiquer si un canal (R ou V ou B) est écrêté.
Ce bouton jaune est utilisable mais comme je le disais: "L’inconvénient des alertes jaunes c’est qu’on ne sait pas quelle couleur est concernée, il faut donc jouer avec les courbes couleurs pour savoir quelle couleur agit sur l’alerte jaune".
Tu constates aussi pour Develop Persona que:
"Le fonctionnement annoncé ne fonctionne pas toujours, ou pas correctement, selon qu'on utilise tel ou tel réglage." En ce qui concerne les formules que j'utilise, j'ai constaté que cela fonctionne avec a=0 mais b=255 ne fonctionne pas, il faut utiliser b=254,99 par exemple et là cela fonctionne.
Il faut aussi tenir compte des remarques que j'ai faites à la fin de l'article qui engendre des artéfacts de dysfonctionnement.
En ce qui concerne la localisation des écrêtages, j'ai maintenant le problème inverse:
J'ai tendance à oublier l'utilisation de ces filtres, ce qui fait qu'il m'est arrivé de les laisser actifs lors de l'exportation. J'ai constater ensuite des petits pixels d'alerte sur la photo exportée.
Pour le reste tu as entièrement raison.
J'ai aussi mis à jour les filtres disponibles en uniformisant les formules et j'en exposerai le contenu très prochainement.

Merci encore pour tes interventions et ton implication.
Cool
Vos applications :
  • > Affinity Photo Windows
  • > Affinity Designer Windows
  • > Affinity Publisher Windows
- Version : 2
#4
Bonjour,

Additif et mise à jour

Dans cette dernière version j’ai uniformisé les formules et rajouté quelques filtres.

[Image: France-Hughes-Siptrott-1.jpg]
Cette photo représente une statue réalisée par France&Hughes Siptrott.
J’ai optimisé et uniformisé toutes les formules et j’ai rajouté quelques filtres pour améliorer le repérage des écrêtages ainsi que la possibilité de s’affranchir complètement de l’utilisation du réglage Niveaux…
Dans le cadre bleu on a les filtres qui concernent le contrôle de la luminosité et dans le cadre rouge ceux qui analysent spécifiquement les écrêtages dans chaque canal de couleur. Bien sûr cette pléthore de filtres ne signifie pas qu’il faille les utiliser pour chaque photo mais on a le choix et on peut choisir ce qui convient le mieux en fonction du contexte ou modifier certains filtres pour les adapter à ses exigences.

[Image: France-Hughes-Siptrott-2.jpg]
Filtre Ecretage_TousTGB
   Ce filtre met en évidence les zônes où les trois canaux R,V,B sont écrêtés :
  • en BLEU les pixels entièrement noirs
  • en ROUGE les pixels entièrement blancs
[Image: France-Hughes-Siptrott-3.jpg]
Le filtre Ecretage_TousRGB_Noir

Il fait la même chose que le filtre précédent mais avec un fond noir.


[Image: France-Hughes-Siptrott-4.jpg]
Le filtre Ecretage_RGBA nous l’avons déjà décrit précédemment:
Il met en évidence chaque canal R,V,B écrêté avec un code couleur différent pour chaque situation.

[Image: France-Hughes-Siptrott-5.jpg]
Le filtre Ecretage_RGBA _ColPrim.
Ce filtre fait la même chose que le filtre précédent Ecretage_RGBA mais avec un code couleur différent :
Pour chaque canal écrêté R,V ou B c’est la couleur écrêtée qui apparaît. Cela signifie par exemple qu’une tache Rouge indique que le canal Rouge est écrêté dans les Tons foncés ou dans les Tons clairs et idem pour le Vert ou le Bleu.

[Image: France-Hughes-Siptrott-6.jpg]
Le filtre Ecretage _RGBA_FdNoir utilise le même code couleur que le filtre précédent mais avec un Fond Noir.
Lorsque les trois canaux R,V et B sont écrêtés on obtient Blanc.

[Image: France-Hughes-Siptrott-7.jpg]
Le filtre Ecretage _RGBA_FdBlanc fait la même chose que le filtre précédent mais avec un code couleur inverse. On a ainsi :
  • Cyan pour le Rouge écrêté
  • Magenta pour le Vert écrêté
  • Jaune pour le Bleu écrêté
Les règles d’addition sont toujours les mêmes ainsi :
  • Lorsque 2 couleurs sont écrêtées on obtient l’addition de ces couleurs. Exemple :Si le Rouge et le Vert sont écrêtés cela nous donnera du Bleu (Bleu = Cyan+Magenta).
  • Si les 3 couleurs sont écrêtées ont obtiendra du Noir (Cyan+Magenta+Jaune).

Comment comprendre et modifier ces formules :

ex: var L=(max(R,G,B)+min(R,G,B))/2; var nb=roundup(b/255-L); var na=roundup(L-a/255); var Y=na*nb; Y*R+(1-Y)*(1-nb)
« var » définit les variables
L représente le critère (Luminosité, canal R ou V ou B,…...)
a et b sont des paramètres modifiables qui représentent l’intervalle au-delà duquel le critère L est écrêté. Pour normaliser ces variables, on utilise a/255 et b/255 dans les formules.
Les valeurs de ces variables normalisées sont comprises entre 0 et 1.
*A noter: on peut utiliser la valeur b=254.9 mais on ne peut pas utiliser la valeur b=255


Les autres variables servent à des calculs intermédiaires pour simplifier l'écriture et ne prennent que 2 valeurs 0 ou 1.
Ainsi on aura :
  • na =0 si L est inférieur à a/255 et nb =0 si L est supérieur à b/255
  • na =1 et nb =1 si L se trouve dans l’intervalle [a/255,b/255]
  • Y=na*nb aura ainsi comme valeur 1 si L se trouve dans l’intervalle et 0 si L est en dehors de l’intervalle.
La dernière expression qui n’est pas précédée par var représente la formule finale dont le résultat sera affecté au canal sélectionné. (R,V,B,A).
A noter que V dans l’interface correspond à G dans les formules.

Exemple : Je souhaite l’affichage de Ecretage_Luminosité sur un fond noir .
Ici le noir va remplacer l’affichage des pixels non écrêtés de l’image. Ce qui correspond à L dans l’intervalle[a/255,b/255] et donc à Y=1
Dans la formule on a Y*R ou Y*G ou Y*B.
var L=(max(R,G,B)+min(R,G,B))/2; var nb=roundup(b/255-L); var na=roundup(L-a/255); var Y=na*nb; Y*R+(1-Y)*na
Il suffit donc de supprimer ces expressions dans chaque ligne on obtient ainsi la formule :
var L=(max(R,G,B)+min(R,G,B))/2; var nb=roundup(b/255-L); var na=roundup(L-a/255); var Y=na*nb; (1-Y)*na

Tous ces filtres mis à jour sont disponibles à l’adresse suivante :
ECRETAGE :https://drive.google.com/file/d/1mShXracjzfKo_yw5Ve3ZsQd7v-D0rw44/view?usp=sharing

Remerciements : merciii
Remerciements à Ldina qui m’a transmis le lien vers l’article de Lisbon que je ne connaissais pas. Cet article m’a donné l’idée de compléter cette petite contribution avec d’autres filtres :
  • Clipping Warnings In Photo Persona
  • By Lisbon Posted July 29, 2021
  • https://forum.affinity.serif.com/index.php?/topic/146606-clipping-warnings-in-photo-persona/#comment-816382
Petit conseil: Idea
Ne pas oublier de désactiver les filtres avant d’exporter une image pour éviter de se retrouver avec des pixels colorés pas toujours visibles au premier coup d’œil.
Vos applications :
  • > Affinity Photo Windows
  • > Affinity Designer Windows
  • > Affinity Publisher Windows
- Version : 2
#5
Salut, merci pour le tuto c'est super !
Vos applications :
  • > Affinity Photo Windows
  


Atteindre :


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