Redressement de fichiers et perte de netteté

Démarré par GLR30, Novembre 14, 2018, 22:24:04

« précédent - suivant »

GLR30

Bonjour,
Je viens de constater avec -stupéfaction et effroi- que des fichiers TIFF 16bits, après avoir été redressés (sévèrement) dans ViewNX2, voyaient leur netteté également sévèrement diminuée !
J'ai déjà redressé des centaines d'images, notamment des prises de vues animalières saisies dans l'eau, condition où il est très rare d'avoir une horizontalité parfaite, et je n'avais jusqu'alors jamais constaté que cela impliquait une perte de netteté par rapport à la vue d'origine...
Ici, c'est en remettant à la verticale une photo de test d'un sujet très incliné que j'ai fait ce constat, lors d'un redressement de 3 à 4° ; s'il s'avère que redresser une image implique une perte de netteté, peut être que la détérioration est proportionnelle au degré de redressement, et comme dans mes images du terrain je ne redresse jamais de plus de 0,5/0,7° ce phénomène était alors passé inaperçu... ?
Mais s'il se confirme que redressement = perte de netteté, voilà une nouvelle contrainte et déception à mettre à ma « découverte » du numérique... d'autant que j'apprécie(ais) beaucoup la fonction de redressement de ViewNX2 que je trouve très conviviale.
Pour illustrer, voici un crop 100 % d'un fichier d'origine non redressé

GLR30

Et voici ce même fichier après avoir subit un redressement (en fait une inclinaison mais le pb est identique) de 5° ; on constate bien une détérioration de la netteté:

Franciscus Corvinus

Oui, c'est pareil pour toute transformation scalaire (ou pas, d'ailleurs). D'ou l'importance, si tu est aussi exigeant sur les pixels que sur l'horizontalité, de tenir l'appareil comme il faut au déclenchement.

Ce qui serait intéressant, c'est d'essayer la meme manip sur une image tres bruitée. Il y a des chances pour que ca le dénature plutot que de le réduire. D'ou l'importance de débruiter avant toute chose.

psbez

Que faites vous de la règle de "schienplug" ? ( je ne sais plus comment l'écrire ! ) Quand on photographie en "oblique" et avoir tout net, soit il faut diaphragmer +, soit il faut un objectif à décentrement, soit employer une chambre GF...

GLR30

Un recadrage n'occasionne aucune détérioration de la netteté ; alors je pensais qu'il en était de même avec une mise à l'horizontale, puisque -sous ViewNX2 en tout cas- redresser consiste à rogner dans l'image à la façon d'un recadrage simple.
C'est d'ailleurs parce que cette fonction est très pratique sous ViewNX2 que je préfère l'utiliser, plutôt que sous Photoshop où la manipulation me paraît bien moins pratique et conviviale.
Et pour moi, redresser des perspectives avec un objectif à décentrement sur le terrain, et juste rétablir l'horizontalité sur un fichier, sont deux choses totalement différentes.
Mais il est probable que quelque chose m'échappe dans le processus informatique de redressement étant donné que la perte de netteté est ici parfaitement avérée ; et c'est une contrainte de plus sur le terrain, car, comme dit, lors de PdV en affût flottant par exemple, l'horizontalité parfaite est difficile à assurer (même si les défauts sont inférieurs à 0,5° en général), et ce d'autant plus que j'utilise un viseur à angle droit.

Franciscus Corvinus

Citation de: GLR30 le Novembre 15, 2018, 11:14:41(...) et c'est une contrainte de plus sur le terrain, car, comme dit, lors de PdV en affût flottant par exemple, l'horizontalité parfaite est difficile à assurer (même si les défauts sont inférieurs à 0,5° en général), et ce d'autant plus que j'utilise un viseur à angle droit.
De tout coeur avec toi, et pas qu'en affut flottant. C'est devenu une des choses qui me prend le plus de temps a la visée.

GLR30

Citation de: Franciscus Corvinus le Novembre 15, 2018, 12:56:42
De tout coeur avec toi, et pas qu'en affut flottant. C'est devenu une des choses qui me prend le plus de temps a la visée.
Merci.
Et quand, comme moi, on travaille encore majoritairement avec de vielles optiques manuelles, boîtier sous manchon anti bruit, viseur d'angle... et que l'on doit en plus d'assurer la mise au point manuelle, essayer de maintenir l'horizontalité de la prise de vue, et bien...

astrophoto

toute rotation (sauf par quart de tour : 90%, 180% ou 270%), de même qu'un redimensionnement (non entier) ou une translation (d'un nombre non entier de pixels) fait appel à des interpolations entre pixels, ce qui modifie leur valeur et peut générer des variations de netteté apparente plus ou moins prononcés selon l'algo d'interpolation utilisé (d'ailleurs les fonctions de redimensionnement proposent en général une option de réglage de "netteté" : dans PS la fonction de modification de taille d'image propose plusieurs choix dont bicubique plus lisse, bicubique plus net etc.)

Quand je fais mes développements de raw (avec Camera Raw), je fais le redressement en même temps, ce qui doit (logiquement) se faire d'un seul coup avec les interpolations de valeurs RVB destinées à transformer l'image raw (1 couche) en image couleur (3 couches)

:)
Thierry Legault
astrophoto.fr

Verso92

Citation de: astrophoto le Novembre 15, 2018, 19:06:15
Quand je fais mes développements de raw (avec Camera Raw), je fais le redressement en même temps, ce qui doit (logiquement) se faire d'un seul coup avec les interpolations de valeurs RVB destinées à transformer l'image raw (1 couche) en image couleur (3 couches)

Je ne le pense pas : les redressements d'image se font sur l'image dématricée, apparemment (c'est du moins comme ça que fonctionne Capture One, si j'ai bien compris).

GLR30

Merci Thierry pour la réponse.
Puisqu'il va me falloir creuser la question maintenant que je me suis aperçu de la dégradation, je me demandais effectivement si la solution n'était pas de redresser avant tout autre traitement, donc le NEF, alors que jusqu'à présent je redressais le fichier Tiff au final; je viens de vérifier : viewNX2 redresse sans problème les NEF de D7000, D750, D810 mais il semble bien que la dégradation soit déjà présente même si elle est peut être moins perceptible sur un fichier n'ayant subi (presque) aucun traitement, en tout cas de ma part (encore qu'ici ce n'est peut être que le Jpeg encapsulé qui est redressé ?)
Malheureusement, toutes les actions sur les NEF du D7200 sont impossibles avec ce petit logiciel, et ce pour des raisons qui me sont totalement inconnues (j'avais déjà évoqué sur ce  forum cette « incompatibilité » entre ce boîtier et ViewNX2, sans avoir obtenu de réponses définitives...)
Je ne sais pas si la remarque de Verso est avérée, je ne suis, hélas, pas très « pointu » en traitement d'images numériques.

Seb Cst

#10
Salut.
Comment sont faites tes captures d'écran ?
Quelle manip de cadrage a VRAIMENT été faite sur l'image initiale ?
Je te demande cela car je ne travaille pas avec NX. Et car les captures ne sont pas parlantes dans la mesure où l'on ne sait pas ce qu'il advient du fichier initial.

Sur Capture One par exemple, qui a été cité plus haut, on visualise une image retaillée qui peut occuper tout la place initiale.
(En fonction des options de recadrage que tu lui commandes).

Exemple: image non recadrée, 24 mpix. Image recadrée: 24 mpix.
(Basculer c'est recadrer)
Auquel cas elle est agrandie et donc interpolée. Normal qu'elle soit moins nette à 100%...

Bref ton protocole n'est pas suffisamment clair pour établir un diagnostic. De fait la remarque suivante m'interpelle !

Citation de: GLR30 le Novembre 15, 2018, 11:14:41
Un recadrage n'occasionne aucune détérioration de la netteté ; alors je pensais qu'il en était de même avec une mise à l'horizontale, puisque -sous ViewNX2 en tout cas- redresser consiste à rogner dans l'image à la façon d'un recadrage simple.
C'est d'ailleurs parce que cette fonction est très pratique sous ViewNX2 que je préfère l'utiliser, plutôt que sous Photoshop où la manipulation me paraît bien moins pratique et conviviale.
...
Mais il est probable que quelque chose m'échappe dans le processus informatique de redressement étant donné que la perte de netteté est ici parfaitement avérée ;

GLR30

#11
Ce n'est pas le cas lorsque l'on redresse sous VnX : par exemple une image de 6000px ne fait plus que 5800px après redressement et le poids diminue en conséquence. (et c'est pour cela que jusqu'à présent je pensais que cela n'impliquait aucune dégradation, comme un recadrage simple)

Seb Cst

Ok. J'ai bien dit cependant que l'exemple précédent sous Capture One faisait partie des options directes possibles. En aucun cas des figures imposées.

Ce serait bien la première fois qu'un dématriceur se comporte de la sorte, avec cette perte de netteté. M'étonne.
(Ceci étant elle ne paraît pas "handicapante" sur ton exemple.  Si c'est bien du 100% je dirais tout juste perceptible)

GLR30

Mais ViexNX2 n'est un dématriceur. Je m'en sert pour visualiser, sélectionner -et redresser le cas échéant-.
Je l'utilise comme dit au début, pour redresser tout à la fin, les fichiers Tiff traités auparavant sous ACR et PS, parce que cette fonction est très pratique avec ce "soft"

Seb Cst

View NX ne dématrice donc pas comme Capture Nx. Au temps pour moi. J'étais persuadé du contraire.
De fait tu ne contrôles pas grand-chose de ce qui se passe sur le fichier TIFF (ou Jpeg)

GLR30

Citation de: Seb Cst le Novembre 15, 2018, 21:11:19
View NX ne dématrice donc pas comme Capture Nx. Au temps pour moi. J'étais persuadé du contraire.
De fait tu ne contrôles pas grand-chose de ce qui se passe sur le fichier TIFF (ou Jpeg)
Je ne suis pas sûr de comprendre : le fichier Tif est généré par PS.
Puis avec ViewNX2 le redressement a lieu en déplaçant un curseur vers la droite/gauche suivant le sens de la bascule et avec un angle réglable par 0,1°. C'est tout, et c'est bien ce que je trouvais très convivial. Jamais remarqué de perte de netteté jusqu'à présent, mais probablement, d'après ce que je comprends maintenant, parce que les bascules étaient toujours modérées... (mais gênant toutefois de savoir que tout redressement de fichier implique une certaine perte de netteté)

Seb Cst

Je clarifie ce que je voulais dire: c'est avec View NX que tu n'as plus de contrôle quant au "traitement" du fichier recadré.
Puisque le traitement RAW-->TIFF a été fait en amont.
Il semblerait donc que le TIFF recadré subisse une interpolation, d'autant plus visible sur des motifs géométriques simples, aptes à provoquer des moirés.
Enfin ça reste quand même très subtil: sur la barrette où l'on peut "lire une fréquence de coupure" la perte subie est à la limite du lisible.

GLR30

Citation de: Seb Cst le Novembre 15, 2018, 21:21:48
Je clarifie ce que je voulais dire: c'est avec View NX que tu n'as plus de contrôle quant au "traitement" du fichier recadré.
Puisque le traitement RAW-->TIFF a été fait en amont.
Il semblerait donc que le TIFF recadré subisse une interpolation, d'autant plus visible sur des motifs géométriques simples, aptes à provoquer des moirés.
Oui, c'est ce que j'avais compris au final.
D'ailleurs c'est avec des tests de piqué de ce genre que j'ai remarqué cette dégradation, et après leur avoir fait subir un fort redressement.

GLR30

Bon, et bien je viens de vérifier : même pour un redressement du fichier de seulement de 1° la dégradation est catastrophique et ne semble pas proportionnelle comme je le croyais (et l'espérais) avec l'importance de la bascule !
Ici sur ce test sur mires (pas fait dans les « règles de l'art » : distance 42 mètres soit 105x la focale de 400mm, penchée, etc.) mais permettant de bien appréhender la dégradation :
D'abord l'image non redressée

GLR30

Et l'image redressée de 1° environ, avec une perte de netteté évidente :

astrophoto

Citation de: GLR30 le Novembre 15, 2018, 22:12:51
Bon, et bien je viens de vérifier : même pour un redressement du fichier de seulement de 1° la dégradation est catastrophique et ne semble pas proportionnelle comme je le croyais (et l'espérais) avec l'importance de la bascule !

c'est le contraire qui serait surprenant ! Il n'y a aucune raison de penser que la nature et l'effet des interpolations soit fondamentalement différent pour un décalage de 0,5 ou de 1000,5 pixels (une rotation provoque un décalage de pixels proportionnel à l'angle de rotation et à la distance du pixel considéré au centre de rotation)
Thierry Legault
astrophoto.fr

astrophoto

Citation de: Verso92 le Novembre 15, 2018, 20:02:47
Je ne le pense pas : les redressements d'image se font sur l'image dématricée, apparemment (c'est du moins comme ça que fonctionne Capture One, si j'ai bien compris).

la question est : comment le sait-on ? Par ailleurs il y a aussi un réglage d'accentuation, et j'espère au moins que l'opération d'accentuation se fait après le redressement  :)
Thierry Legault
astrophoto.fr

Verso92

Citation de: astrophoto le Novembre 15, 2018, 23:24:21
la question est : comment le sait-on ?

Je l'ai lu dans une discussion ici...

(un retour d'une formation chez Phase One)

jenga

Toutes les transformations géométriques (autres que les quarts de tour et les miroirs) : rotations, changement de taille, correction de distorsion, fluidité, cisaillement, etc., nécessitent un interpolateurs.

L'interpolation peut être mathématiquement correcte et ne générer aucune perte d'information, ou approchée pour réduire le temps d'exécution.

Avant d'utiliser de telles transformations, il faut savoir quel interpolateur elles utilisent et s'assurer qu'il correspond bien à ses besoins.

Par exemple, dans Gimp, l'interpolateur NoHalo me donne entière satisfaction, je ne décèle aucune perte de netteté en l'utilisant, mais les calculs sont longs, plusieurs secondes sur une image de 20 mpix en 16 bits.
Les autres interpolateurs de Gimp sont beaucoup plus rapides, mais imprécis et ils induisent une perte de netteté.

En résumé, il est important de caractériser l'outil qu'on utilise.

astrophoto

Citation de: jenga le Novembre 16, 2018, 19:43:09
L'interpolation peut être mathématiquement correcte et ne générer aucune perte d'information, ou approchée pour réduire le temps d'exécution.

en tout cas, il y a transformation de l'information. Existe-t-il un interpolateur strictement réversible, c'est à dire que si l'on fait une rotation d'un angle X, puis une rotation d'un angle -X, retrouve-t-on exactement les informations de départ ?  :)
Thierry Legault
astrophoto.fr

rsp

Je n'ai pas l'impression qu'il y ait ce phénomène en utilisant DOP / DPL.

chelmimage

Voila une manip par ex.
Je suggère de prendre l'image suivante qui est parfaite.
Ensuite la faire tourner degré par degré.
Au fur et à mesure des rotations on visualise  l'histogramme d'un carré de 100X100 pixels. dans les traits rapprochés.
Au départ, la moyenne est de 127 et l'écart type de 127.(Normal les pixels sont ou noirs ou blancs.)
Ensuite, on fait tourner progressivement l'image de l'angle qu'on veut.
La moyenne de L reste toujours à 127. Par contre l'écart type qui représente le contraste, et donc le flou,  baisse mais reste assez stable vers 105 dès qu'on tourne de 1°et plus ensuite.
Par contre, j'aimerais voir une rotation de 1° sans perte de contraste.
J'ai fait mes rotations avec Photoshop Elément..

GLR30

Bonjour,
Je n'avais jamais utilisé la fonction de redressement de mon Photoshop CS6 (pour les raisons déjà expliquées plus haut), or je viens d'en faire l'essai sur ma mire tests CI (personnalisée;)) : La dégradation de netteté sur l'image basculée de 3° est beaucoup, beaucoup, moins marquée que celle induite par l'usage de ViewNX2 !
Je rappelle que ce sont des crops 100 %; et en les plaçant côte à côte la différence est quasi imperceptible et ne peut être notée que sur les lignes à haute fréquence de la mire, le moulin « Jordans » est restitué quasiment sans aucune perte, de même la portion de carte.
A ce niveau on peut presque douter d'une quelconque baisse de netteté, et si dégradation il y a (chose toujours malvenue certes), elle est ici si faible qu'elle peut être considérée comme négligeable ; en tout cas, la comparaison avec les résultats présentés hier avec ViewNX2 est éloquente .
Ici je dis merci PS...
Voici la mire telle qu'obtenue à la prise de vue (D810, 4/400 à PO, à 50x la focale)

GLR30


Seb Cst

Ben du coup tu sais ce qu'il te reste à faire GLR30 !

[at] Chelmimages: je me disais que c'était un fil pour toi et te remercie très sincèrement du point de vue  puissant et original (pour moi) que tu as apporté à la question initiale.
L'idéal serait en fait de pouvoir faire le test avec ta grille à partir d'un RAW sous C1 par exemple (sortie d'imprimante photographiée). Je suis curieux du résultat.

Franciscus Corvinus

Citation de: astrophoto le Novembre 16, 2018, 20:31:34
en tout cas, il y a transformation de l'information. Existe-t-il un interpolateur strictement réversible, c'est à dire que si l'on fait une rotation d'un angle X, puis une rotation d'un angle -X, retrouve-t-on exactement les informations de départ ?  :)
Si on connait les conditions sur les bords de l'image, oui: la rotation est une transformation linéaire représentée par une matrice 2x2 de déterminant non nul, donc inversible.

Franciscus Corvinus

Citation de: GLR30 le Novembre 16, 2018, 22:28:12
Je n'avais jamais utilisé la fonction de redressement de mon Photoshop CS6 (pour les raisons déjà expliquées plus haut), or je viens d'en faire l'essai sur ma mire tests CI (personnalisée;)) : La dégradation de netteté sur l'image basculée de 3° est beaucoup, beaucoup, moins marquée que celle induite par l'usage de ViewNX2 !
Question stupide: tu sais que ViewNX2 a un mode "approximatif" et un mode "RAW"? J'imagine que tu l'as fait travailler en mode RAW?

Verso92

Citation de: Franciscus Corvinus le Novembre 16, 2018, 23:07:17
Question stupide: tu sais que ViewNX2 a un mode "approximatif" et un mode "RAW"? J'imagine que tu l'as fait travailler en mode RAW?

?

Citation de: GLR30 le Novembre 14, 2018, 22:24:04
Je viens de constater avec -stupéfaction et effroi- que des fichiers TIFF 16bits, après avoir été redressés (sévèrement) dans ViewNX2, voyaient leur netteté également sévèrement diminuée !

chelmimage

Citation de: Seb Cst le Novembre 16, 2018, 22:50:20
L'idéal serait en fait de pouvoir faire le test avec ta grille à partir d'un RAW sous C1 par exemple (sortie d'imprimante photographiée). Je suis curieux du résultat.
Alors une manip:
Tu affiches la mire en zoom 200% en centrant (au moins) la zone affichée sur les lignes verticales rapprochées par ex.
Je ne peux pas afficher toute la mire, mon écran format 4:3 est trop petit, si tu peux le faire c'est mieux.
Ensuite la partie un peu plus délicate: photographier l'écran.
Il faut trouver la combinaison focale/distance de prise de vue qui permet de ne voir que des lignes noires sur blanc.
L'écueil est que le blanc est en fait l'affichage des 3 pixels RVB côte à côte et si on est trop près on distingue  les 3 pixels RVB et pas le blanc. ce qui fait du moiré coloré.
Mais ce n'est pas si difficile que ça. Entre 1 et 2 m de l'écran avec un grand angle on doit approcher de bonnes conditions qui dépendent aussi de la résolution de l'appareil!
De cette façon tu économises une impression papier et la qualité du tracé est meilleure.
Cependant tu n'auras probablement pas une dynamique dans la photo qui donnera des pixels de niveaux 0 et 255.
Mais après tout il suffit de comparer l'écart type de l'histogramme entre, avant rotation, et après rotation.

Seb Cst

Citation de: chelmimage le Novembre 17, 2018, 08:13:11
Alors une manip:
Tu affiches la mire en zoom 200% en centrant (au moins) la zone affichée sur les lignes verticales rapprochées par ex.
Je ne peux pas afficher toute la mire, mon écran format 4:3 est trop petit, si tu peux le faire c'est mieux.
Ensuite la partie un peu plus délicate: photographier l'écran.
Il faut trouver la combinaison focale/distance de prise de vue qui permet de ne voir que des lignes noires sur blanc.
L'écueil est que le blanc est en fait l'affichage des 3 pixels RVB côte à côte et si on est trop près on distingue  les 3 pixels RVB et pas le blanc. ce qui fait du moiré coloré.
Mais ce n'est pas si difficile que ça. Entre 1 et 2 m de l'écran avec un grand angle on doit approcher de bonnes conditions qui dépendent aussi de la résolution de l'appareil!
De cette façon tu économises une impression papier et la qualité du tracé est meilleure.
Cependant tu n'auras probablement pas une dynamique dans la photo qui donnera des pixels de niveaux 0 et 255.
Mais après tout il suffit de comparer l'écart type de l'histogramme entre, avant rotation, et après rotation.

Je viens de faire l'essai et ça marche plutôt bien. Pour améliorer le fichier de départ j'ai poussé le contraste de manière à caler au mieux les extrémités de l'histogramme, et j'ai converti le fichier en noir et blanc. Il faut s'éloigner un peu de l'écran à la prise de vue si on ne veut pas voir  la trame RVB.
J'ai passé le tout à la moulinette RAW de Capture One.
Publication des essais dans la foulée. Conclusion intéressante, par rapport à View NX2.

Seb Cst

Après réflexion je me dis que les barrettes ne sont pas assez rapprochées sur la photo issue de la prise d'écran pour mesurer une perte de netteté lors de la bascule.
Problème de protocole. L'idée paraît séduisante mais il faudrait une prise de vue donnant une trame allant jusqu'à la fréquence de coupure.

En l'état, l'histogramme ne bouge pas en basculant de quelques petits degrés sous Capture One. Mais cela n'est guère étonnant si l'on considère que l'écart entre les rayures est trop important.
Je ne vois donc pas l'intérêt de publier des résultats inaboutis.

Seb Cst

T'as plus qu'à fabriquer une mire Blanc/Noir avec des motifs à décroissance géométrique... Histoire qu'on atteigne la fréquence de coupure. ;D
Moi je ne m'en sens pas le courage.

Remarque: si tu as déjà constaté un resserrement de l'histogramme  avec ta mire actuelle (de 127 à 105 de rayon c'est énorme) c'est bien qu'il y a un "problème" important avec la bascule, car sous C1 l'histogramme est désespérément stable...

chelmimage

J'ai fait la manip en me rapprochant de la fréquence de coupure. C'est simple il suffit de s'éloigner plus ou moins.
Voici une première photo jpeg brut. Le problème par rapport à la mire seule est que d'origine il y a du noir du blanc mais aussi du gris.
Pour ne pas en avoir il faudrait être en phase parfaite entre les pixels de l'appareil photo et les lignes de la mire. 2 pixels d'appareil photo pour le trait noir 2 pixels pour le trait blanc.
Mais c'est impossible il faut faire avec le gris!
Donc c'est la photo avant rotation. On voit qu'il y a 4 "bosses" pour l'histogramme.
Ensuite je vais donner l'extrait après rotation de 1 ° et son histogramme. On voit que les bosses sont plus écrasées signe d'une plus grande dispersion de l'histogramme et donc d'un accroissement du flou.
Il y a exactement 10 pixels par couple trait noir/trait blanc (hasard!)

philooo

Citation de: astrophoto le Novembre 16, 2018, 20:31:34Existe-t-il un interpolateur strictement réversible, c'est à dire que si l'on fait une rotation d'un angle X, puis une rotation d'un angle -X, retrouve-t-on exactement les informations de départ ?  :)
C'est exactement la bonne question :) .

Vu autrement, si quelqu'un ici a les compétences pour écrire un script qui fait faire 1000 rotations de x puis autant de (-x), ou encore 3600 rotations de 0,1 degré, même si ça doit prendre toute la nuit à l'ordi je suis curieux du résultat...

chelmimage

Citation de: philooo le Novembre 17, 2018, 19:15:18
C'est exactement la bonne question :) .

]Bon pour voir l'effet d'une modification de dimension
je suis parti une image 320X320 que j'ai agrandie à 331X331 puis réduit à 320X320 à nouveau..
Je crois que l'histogramme n'aime pas beaucoup ça ne se voit pas trop sur l'image..
Voici l'original 320X320 et l'agrandie  331X331 et leur  histogramme

chelmimage


Jean-Claude

Ii est rigoureusement impossible d'avoir une dégradation visible de la netteté juste en faisant une remise à niveau de quelques degrés.

S' c'est le cas celà signifie que quelque chose cloche par ailleurs durant cette opération, trouver vraiment quoi demanderait à être assis à côtés de l'opérateur qui en est victime.

Le mieux pour celui qui a ce problème,serait de s'assoir à côté de quelqu'un qui ne l'a pas et bien décortiquer la manière de faire.  :)

chelmimage

Citation de: Jean-Claude le Novembre 18, 2018, 19:42:35
Le mieux pour celui qui a ce problème,serait de s'assoir à côté de quelqu'un qui ne l'a pas et bien décortiquer la manière de faire.  :)
j'espère que tu peux être ce quelqu'un.
Donc tu prends un petit extrait (400X400 max)* dense en information et net d'une de tes photos. Et tu l'inclines d'un ou deux degrés,
et nous donnes les 2 extraits, avant et après inclinaison.
On verra bien ...
*il faut limiter la surface de l'extrait pour que la contrainte des 360 ko max ne t'obliges pas à faire une compression jpg pour afficher les résultats sur le forum et donc en dégrader l'aspect. Ce qui pourrait contrarier ta démonstration.

Verso92

Citation de: Jean-Claude le Novembre 18, 2018, 19:42:35
Ii est rigoureusement impossible d'avoir une dégradation visible de la netteté juste en faisant une remise à niveau de quelques degrés.

Oui (à condition que la rotation soit faite avec un angle multiple de 90°).

chelmimage

Citation de: Verso92 le Novembre 18, 2018, 20:46:41
Oui (à condition que la rotation soit faite avec un angle multiple de 90°).
Veux tu dire qu'il y a toujours une dégradation visible sauf si on fait une rotation d'un angle multiple de 90°?
ou autre chose?

jenga

Citation de: astrophoto le Novembre 16, 2018, 20:31:34
en tout cas, il y a transformation de l'information. Existe-t-il un interpolateur strictement réversible, c'est à dire que si l'on fait une rotation d'un angle X, puis une rotation d'un angle -X, retrouve-t-on exactement les informations de départ ?  :)
En pratique, non (sauf pour les quarts de tour).

Comme indiqué par Franciscus, la rotation dans un plan est effectuée au moyen d'une matrice 2x2 (pour un angle a et une distance R au centre de rotation, les coefficients sont R cos a, R sin a, -R sin a, R cos a) ; pour chaque pixel source, la multiplication de son vecteur coordonnées par cette matrice fournit la position du pixel résultat correspondant.

Mais, en général, les coordonnées de ce résultat ne sont pas des nombres entiers: par exemple on trouvera x=120,489785 et y=484,547892. Il faut donc un interpolateur pour trouver les valeurs de l'image (par exemple RGB) en ce point de coordonnées non entières, en connaissant les valeurs aux coordonnées entières.

Sans entrer dans le détail du traitement du signal, il découle du théorème d'échantillonnage que les valeurs aux coordonnées non entières peuvent être retrouvées exactement en convoluant les pixels connus (aux coordonnées entières) avec une fonction sinc(x) ("sinc " signifie "sinus cardinal", soit (sinus x) / x ), décalée de la distance adéquate (à un coefficient près, l'écart entre le point cible et la coordonnée entière la plus proche)

Cet interpolateur étant exact, tout autre est inexact.

Mais deux obstacles s'opposent à l'interpolation exacte par sinc:
-la théorie de l'échantillonnage considère des signaux périodiques (se répétant identiquement à eux-mêmes à l'infini), or nos images ne le sont pas: elles ont une certaine taille, par exemple 2000x1000, et rien autour; elles ne se répètent pas à l'infini.

-si on contourne l'obstacle ci-dessus, par exemple en décrétant que notre image se répète telle quelle à l'infini (en la collant par pensée juste à côté d'elle même, un nombre infini de fois), on ne peut toujours pas utiliser en pratique l'interpolateur sinc(x). En effet, ce dernier a des valeurs non nulles jusqu'à x infini; il faut donc, en toute rigueur, un nombre d'opérations infini pour calculer chaque pixel de l'image.

Donc, le seul interpolateur rigoureusement exact n'est pas utilisable sur une machine physique. Bien entendu, il existe toutes sortes d'interpolateurs performants, ce qui permet de choisir le meilleur compromis précision / temps de calcul, éventuellement en fonction du type d'image concerné.

J'ai déjà cité le "NoHalo" de Gimp, que je trouve vraiment excellent en pratique (mais je n'ai pas étudié son fonctionnement).

Pour aller plus loin, voir par exemple:
https://tel.archives-ouvertes.fr/tel-00206144/document


Verso92

Citation de: chelmimage le Novembre 18, 2018, 21:04:12
Veux tu dire qu'il y a toujours une dégradation visible sauf si on fait une rotation d'un angle multiple de 90°?
ou autre chose?

Il y aura toujours une dégradation, c'est mathématique.

Après, sera-t-elle vraiment visible/gênante... c'est une autre histoire.

GLR30

Bonjour,
Je ne peux que répéter les propos de mon post 27 : je viens de refaire un essai avec CS6 en basculant un fichier de 5° sur la droite, et la différence entre l'original et le basculé est quasi indiscernable.
Pourtant en passant à 200 % des pixels on constate bien que quelques micro-détails (en fait des pixels) ont « changé » de disposition sur le moulin... sans que l'on puisse parler de perte de netteté à ce stade.
Si cela vous intéresse vous pouvez télécharger les 2 fichiers suivants et les comparer (à 200%) car ici ils sont à 100 %

GLR30


freemanjazz

Une petite remarque....
Pourquoi s'entêter a utiliser View NX2 qui n'est plus suivis et ne par utiliser la dernière version du dématriceur NIKON : Capture NX-D version 1.5 qui fonctionne tout a fait correctement ???  ???

chelmimage

Citation de: Verso92 le Novembre 18, 2018, 23:16:14
Il y aura toujours une dégradation, c'est mathématique.

Après, sera-t-elle vraiment visible/gênante... c'est une autre histoire.
C'est exactement mon avis.
C'est pour ça que j'ai utilisé un motif très répétitif qui fait que si on voit mal la perte de netteté on peut quand même la mesurer.
Et là c'est indiscutable.

seba

#51
Citation de: jenga le Novembre 18, 2018, 23:06:41
En pratique, non (sauf pour les quarts de tour).

Comme indiqué par Franciscus, la rotation dans un plan est effectuée au moyen d'une matrice 2x2 (pour un angle a et une distance R au centre de rotation, les coefficients sont R cos a, R sin a, -R sin a, R cos a) ; pour chaque pixel source, la multiplication de son vecteur coordonnées par cette matrice fournit la position du pixel résultat correspondant.

Mais, en général, les coordonnées de ce résultat ne sont pas des nombres entiers: par exemple on trouvera x=120,489785 et y=484,547892. Il faut donc un interpolateur pour trouver les valeurs de l'image (par exemple RGB) en ce point de coordonnées non entières, en connaissant les valeurs aux coordonnées entières.

Sans entrer dans le détail du traitement du signal, il découle du théorème d'échantillonnage que les valeurs aux coordonnées non entières peuvent être retrouvées exactement en convoluant les pixels connus (aux coordonnées entières) avec une fonction sinc(x) ("sinc " signifie "sinus cardinal", soit (sinus x) / x ), décalée de la distance adéquate (à un coefficient près, l'écart entre le point cible et la coordonnée entière la plus proche)

Cet interpolateur étant exact, tout autre est inexact.

Mais deux obstacles s'opposent à l'interpolation exacte par sinc:
-la théorie de l'échantillonnage considère des signaux périodiques (se répétant identiquement à eux-mêmes à l'infini), or nos images ne le sont pas: elles ont une certaine taille, par exemple 2000x1000, et rien autour; elles ne se répètent pas à l'infini.

-si on contourne l'obstacle ci-dessus, par exemple en décrétant que notre image se répète telle quelle à l'infini (en la collant par pensée juste à côté d'elle même, un nombre infini de fois), on ne peut toujours pas utiliser en pratique l'interpolateur sinc(x). En effet, ce dernier a des valeurs non nulles jusqu'à x infini; il faut donc, en toute rigueur, un nombre d'opérations infini pour calculer chaque pixel de l'image.

Donc, le seul interpolateur rigoureusement exact n'est pas utilisable sur une machine physique. Bien entendu, il existe toutes sortes d'interpolateurs performants, ce qui permet de choisir le meilleur compromis précision / temps de calcul, éventuellement en fonction du type d'image concerné.

J'ai déjà cité le "NoHalo" de Gimp, que je trouve vraiment excellent en pratique (mais je n'ai pas étudié son fonctionnement).

Pour aller plus loin, voir par exemple:
https://tel.archives-ouvertes.fr/tel-00206144/document

Mazette ! Ca c'est de l'argumentaire ! Tu es prof de maths ou quelque chose comme ça ?

seba

Et si on tourne l'image de 45° par exemple ? Le pas des pixels sera différent.

seba

Voici une mire (traits blancs et noirs de 1 pixel de large), rotation 0° , 5° et 45°.
A première vue, quelle que soit l'interpolation, il me semble impossible que la résolution soit conservée.
Pour qu'elle le soit, il faudrait d'abord redimensionner l'image avant de faire la rotation.

chelmimage

Citation de: jenga le Novembre 18, 2018, 23:06:41
En pratique, non (sauf pour les quarts de tour)...
.........................................;;;
Donc, le seul interpolateur rigoureusement exact n'est pas utilisable sur une machine physique. Bien entendu, il existe toutes sortes d'interpolateurs performants, ce qui permet de choisir le meilleur compromis précision / temps de calcul, éventuellement en fonction du type d'image concerné.

J'ai déjà cité le "NoHalo" de Gimp, que je trouve vraiment excellent en pratique (mais je n'ai pas étudié son fonctionnement).

Pour aller plus loin, voir par exemple:
https://tel.archives-ouvertes.fr/tel-00206144/document
Voila qui élève considérablement le niveau de la discussion! ::).... ::)

seba

Citation de: seba le Novembre 19, 2018, 08:00:40
Pour qu'elle le soit, il faudrait d'abord redimensionner l'image avant de faire la rotation.

Et y rester (ne pas revenir à la définition d'origine) car sinon le résultat sera tout aussi mauvais.

jenga

Citation de: seba le Novembre 19, 2018, 07:30:12
Mazette ! Ca c'est de l'argumentaire ! Tu es prof de maths ou quelque chose comme ça ?
Non, bien que j'aie donné quelques cours en fac. Mais à un moment de ma carrière j'ai développé des machines d'inspection automatique de circuits intégrés, et cela impliquait entre autres de traiter des images dont les composantes spectrales étaient proches de la limite de Shannon, ce qui implique de faire très attention ux interpolations.

jenga

Citation de: chelmimage le Novembre 19, 2018, 08:32:35
Voila qui élève considérablement le niveau de la discussion! ::).... ::)
Je suis désolé si mon post manquait de clarté. Sur le fond, ce fil traite d'un sujet qu'il est impossible de comprendre vraiment sans entrer dans des notions un peu techniques. Seba vient de présenter un exemple qui illustre parfaitement ce problème, je vais essayer de le commenter clairement.

jenga

Citation de: seba le Novembre 19, 2018, 08:00:40
Voici une mire (traits blancs et noirs de 1 pixel de large), rotation 0° , 5° et 45°.
A première vue, quelle que soit l'interpolation, il me semble impossible que la résolution soit conservée.
Pour qu'elle le soit, il faudrait d'abord redimensionner l'image avant de faire la rotation.




Les calculs des rotations me semblent corrects à première vue, mais ne correspondent probablement pas à ce que tu attendais. La clé du problème, c'est que la mire de gauche (N/B au pas de 2 pixels) ne peut pas être la photo d'une mire N/B "parfaite" (avec des transitions noir-blanc abruptes) au pas de 2 pixels.

En effet, si l'on dispose d'un capteur dont les pixels sont au pas de 1 (en unités normalisées), la fréquence spatiale la plus élevée que l'on puisse acquérir est 0,5, c'est-à-dire une sinusoïde au pas de 2. Un signal rectangulaire au pas de 2 contient des fréquences (harmoniques) beaucoup plus élevées, qui seraient même infinies si les transitions étaient verticales.

J'ai représenté ci-après en 1 le profil d'une colonne de ton image numérique, par exemple la colonne du milieu. C'est une suite de noirs et de blancs purs, au pas de 2.
Si cette colonne sortait d'un capteur (en laissant de côté la différence entre photosite et pixel), l'image physique projetée sur ce capteur aurait eu le profil présenté en 2 : c'est une sinusoïde de pas 2, soit fréquence 0.5.

Il est impossible d'avoir des transitions plus raides sans introduire de fréquence plus élevée, qui sont hors critère d'échantillonnage. Cette image (courbe 2) est donc bien l'image physique, au niveau capteur, que le capteur numérise pour produire le profil 1.

Dans l'image tournée de 45°, cette colonne du milieu est maintenant orientée le long de la diagonale bas gauche / haut droit. Le long de cette diagonale les pixels sont espacés de 1,414 environ et non de 1.
Par conséquent, l'interpolateur doit simuler l'acquisition de la colonne représentée en 2, avec un pas de pixels multiplié par 1,414. C'est ce qui est représenté sur mon schéma 3, où la graduation du bas représente la position des pixels le long de la diagonale.

Les valeurs successives des pixels le long de cette diagonale sont donc les valeurs des points en rouge du schéma 3. Cela correspond en gros à ton image de droite.

Pourquoi cela ne correspond-il pas à ce qu'on attendait intuitivement?
L'image de départ était à la limite du critère de Shannon dans la direction verticale (fréquence spatiale 1/2); après rotation, comme on l'a vu plus haut, l'échantillonnage dans cette direction s'effectue avec des pixels plus espacés que 1.

Par conséquent, les fréquences spatiales le long de cette direction dépassent le critère de Shannon et cela introduit du moiré; celui-ci est particulièrement visible sur l'image tournée de 5 degrés.

seba

OK merci.
Cela dit je n'ai pas tout compris.
Même image qu'avant mais définition doublée (avec toujours un signal carré - blanc et noir mais sur 2 pixels de large).
Là ça va déjà beaucoup mieux.

Jean-Claude

il y a le théoricien déconnecté de la vraie vie pour qui plus rien ne va plus quand la quatrième décimale n'est plus exacte

et il y a le photographe qui ne voit pas de différence sur ses grands formats à moins de 10% d'écart  :D

chelmimage

Citation de: jenga le Novembre 19, 2018, 10:24:10
Je suis désolé si mon post manquait de clarté. Sur le fond, ce fil traite d'un sujet qu'il est impossible de comprendre vraiment sans entrer dans des notions un peu techniques. Seba vient de présenter un exemple qui illustre parfaitement ce problème, je vais essayer de le commenter clairement.
Non, il ne manquait pas de clarté. J'ai mis des smileys pour marquer qu'un sujet peu abordé dans le traitement d'image courant pouvait donner lieu à des développements mathématiques complexes.
J'ai parcouru le document. Et j'ai au moins compris les images exemples.. Dans lesquelles on voit que les mathématiques peuvent donner des résultats plus ou moins intéressants et proches de la réalité.

Seb Cst

Pour une fois qu'un spécialiste de la théorie du signal donne une réponse à une question d'ordre technique, Jean Claude nous en livre une autre à la hauteur de son immense talent...

Sinon, j'ai justement une question au spécialiste  Jenga: dans la mesure où nous partions d'un protocole expérimental basé sur l'analyse d'un histogramme, y a-t-il un moyen expérimental plus fiable que l'écart-type, tout en restant facile à mettre en œuvre pour le quidam photographe, pour analyser (mesurer) la perte de netteté ?
Disons à partir de motifs conçus dans l'esprit de ceux proposés par Chelmimage ?
Car justement les publications de Chelmimage avec sa trame illustrent illustrent un écart-type resté stable avec une forme d'histogramme prouvant le "lissage" du contraste. (Un Dirac qui aurait pris un coup de marteau). Comment obtenir la fonction de densité nécessaire à la bonne lecture ?

Le jugement oculaire à la louche étant bien sûr un pis-aller...

PS: le document en lien, c'est ta propre thèse ?

Jean-Claude

Une image de la vraie vie n'a rien à voir avec une réseau de lignes blaches et noires de 1 pixel, ou alors rarement que sur des des zones faibles ou l'on a de toute façon du moiré si l'objectif suit  :)

titisteph

Dans la vraie vie, j'ai souvent constaté, par exemple, qu'une correction de la distorsion d'une optique en utilisant Photoshop faisait perdre de la netteté. En revanche, quand on fait la même chose dans C1, la perte était en pratique, invisible.

De même quand on utilise l'outil de déformation de PS : perte de piqué.

jenga

Citation de: Jean-Claude le Novembre 19, 2018, 13:53:08
il y a le théoricien déconnecté de la vraie vie pour qui plus rien ne va plus quand la quatrième décimale n'est plus exacte

et il y a le photographe qui ne voit pas de différence sur ses grands formats à moins de 10% d'écart  :D
Dans le cadre de la photo, il ne s'agit bien entendu pas de garantir la 4ème décimale, mais de comprendre pourquoi certains phénomènes visibles et gênants peuvent apparaître.

Cela étant, il me semble que tu nous as dit, sur un autre fil, avoir besoin d'images 16 bits pour ne pas dégrader ton processus.
16 bits, c'est bien 5 chiffres significatifs, non? ;)


jenga

#66
Citation de: chelmimage le Novembre 19, 2018, 14:05:13
Non, il ne manquait pas de clarté. J'ai mis des smileys pour marquer qu'un sujet peu abordé dans le traitement d'image courant pouvait donner lieu à des développements mathématiques complexes.
J'ai parcouru le document. Et j'ai au moins compris les images exemples.. Dans lesquelles on voit que les mathématiques peuvent donner des résultats plus ou moins intéressants et proches de la réalité.
Merci.
Tes exemples illustrent très bien la difficulté du problème, et la dispersion de l'histogramme représente bien ce que tu cherches à analyser. La difficulté principale est d'identifier ce qu'on attend du traitement: je vais essayer de m'expliquer sur la base de l'exemple de seba.

En gros, je crois qu'on attend non pas la vraie image, mais une image accentuée, avec des fronts artificiellement raidis.

jenga

Citation de: Seb Cst le Novembre 19, 2018, 14:25:18
Jenga: dans la mesure où nous partions d'un protocole expérimental basé sur l'analyse d'un histogramme, y a-t-il un moyen expérimental plus fiable que l'écart-type, tout en restant facile à mettre en œuvre pour le quidam photographe, pour analyser (mesurer) la perte de netteté ?
Disons à partir de motifs conçus dans l'esprit de ceux proposés par Chelmimage ?
Car justement les publications de Chelmimage avec sa trame illustrent illustrent un écart-type resté stable avec une forme d'histogramme prouvant le "lissage" du contraste. (Un Dirac qui aurait pris un coup de marteau). Comment obtenir la fonction de densité nécessaire à la bonne lecture ?

Le jugement oculaire à la louche étant bien sûr un pis-aller...

PS: le document en lien, c'est ta propre thèse ?
Je ne suis pas spécialiste en traitement du signal, j'en ai juste utilisé à un certain moment. Le document n'est pas ma thèse, je ne me serais pas permis de m'autociter sans prévenir.

La question que tu poses est difficile. Comme je l'ai répondu à chelmimage, la difficulté principale est d'identifier ce qu'on attend du traitement; il me semble qu'on attend non pas la vraie image au sens mathématique, mais une image accentuée, avec des fronts artificiellement raidis.

Il me semble qu'en pratique, il faudrait caractériser les différents interpolateurs dont on dispose, au moyen de mires de test et surtout de photographies de mires, en se mettant dans les conditions de netteté maximale de son matériel, mais surtout sans accentuer l'image.

(en effet, l'accentuation est une cuisine infâme qui introduit localement des hautes fréquences, au-delà de la fréquence de Nyquist: effectuer des traitements géométriques sur une telle image introduit de l'aliasing et donc des résultats imprévisibles, peu reproductibes, comme expliqué dans ma première réponse à seba.)

Puis on effectue une rotation de n'importe quel angle autre que des quarts de tour, ou une augmentation de la résolution d'un facteur autre qu'une puissance de 2 (par exemple résolution x1.7).

Ensuite on décide qualitativement si le résultat est acceptable sur ces images: visuellement, et en comparant les histogrammes. Comme on cherche en général quelque chose de plaisant plutôt que mathématiquement exact (ce qui est normal, on fait de la photo et pas des maths), chacun aura ses propres critères.

Idéalement, une fois qu'on a choisi l'interpolateur qui nous convient, on paramètre son logiciel pour qu'il l'utilise dans toutes les transformations géométriques: rotations, mises à l'échelle, corrections de distorsion, cisaillements, translations, fluidité, etc. Je dis "idéalement", parce que je ne sais pas si c'est possible avec tous les outils (j'utilise Gimp pour ma part).

Et dans le processus de PT, il faut bien veiller à appliquer l'accentuation après les traitements géométriques plutôt qu'avant.

jenga

#68
Citation de: seba le Novembre 19, 2018, 13:08:16
Même image qu'avant mais définition doublée (avec toujours un signal carré - blanc et noir mais sur 2 pixels de large).
Là ça va déjà beaucoup mieux.

Dans ce nouvel exemple les fréquences spatiales sont divisées par 2.  J'ai tracé ci-dessous:

en 1: la valeur des pixels le long de la colonne centrale

en 2: l'image projetée sur le capteur qui aurait donné ces valeurs (en supposant que le capteur a des pixels et non des photosites); comme dans l'exemple précédent, cette image réelle ne peut pas avoir de fronts raides, qui seraient des fréquences au-delà du critère de Shannon.
Cette "image réelle" est une sinusoïde de pas 4, donc de fréquence 0.25.
(Cette sinusoïde sort de l'échelle 0-100%. Je néglige ce détail à ce stade, les interpolateurs savent gérer cela).

en 3: les valeurs selon la même direction de la mire, après rotation de 45°. Cette direction étant maintenant alignée le long de la diagonale, les pixels sont espacés de 1.414.
Le pas de la sinusoïde est donc, après rotation, environ 2.8 pixels (fréquence 0.35), ce qui est compatible avec le critère de Shannon: il n'y a pas d'aliasing, pas de moiré.
Les valeurs le long de cette diagonale, après rotation, sont repérées par les points rouges.

Observation
Les valeurs en rouge ne correspondent pas bien à ce que tu obtiens: dans les deux cas on note l'apparition de niveaux de gris intermédiaires entre le noir et le blanc. Par contre, tu obtiens des noirs et des blancs identiques à chaque période, alors que le profil 3 ci-dessous montre des valeurs max et min différentes à chaque pas de la sinusoïde, parce que le pas de celle-ci n'est pas un multiple du pas des pixels.
Deux causes peuvent expliquer cette différence:

-j'ai raisonné sur des pixels ponctuels pour simplifier; prendre en compte la largeur réelle des pixels réduit l'effet de la désynchronisation entre le pas des pixels et celui du motif

-l'interpolateur que tu utilises ajoute un peu d'accentuation (ça peut être inclus dans les coefficients du filtre qu'il utilise), pour obtenir des résultats plus plaisants, ce qui remonte les bosses (et baisse les creux), dans ce cas jusqu'aux valeurs maxi / mini.
Comme ce sont des traitements non linéaires et non spatialement invariants, les résultats ne sont pas toujours prévisibles; on note du moiré sur l'image tournée de 5°, je ne sais pas si c'est dû à l'interpolateur ou à la compression jpg de ton image.

Conclusion
D'un point de vue mathématique, les valeurs en rouge (avec des gris intermédiaires et des creux et pics différents à chaque pas) sont correctes, car elles correspondent bien à un échantillonnage du motif représenté en 2 par la trame de pixels tournée de 45°.

Les valeurs que tu obtiens ne sont pas tout-à-fait exactes d'un point de vue mathématique, mais elles seront jugées plus "plaisantes" d'un point de vue photographique (et c'est bien ce qui compte, on fait de la photo), à l'exception peut-être de l'éventuel problème de moiré sur l'image tournée de 5°.

Nous sommes habitués à des images artificiellement accentuées, c'est-à-dire avec des ajouts de hautes fréquences, supérieures au critère de Shannon. Cela complique considérablement la tâche des interpolateurs qui, idéalement, devraient supprimer l'accentuation artificielle (mais c'est impossible, bien sûr), interpoler, puis ré-accentuer.

seba


GLR30

Oui, merci beaucoup à jenga pour avoir pris le temps de ces explications théoriques très approfondies, ainsi qu'aux autres contributeurs.
Et en pratique, j'abandonne définitivement l'outil redressement de ViewNX2.

Seb Cst

Citation de: jenga le Novembre 20, 2018, 10:27:53
Dans ce nouvel exemple les fréquences spatiales sont divisées par 2.  J'ai tracé ci-dessous:

en 1: la valeur des pixels le long de la colonne centrale

en 2: l'image projetée sur le capteur qui aurait donné ces valeurs (en supposant que le capteur a des pixels et non des photosites); comme dans l'exemple précédent, cette image réelle ne peut pas avoir de fronts raides, qui seraient des fréquences au-delà du critère de Shannon.
Cette "image réelle" est une sinusoïde de pas 4, donc de fréquence 0.25.
(Cette sinusoïde sort de l'échelle 0-100%. Je néglige ce détail à ce stade, les interpolateurs savent gérer cela).

en 3: les valeurs selon la même direction de la mire, après rotation de 45°. Cette direction étant maintenant alignée le long de la diagonale, les pixels sont espacés de 1.414.
Le pas de la sinusoïde est donc, après rotation, environ 2.8 pixels (fréquence 0.35), ce qui est compatible avec le critère de Shannon: il n'y a pas d'aliasing, pas de moiré.
Les valeurs le long de cette diagonale, après rotation, sont repérées par les points rouges.

Observation
Les valeurs en rouge ne correspondent pas bien à ce que tu obtiens: dans les deux cas on note l'apparition de niveaux de gris intermédiaires entre le noir et le blanc. Par contre, tu obtiens des noirs et des blancs identiques à chaque période, alors que le profil 3 ci-dessous montre des valeurs max et min différentes à chaque pas de la sinusoïde, parce que le pas de celle-ci n'est pas un multiple du pas des pixels.
Deux causes peuvent expliquer cette différence:

-j'ai raisonné sur des pixels ponctuels pour simplifier; prendre en compte la largeur réelle des pixels réduit l'effet de la désynchronisation entre le pas des pixels et celui du motif

-l'interpolateur que tu utilises ajoute un peu d'accentuation (ça peut être inclus dans les coefficients du filtre qu'il utilise), pour obtenir des résultats plus plaisants, ce qui remonte les bosses (et baisse les creux), dans ce cas jusqu'aux valeurs maxi / mini.
Comme ce sont des traitements non linéaires et non spatialement invariants, les résultats ne sont pas toujours prévisibles; on note du moiré sur l'image tournée de 5°, je ne sais pas si c'est dû à l'interpolateur ou à la compression jpg de ton image.

Conclusion
D'un point de vue mathématique, les valeurs en rouge (avec des gris intermédiaires et des creux et pics différents à chaque pas) sont correctes, car elles correspondent bien à un échantillonnage du motif représenté en 2 par la trame de pixels tournée de 45°.

Les valeurs que tu obtiens ne sont pas tout-à-fait exactes d'un point de vue mathématique, mais elles seront jugées plus "plaisantes" d'un point de vue photographique (et c'est bien ce qui compte, on fait de la photo), à l'exception peut-être de l'éventuel problème de moiré sur l'image tournée de 5°.

Nous sommes habitués à des images artificiellement accentuées, c'est-à-dire avec des ajouts de hautes fréquences, supérieures au critère de Shannon. Cela complique considérablement la tâche des interpolateurs qui, idéalement, devraient supprimer l'accentuation artificielle (mais c'est impossible, bien sûr), interpoler, puis ré-accentuer.

Salut.
Je m'associe avec 24h de décalage aux remerciements précédents destinés à Jenga. Cette réponse m'a permis,  au passage, de réfléchir au fait que j'avais commencé par fabriquer un fichier avec contraste aggravé à la lisière de la fréquence de coupure (à partir des mires de Chelm'), avant de tenter une estimation de la perte de netteté. Cette démarche peut introduire un sacré biais lors de l'interprétation.

Il n'y a plus qu'à se lancer dans la lecture de la thèse (!), dont la structure m'a semblé très intéressante. Mais c'est pas aussi fluide qu'un roman... (euphémisme)  ;)

rsp

Très intéressant !
Merci jenga.
Je pense que dans le cas de réalisation de ces opérations sur un RAW, l'accentuation n'est faite qu'en fin de processus, au moment de la conversion.

Tonton-Bruno

Citation de: rsp le Novembre 22, 2018, 21:51:27
Je pense que dans le cas de réalisation de ces opérations sur un RAW, l'accentuation n'est faite qu'en fin de processus, au moment de la conversion.
Je le pense aussi, et c'est sans doute pour cela que je ne constate aucune perte au redressement d'un raw sous Photoshop Adobe Camera Raw, même quand je photographie une mire au D850.
Je me suis abstenu de participer à cette discussion depuis le début, car à mon avis elle démontre juste que si on utilise le mauvais outil sur le mauvais fichier, on obtient forcément le mauvais résultat.

Jean-Claude

Citation de: jenga le Novembre 20, 2018, 10:21:14
Dans le cadre de la photo, il ne s'agit bien entendu pas de garantir la 4ème décimale, mais de comprendre pourquoi certains phénomènes visibles et gênants peuvent apparaître.

Cela étant, il me semble que tu nous as dit, sur un autre fil, avoir besoin d'images 16 bits pour ne pas dégrader ton processus.
16 bits, c'est bien 5 chiffres significatifs, non? ;)
[/quote
L'histoire des fichiers 16bit est une autre histoire et ne se voit qu'en cas de fort post traitement, l'avantage d'un fichier 16bit par rapport à du 14 ou du 12 réside dans la réserve de post traitement.
La réserve de post traitement entre une sortie imprimante en 8bit et le fichier de départ 12 bit est de x16, en 14bit de x64, avec du 16bit elle est de x256 et là tout est d'un coups permis. on en est doc pas à la 4 ème décimale, mais juste à une réserve de post traitement sans dégradation 4x plus importante.

Franciscus Corvinus

Citation de: Jean-Claude le Décembre 09, 2018, 15:12:43
Citation de: jenga le Novembre 20, 2018, 10:21:14
Dans le cadre de la photo, il ne s'agit bien entendu pas de garantir la 4ème décimale, mais de comprendre pourquoi certains phénomènes visibles et gênants peuvent apparaître.

Cela étant, il me semble que tu nous as dit, sur un autre fil, avoir besoin d'images 16 bits pour ne pas dégrader ton processus.
16 bits, c'est bien 5 chiffres significatifs, non? ;)
L'histoire des fichiers 16bit est une autre histoire et ne se voit qu'en cas de fort post traitement, l'avantage d'un fichier 16bit par rapport à du 14 ou du 12 réside dans la réserve de post traitement.
La réserve de post traitement entre une sortie imprimante en 8bit et le fichier de départ 12 bit est de x16, en 14bit de x64, avec du 16bit elle est de x256 et là tout est d'un coups permis. on en est doc pas à la 4 ème décimale, mais juste à une réserve de post traitement sans dégradation 4x plus importante.

Seulement si tu supposes ce qui se cache dans ces bit supplémentaires est du signal et pas du bruit. Que je sache, aucun appareil standard n'en est capable. Pour un adepte de la vraie vie qui ne s'occupe pas des écarts de moins de 10%, c'est étonnemment théorique et pointilleux.

Donc je te suggere de mettre une photo traitée en 16 bits d'origine, une photo tronquée a 12 bits, et une photo tronquée a 12 bits dans laquelle tu rajoutes du bruit dans les 4 derniers bits. On va voir qui peut dire (1) s'il y a une différence, (2) quelle photo est laquelle. >:D

astrophoto

Citation de: Franciscus Corvinus le Décembre 09, 2018, 19:14:30
Seulement si tu supposes ce qui se cache dans ces bit supplémentaires est du signal et pas du bruit. Que je sache, aucun appareil standard n'en est capable. Pour un adepte de la vraie vie qui ne s'occupe pas des écarts de moins de 10%, c'est étonnemment théorique et pointilleux.

Donc je te suggere de mettre une photo traitée en 16 bits d'origine, une photo tronquée a 12 bits, et une photo tronquée a 12 bits dans laquelle tu rajoutes du bruit dans les 4 derniers bits. On va voir qui peut dire (1) s'il y a une différence, (2) quelle photo est laquelle. >:D

absolument  ;) C'est ce que j'avais fait il y a quelques années ici même, en prenant des fichiers raw 16 bits de MF et en mettant à zéro les derniers bit un par un (de 16 à 10). Puis j'ai mis à disposition les différents fichiers sans dire lequel était lequel, il fallait deviner...ce n'est qu'en dessous de 12 bits qu'on commençait à voir une différence, et encore il fallait tirer méchamment sur les curseurs. Ca a dérouté certains qui pensent (pensaient ?) qu'une des raisons de la supériorité des MF venait du 16 bits  :D

Pour schématiser, un nombre de bits plus grand que la dynamique (en IL) est inutile car les bits supplémentaires sont noyés dans le bruit (et encore cette "règle" est optimiste). Et à ce jour, même si la dynamique des appareils a tendance à monter au fil des générations, il n'existe pas d'appareil présentant 16 IL de dynamique même à iso mini (il faut aussi rester conscient que la dynamique diminue à mesure que les iso montent, réduisant d'autant le nombre de bits utiles).
Thierry Legault
astrophoto.fr