Bruit de photons: dynamique d'une photo limitée à 8 ou 9 bits, au mieux?

Démarré par jenga, Septembre 14, 2019, 00:23:42

« précédent - suivant »

jenga

J'ouvre ce fil car on discute sur un autre du bruit de lecture de l'APN, sujet proche mais différent.
L'électronique des APN est capable de mesurer le nombre de photons reçus avec un excellent rapport signal/bruit, de l'ordre de 10000 à 30000, ce qui correspond à 14 ou15 bits significatifs.
Quelles sont les autres limites au rapport signal/bruit?

Bruit de photons
Chaque photosite reçoit un nombre de photons qui fluctue en permanence, même pour une scène parfaitement stable, parce que la loi d'émission des photons est aléatoire. Le signal reçu est bruité, pour des raisons physiques incontournables. Ce "bruit photonique" est un cas particulier du bruit de grenaille connu des électroniciens.
https://fr.wikipedia.org/wiki/Bruit_de_grenaille

Pour des éclairages suffisamment intenses, comme ceux que l'on utilise en photo courante, le nombre de photons reçus suit une loi de Poisson: le bruit (défini comme l'écart-type des fluctuations) est égal à la racine carrée du signal moyen, et donc le rapport signal/bruit est aussi égal à cette racine carrée:

  • si on reçoit en moyenne 9 photons par photosite pendant l'expo, le bruit est 3 photons, et le rapport signal/bruit 3 également
  • si on reçoit en moyenne 100 photons par photosite pendant l'expo, le bruit est 10 photons, et le rapport signal/bruit 10 également

Nombre de bits significatifs
Le meilleur rapport signal/bruit est atteint lorsque le photosite est plein, c'est-à-dire lorsque le signal est égal à cette capacité, et le rapport signal/bruit optimal est donc égal à la racine carrée de cette capacité:

  • pour un D3400: capacité du photosite = 36000 électrons, donc rapport S/B maxi= racine carrée(36000) = 190 environ, soit 7,5 bits significatifs
  • pour un D850: capacité 61000 électrons, donc S/B maxi=  246, soit environ 8 bits significatifs
  • pour un D5: capacité 121000 électrons, donc S/B maxi= 347, soit environ 8,5 bits significatifs
Ces valeurs ne peuvent être atteintes qu'à la sensibilité native; au-delà, la capacité utilisable du photosite diminue.

Bilan
L'APN est capable de mesurer très précisément le nombre d'électrons accumulés, mais ce nombre est lui-même tellement bruité que les bits au-delà de 8 (voire 9 sur les 24x36 à 1 chiffre) sont noyés dans le bruit photonique. Si le photosite n'est pas plein, ou si on monte en iso, le nombre de bits significatifs diminue encore.
La photo d'un objet uniforme (le ciel dans de bonnes conditions, par exemple) ne peut donc pas être lisse... Si elle l'est, c'est qu'un lissage numérique a été fait quelque part.

A quoi peut servir la très grande dynamique des APN?
-pour des images très peu lumineuses, lorsque le nombre d'électrons collectés est très faible? (le bruit de l'APN, de l'ordre de quelques électrons, devenant alors significatif par rapport au bruit de photons)
-autres cas?

astrophoto

Citation de: jenga le Septembre 14, 2019, 00:23:42
A quoi peut servir la très grande dynamique des APN?
-pour des images très peu lumineuses, lorsque le nombre d'électrons collectés est très faible? (le bruit de l'APN, de l'ordre de quelques électrons, devenant alors significatif par rapport au bruit de photons)
-autres cas?

ton raisonnement s'applique à un seul photosite, or il faut raisonner sur l'ensemble de l'image, donc de la scène. Dans une scène à grande dynamique, tu auras des zones (donc des photosites) avec très peu de signal (donc influencés principalement par le bruit de lecture), et d'autres avec beaucoup de signal (donc influencés par le bruit photonique). Donc oui, pour les photosites bien remplis les derniers bits sont noyés dans le bruit (photonique), mais pas pour les photosites peu remplis.
Si tu fais le rapport entre la capacité photosite et le bruit de lecture, tu auras une idée de la dynamique encaissable par le capteur.

:)
Thierry Legault
astrophoto.fr

jenga

Citation de: astrophoto le Septembre 14, 2019, 01:56:20
ton raisonnement s'applique à un seul photosite, or il faut raisonner sur l'ensemble de l'image, donc de la scène. Dans une scène à grande dynamique, tu auras des zones (donc des photosites) avec très peu de signal (donc influencés principalement par le bruit de lecture), et d'autres avec beaucoup de signal (donc influencés par le bruit photonique). Donc oui, pour les photosites bien remplis les derniers bits sont noyés dans le bruit (photonique), mais pas pour les photosites peu remplis.
Si tu fais le rapport entre la capacité photosite et le bruit de lecture, tu auras une idée de la dynamique encaissable par le capteur.

:)
Merci pour ta réponse, et pour les diverses explications que tu donnes dans ces fils.

En effet, la dynamique ainsi exprimée est (par exemple) de 14 ou 15 bits. La confusion qui est souvent faite est de croire que cela signifie 14 bits significatifs dans les RAW, mais ce n'est pas le cas:

  • pour les photosites peu remplis, le rapport signal sur bruit est faible à cause des bruits apportés par l'APN
  • pour les photosites davantage remplis, le rapport signal sur bruit est faible à cause du bruits photonique
On n'a donc jamais 14 ou 15 bits significatifs.

J'essaie de calculer le meilleur rapport signal/bruit atteignable:
Pour un APN récent haut de gamme, le bruit total apporté par l'APN est de l'ordre de 1 ou 2 électrons. Disons 2 par exemple.
Le bruit photonique est égal à la racine carrée de la valeur du signal S, qui varie entre 0 et la capacité du photosite (par exemple 60000 électrons pour un D850)

Pour un signal de valeur S, le bruit total est donc = 2 + racine de S , et le rapport signal/bruit S/B= S/ (2 + racine de S), le "+" représentant la somme quadratique.

Le rapport S/B est donc toujours inférieur à S / racine de S, il tend vers cette valeur dès que S est significativement plus grand que 4.

C'est donc à la valeur maximale de S (60000) que le rapport S/B est le plus élevé, et il vaut alors 60000/racine de 60000= 244, ce qui se code sur 8 bits.

Il y a donc au maximum 8 bits significatifs dans le signal, pour les photosites quasiment pleins, et moins pour les autres.
Par exemple, pour un photosite rempli à 5%, il ne reste plus que 6 bits significatifs (3000 / racine de 3000= 54 environ).

En termes de codage, on a donc un signal qui s'étend sur une dynamique de 14 bits, mais ne contient (au mieux) que 8 bits significatifs. On peut donc le représenter sur nettement moins que 14 bits sans perte d'information.

(on peut ensuite compresser sans perte le signal utile en exploitant le caractère ordonné de la plupart des images, mais c'est autre chose).

astrophoto

Citation de: jenga le Septembre 14, 2019, 09:23:49
On n'a donc jamais 14 ou 15 bits significatifs.

pour un photosite donné (avec un remplissage donné), oui, mais encore une fois tu peux très bien l'atteindre globalement si dans ton image tu as à la fois des photosites peu remplis et d'autres bien remplis  :)

Si tu as par exemple une capacité de 32000 électrons et un bruit de lecture de 1 électron (cas optimiste, mais supposons que), alors tu auras bien environ 15 bits significatifs, les premiers bits pour les photosites bien remplis et les derniers pour ceux peu remplis (ou l'inverse, ça dépend dans quel ordre on regarde les bits  :D)
Thierry Legault
astrophoto.fr

Verso92

Citation de: jenga le Septembre 14, 2019, 00:23:42
Nombre de bits significatifs
Le meilleur rapport signal/bruit est atteint lorsque le photosite est plein, c'est-à-dire lorsque le signal est égal à cette capacité, et le rapport signal/bruit optimal est donc égal à la racine carrée de cette capacité:

  • pour un D3400: capacité du photosite = 36000 électrons, donc rapport S/B maxi= racine carrée(36000) = 190 environ, soit 7,5 bits significatifs
  • pour un D850: capacité 61000 électrons, donc S/B maxi=  246, soit environ 8 bits significatifs
  • pour un D5: capacité 121000 électrons, donc S/B maxi= 347, soit environ 8,5 bits significatifs
Ces valeurs ne peuvent être atteintes qu'à la sensibilité native; au-delà, la capacité utilisable du photosite diminue.

Si c'était le cas, il n'y aurait (presque) aucun intérêt à travailler en RAW...


Sinon, comment expliques-tu ces mesures ?

Nikojorj

Thierry, merci pour tes explications!
Ce n'était pas toi qui avais mis à zéro les bits de divers DNG, il y a pas mal de temps quand Canon faisait de la pub pour son pipeline 14bits tout bruité, d'ailleurs?

astrophoto

Citation de: Nikojorj le Septembre 14, 2019, 10:07:55
Thierry, merci pour tes explications!
Ce n'était pas toi qui avais mis à zéro les bits de divers DNG, il y a pas mal de temps quand Canon faisait de la pub pour son pipeline 14bits tout bruité, d'ailleurs?

oui, en fait c'était sur des raw de MF 16 bits (la plupart des MF sortent du 16 bits), un Hasselblad si ma mémoire est bonne, ça remonte à "quelques" années. Pas mal de gens pensaient que la "supériorité" de qualité d'image des MF (au moins sur certains aspects) trouvait son origine dans les 16 bits, j'ai donc pris des raw et viré les derniers bits un par un. Puis j'ai posté les fichiers (de 16 à 10 bits), que chacun pouvait triturer à loisir, sans dire lequel était lequel. Hé bien comme on pouvait s'y attendre vu la dynamique pas extraordinaire du boitier de l'époque, il n'y a qu'en dessous de 12 bits qu'on commençait à voir l'effet (les fichiers 13, 14, 15 et 16 étaient indiscernables), et encore il fallait tirer pas mal sur les ombres. Bon, maintenant, les appareils ont globalement progressé en dynamique, mais je ne suis pas sûr qu'il existe même aujourd'hui un appareil qui ait vraiment l'utilité de 16 bits (autre qu'une utilité marketing : pour faire plus "pro" sur la brochure)  :)
Thierry Legault
astrophoto.fr

jenga

Citation de: astrophoto le Septembre 14, 2019, 09:33:04
pour un photosite donné (avec un remplissage donné), oui, mais encore une fois tu peux très bien l'atteindre globalement si dans ton image tu as à la fois des photosites peu remplis et d'autres bien remplis  :)

Si tu as par exemple une capacité de 32000 électrons et un bruit de lecture de 1 électron (cas optimiste, mais supposons que), alors tu auras bien environ 15 bits significatifs, les premiers bits pour les photosites bien remplis et les derniers pour ceux peu remplis (ou l'inverse, ça dépend dans quel ordre on regarde les bits  :D)
Oui, nous sommes d'accord: pour une capacité de photosite de 60000 électrons, il y a au maximum 8 bits significatifs pour un photosite donné (et moins s'il est peu éclairé), et ces bits significatifs sont positionnés à différents endroits dans une fenêtre de 15.

A haut éclairement, ce sont les 8 bits de poids forts qui sont significatifs, les 7 de poids faibles sont du bruit photonique.
A très faible éclairement (mettons de 0 à 15 électrons), les 4 bits de poids faible sont significatifs (sauf peut-être le plus faible à cause du bruit de l'APN), les 11 autres sont à zéro.

On peut donc coder l'information sur moins de 14 bits, sans perdre d'information; de façon naïve, par exemple trois bits pour désigner une plage d'intensité parmi 8 (ce qui qui donne à la fois le nombre et la position des bits utiles), suivi des bits utiles (entre 4 et 8 selon la plage).

jenga

Citation de: jenga le Septembre 14, 2019, 00:23:42
Chaque photosite reçoit un nombre de photons qui fluctue en permanence, même pour une scène parfaitement stable, parce que la loi d'émission des photons est aléatoire. Le signal reçu est bruité, pour des raisons physiques incontournables. Ce "bruit photonique" est un cas particulier du bruit de grenaille connu des électroniciens.

Le meilleur rapport signal/bruit est atteint lorsque le photosite est plein, c'est-à-dire lorsque le signal est égal à cette capacité, et le rapport signal/bruit optimal est donc égal à la racine carrée de cette capacité:

  • pour un D3400: capacité du photosite = 36000 électrons, donc rapport S/B maxi= racine carrée(36000) = 190 environ, soit 7,5 bits significatifs
  • pour un D850: capacité 61000 électrons, donc S/B maxi=  246, soit environ 8 bits significatifs
  • pour un D5: capacité 121000 électrons, donc S/B maxi= 347, soit environ 8,5 bits significatifs
Ces valeurs ne peuvent être atteintes qu'à la sensibilité native; au-delà, la capacité utilisable du photosite diminue.

Citation de: Verso92 le Septembre 14, 2019, 09:43:31
Si c'était le cas, il n'y aurait (presque) aucun intérêt à travailler en RAW...

Sinon, comment expliques-tu ces mesures ?

C'est bien le cas (le bruit, l'intérêt du raw est un autre sujet). Le bruit photonique est une limite physique qu'aucune technologie de capteur ne peut éliminer: la grandeur mesurée est intrinsèquement bruitée.

Les mesures que tu cites décrivent autre chose: le rapport signal/bruit de l'APN, qui est de l'ordre de 30000 à sensibilité native pour un D850 (bruit 2 électrons pour un signal pouvant atteindre 60000)

Par exemple, pour un D850 à sensibilité native, photosite rempli juste en dessous de la saturation à 60000 électrons:
-le bruit photonique est égal à racine de 60000 = 244 électrons
-le bruit ajouté par l'APN est de l'ordre de 2 électrons, donc parfaitement négligeable dans ces conditions

A très faible éclairement, le bruit de l'APN peut devenir significatif; par exemple, si on a seulement 60 électrons dans le photosite (ça nous fait du 64000 isos...), le bruit de l'APN (2 électrons) n'est plus négligeable. Toutefois, il reste inférieur au bruit photonique, qui vaut alors racine de 60= 8 (à peu près).

A vraiment très faible éclairement, 4 électrons (soit 900000 isos...) le bruit photonique et le bruit de l'APN sont égaux à 2.

Pour en revenir au cas du photosite rempli, le rapport signal sur bruit est donc de l'ordre de 60000/244 = 244, ce qui peut sembler modeste, mais ce n'est pas du tout à cause de l'électronique de l'APN: on a ici un instrument d'une précision diabolique qui mesure une grandeur très bruitée.

Le seul moyen d'améliorer le rapport signal/bruit à haut éclairement est d'augmenter la capacité du photosite (et d'avoir assez de lumière pour le remplir, bien sûr); sinon, il faut faire plusieurs poses, chacune remplissant les photosites presque à saturation, et les sommer, ce qui revient à avoir des photosites de plus grande capacité.
Le rapport signal sur bruit augmente alors comme la racine carrée de la capacité des sites ou du nombre de photos sommées.

Concernant les formats raw: comme indiqué dans ma réponse précédente, chaque donnée 14 bits d'un raw ne contient que 8 bits significatifs, ou moins si le photosite est peu éclairé; mais ces bits significatifs ne sont pas aux mêmes positions: les bits significatifs sont les MSB à fort  éclairage, les LSB à faible éclairage et entre les deux à éclairage moyen. Et il y a de moins en moins de bits significatifs quand l'éclairage diminue.

Nikojorj

Pour le codage dont tu parles, ce n'est pas un peu ce qu'avait fait Leica à un moment, avec des raws codés sur 8 bits mais avec un fort gamma qui met moins de précision sur les valeurs élevées ?

Verso92

Citation de: jenga le Septembre 14, 2019, 22:54:23
C'est bien le cas (le bruit, l'intérêt du raw est un autre sujet). Le bruit photonique est une limite physique qu'aucune technologie de capteur ne peut éliminer: la grandeur mesurée est intrinsèquement bruitée.

Les mesures que tu cites décrivent autre chose: le rapport signal/bruit de l'APN, qui est de l'ordre de 30000 à sensibilité native pour un D850 (bruit 2 électrons pour un signal pouvant atteindre 60000)

Par exemple, pour un D850 à sensibilité native, photosite rempli juste en dessous de la saturation à 60000 électrons:
-le bruit photonique est égal à racine de 60000 = 244 électrons
-le bruit ajouté par l'APN est de l'ordre de 2 électrons, donc parfaitement négligeable dans ces conditions

A très faible éclairement, le bruit de l'APN peut devenir significatif; par exemple, si on a seulement 60 électrons dans le photosite (ça nous fait du 64000 isos...), le bruit de l'APN (2 électrons) n'est plus négligeable. Toutefois, il reste inférieur au bruit photonique, qui vaut alors racine de 60= 8 (à peu près).

A vraiment très faible éclairement, 4 électrons (soit 900000 isos...) le bruit photonique et le bruit de l'APN sont égaux à 2.

Le graphique montré au-dessus (post #4) est celui de la dynamique : différence entre le signal le plus fort (juste avant saturation, donc) et le signal le plus faible (celui pour lequel le rapport signal/bruit est égal à 1, donc, soit signal = bruit, si j'ai bien compris).

D'ailleurs, il me semble que c'est le bruit "total" qui est pris en compte pour cette mesure, non ?


Sinon, il y a aussi un graphique sur le rapport S/B sur le site DxO (on constate que les courbes sont différentes de celles de la dynamique) :

jenga

Citation de: Nikojorj le Septembre 14, 2019, 23:08:22
Pour le codage dont tu parles, ce n'est pas un peu ce qu'avait fait Leica à un moment, avec des raws codés sur 8 bits mais avec un fort gamma qui met moins de précision sur les valeurs élevées ?
Je ne sais pas, mais merci pour l'info.  ;)
Aurais-tu un lien?

jenga

Citation de: Verso92 le Septembre 15, 2019, 11:51:53
Le graphique montré au-dessus (post #4) est celui de la dynamique : différence entre le signal le plus fort (juste avant saturation, donc) et le signal le plus faible (celui pour lequel le rapport signal/bruit est égal à 1, donc, soit signal = bruit, si j'ai bien compris).

D'ailleurs, il me semble que c'est le bruit "total" qui est pris en compte pour cette mesure, non ?

Sinon, il y a aussi un graphique sur le rapport S/B sur le site DxO (on constate que les courbes sont différentes de celles de la dynamique) :

Les deux séries de graphiques (ton post #4 et celui ci-dessus) confirment mon propos.

ton post #4: le "dynamic range", décrit la limite de performance due au bruit de  l'APN seul.
ton post ci-dessus: le rapport signal/bruit, SNR, décrit la limite de performance due au bruit photonique seul.

"Dynamic range"
-c'est le rapport entre le signal maximal (photosite plein) et le bruit plancher de l'APN (voir lien en bas)
-dans le cas du D850 (24x36 de technologie récente mais à photosites relativement petits), on a une capacité de photosite de 60000 électrons et un bruit plancher de l'ordre de 2 électrons.
Le "dynamic range" est donc de l'ordre de 30000.

Exprimé en "EV", c'est-à-dire en log base 2, DR = log2 (30000)= 15 EV environ

SNR
-c'est le rapport entre le signal maximal (photosite plein) et le bruit photonique, exprimé en dB (voir lien en bas)
-comme le bruit photonique = racine (signal), on a SNR= signal / (racine signal), donc SNR= racine (signal)
C'est donc lorsque le photosite est plein que le SNR est maximal.

Pour un photosite de D850 plein, on a SNR= 60000 / (racine de 60000), soit SNR= 245 environ.

Il y a donc bien 8 bits significatifs dans ce signal, pas davantage, mais ça suffit largement pour la vision humaine.

Exprimé en dB, ça nous donne SNR(dB)=  20 log décimal(245) = 47,7 dB, qui me semble être à peu près la valeur pour le D850 sur le graphique que tu as posté.

Variation en fonction des isos
Au-delà de la sensibilité native, l'amplification réduit la capacité utile du photosite, donc le rapport signal sur bruit, qui en est la racine carrée. Par exemple, en passant de 32 isos à 3200 isos, la capacité utile du photosite est divisée par 100. Donc le signal maximal est divisé par 100 et le bruit photonique par 10 (racine de 100). Le rapport SNR est donc divisé par 100/10= 10.

Donc SNR à 3200 isos = 10 fois moins qu'à 32 isos = 245/10 = 25 environ.

Exprimé en dB, ça nous donne SNR à 3200 isos (dB)=  20 log décimal(25) = 28 dB, qui me semble être à peu près la valeur pour le D850 sur le graphique que tu as posté.

A 3200 isos, il n'y a donc plus que 4 à 5 bits significatifs. Les images à 3200 isos sont donc bruitées de façon visible (pour cette taille de photosite), et c'est incontournable en raison de la physique, l'électronique de l'APN n'y est pour rien.
L'absence de bruit visible à cette amplification, pour des photosites de cette taille, indique qu'un lissage est effectué.

Pour plus de détails
Tu trouveras des explications plus complètes et les définitions facilement sur le net, par exemple ici:
https://www.adimec.com/how-to-interpret-the-dynamic-range-and-signal-to-noise-ratio-snr-in-image-sensor-and-industrial-camera-specifications/

En particulier:
"The SNR in a specification sheet is determined by taking the maximum signal (Full well) divided by the shot noise of the maximum signal, or SQRT(Full Well)."
"SNR   20 LOG10(SQRT(Full Well))"

"Dynamic range is defined as the ratio of the largest signal the image sensor can handle (linearly) to the readout noise (in the dark) of the camera system"


Nikojorj


Verso92

Citation de: jenga le Septembre 15, 2019, 21:43:41
Les deux séries de graphiques (ton post #4 et celui ci-dessus) confirment mon propos.

[...]

Merci pour les explications.

Je vais regarder ça plus en détails...

philooo

Citation de: jenga le Septembre 14, 2019, 09:23:49Le rapport S/B est donc toujours inférieur à S / racine de S, il tend vers cette valeur dès que S est significativement plus grand que 4.

C'est donc à la valeur maximale de S (60000) que le rapport S/B est le plus élevé, et il vaut alors 60000/racine de 60000= 244, ce qui se code sur 8 bits.
Plus généralement, S / racine de S, c'est racine de S. Le rapport S/B maximal est donc la racine carrée de la dynamique : en passant au logarithme, le nombre de bits de codage est donc divisé (au moins) par 2 : par exemple, pour un capteur qui encaisse 10 bits, chaque photosite a moins de 5 bits significatifs. En passant à 16 bits, cela donne 8 bits significatifs par photosite - la conclusion à laquelle tu arrives.

L'important reste quand même la dynamique du capteur :
L'intérêt d'une balance de ménage d'un kilo avec une précision de 0,1 gramme (dynamique de 4 chiffres décimaux, un peu plus de 13 bits en langage d'informaticien ;) ), c'est de pouvoir peser 7,5 g de vanille comme 350 g de farine, même si 2 chiffres significatifs (6 à 7 bits) sont nécessaires et suffisants à réussir le gâteau ;D .
Avec une vieille balance à cadran de 500g gradués par 10g (dynamique de 6 bits), on savait si on avait 340 ou 360g de farine, mais 0 ou 10g de vanille donnaient la même mesure...


Citation de: Verso92 le Septembre 14, 2019, 09:43:31
Si c'était le cas, il n'y aurait (presque) aucun intérêt à travailler en RAW...
Tu connais déjà la réponse ;) mais je la rappelle pour le fun...
L'intérêt, c'est la capacité au post-traitement (ou au développement, je ne rentre pas dans la querelle sémantique).
Pour une image (monochrome, pour simplifier) codée sur 14 bits, seuls les pixels clairs (dont le dernier bit significatif est avant le septième) ne peuvent pas être éclaircis sans perte, et inversement pour les pixels sombres.
Si on limitait la dynamique après codage aux 7 bits centraux (du quatrième et demi  au dixième et demi), presque aucun pixel ne pourrait être éclairci (ou assombri) sans perte, et les pixels très clairs en 14 bits (bits 1 à 4 significatifs) seraient uniformément cramés en 8 bits.


Citation de: jenga le Septembre 15, 2019, 21:43:41Il y a donc bien 8 bits significatifs dans ce signal, pas davantage, mais ça suffit largement pour la vision humaine.
L'oeil humain a une dynamique bien supérieure à ça me semble-t-il, sans même tenir compte de l'iris.


Citation de: jenga le Septembre 14, 2019, 22:54:23par exemple, si on a seulement 60 électrons dans le photosite (ça nous fait du 64000 isos...)
Non, ça fait un photosite peu éclairé (une zone sombre de l'image) à 200 ISO. Et un pixel en limite de cramage après amplification à 64000 ISO.


Citation de: jenga le Septembre 14, 2019, 22:50:56On peut donc coder l'information sur moins de 14 bits, sans perdre d'information; de façon naïve, par exemple trois bits pour désigner une plage d'intensité parmi 8 (ce qui qui donne à la fois le nombre et la position des bits utiles), suivi des bits utiles (entre 4 et 8 selon la plage).
ça c'est intéressant, même si j'imagine que d'autres y ont pensé avant, la prééminence du jpeg (comme du MP3 en son, et comme du DVD et du VHS avant lui) n'ayant guère d'autre raison qu'historique.

Nikojorj

Citation de: philooo le Septembre 16, 2019, 08:48:18
Pour une image (monochrome, pour simplifier) codée sur 14 bits, seuls les pixels clairs (dont le dernier bit significatif est avant le septième) ne peuvent pas être éclaircis sans perte, et inversement pour les pixels sombres.
Ah là j'ai du mal à suivre?

CitationL'oeil humain a une dynamique bien supérieure à ça me semble-t-il, sans même tenir compte de l'iris.
Oui, disons plutôt que les moyens de reproduction dont on dispose (écran, tirage) se contentent de 8 bits.

philooo

Citation de: philooo le Septembre 16, 2019, 08:48:18Pour une image (monochrome, pour simplifier) codée sur 14 bits, seuls les pixels clairs (dont le dernier bit significatif est avant le septième) ne peuvent pas être éclaircis sans perte, et inversement pour les pixels sombres.
Citation de: Nikojorj le Septembre 16, 2019, 09:03:07Ah là j'ai du mal à suivre?

Au temps pour moi, j'ai cafouillé :-\ .
Je parlais des pixels clairs (dont le premier bit est 1), qui ont au maximum 7 bits significatifs selon ce qui est écrit plus haut.
En les éclaircissant (par éclaircissement global de l'image ou augmentation du contraste), on ne perd pas d'info tant qu'on n'arrive pas au blanc pur (éclaircissement supérieur à un diaph).
Avec 3 ou 4 bits de moins à gauche dans le codage et autant à droite, l'info est très vite perdue.

Mais vous savez déjà tous ça :)

jenga

Citation de: philooo le Septembre 16, 2019, 08:48:18
Non, ça fait un photosite peu éclairé (une zone sombre de l'image) à 200 ISO. Et un pixel en limite de cramage après amplification à 64000 ISO.
Tout à fait.
J'ai mentionné les 64000 isos à titre indicatif, au sens "il faut monter à 64000 isos pour compenser", ce qui donne une idée plus concrète de l'ambiance lumineuse que le nombre d'électrons.

De toute façon, à ce niveau de remplissage des photosites (60 électrons) le rapport S/B est encore déterminé par la racine carrée du signal, peu importe l'iso programmé sur le boîtier.


jenga

Citation de: jenga le Septembre 14, 2019, 22:50:56
On peut donc coder l'information sur moins de 14 bits, sans perdre d'information; de façon naïve, par exemple trois bits pour désigner une plage d'intensité parmi 8 (ce qui qui donne à la fois le nombre et la position des bits utiles), suivi des bits utiles (entre 4 et 8 selon la plage).

Citation de: philooo le Septembre 16, 2019, 08:48:18
  ça c'est intéressant, même si j'imagine que d'autres y ont pensé avant, la prééminence du jpeg (comme du MP3 en son, et comme du DVD et du VHS avant lui) n'ayant guère d'autre raison qu'historique.
D'autres y ont sans aucun doute pensé avant, et avec des techniques moins naïves que celle que je propose pour donner une idée d'une approche possible. Je vais voir dans les liens donnés par Nikojorj.

Pour le jpeg, je pense qu'il y a des raisons autres qu'historiques, mais c'est un autre débat, qu'il faudrait peut-être ouvrir dans un fil dédié.

Somedays

Citation de: jenga le Septembre 15, 2019, 21:43:41

Il y a donc bien 8 bits significatifs dans ce signal, pas davantage, mais ça suffit largement pour la vision humaine.

Exprimé en dB, ça nous donne SNR(dB)=  20 log décimal(245) = 47,7 dB, qui me semble être à peu près la valeur pour le D850 sur le graphique que tu as posté.


 
J'ai du mal avec cette notion de "bits significatifs" pour jauger un rapport signal/bruit. Je préfère largement la valeur en dB, dans la mesure où l'on a une idée de ce que ça représente dans la visualisation d'une image. Dxomark donne des repères d'appréciation (par exemple un SNR de 32dB est satisfaisant) et c'est très bien comme ça.
   
Un autre avantage de Dxomark, c'est qu'ils harmonisent les ISO afin de comparer entre eux les divers boîtiers des diverses marques, contrairement au site Photons to photos qui ne fait aucune correction. Or 1600 ISO chez un constructeur n'est pas 1600 ISO chez un autre. Le plus fidèle en la matière est Ricoh/Pentax, tandis qu'Olympus et surtout Fuji sont de grands tricheurs optimistes, un 6400 ISO chez Fuji pouvant n'être qu'un 1600 ISO une fois l'harmonisation faite. Et c'est ainsi que des Fujistes s'émerveillent sur la montée en ISO de leurs boîtiers en l'attribuant à la spécificité des capteurs Trans...Mais passons.

   
À part ça, il existait un site intéressant sur ces questions, celui de Sensorgen.info, qui a malheureusement fermé. On peut cependant récuperer des archives. La plus récente que j'ai trouvée date du 5 octobre 2018:
   
https://web.archive.org/web/20181005193137/http://www.sensorgen.info/

jenga

Citation de: Somedays le Septembre 17, 2019, 17:19:33
   
J'ai du mal avec cette notion de "bits significatifs" pour jauger un rapport signal/bruit. Je préfère largement la valeur en dB, dans la mesure où l'on a une idée de ce que ça représente dans la visualisation d'une image. Dxomark donne des repères d'appréciation (par exemple un SNR de 32dB est satisfaisant) et c'est très bien comme ça.

C'est bien sûr équivalent, chaque personne préférera l'une ou l'autre unité selon son type de culture technique. Il me semble que les utilisateurs de logiciels de développement ou de retouche ont bien la perception du nombre de bits utiles, mais c'est à chacun de voir.

Je remarque quand même sur les forums beaucoup de confusion en ce qui concerne la signification des dB: un SNR 32 dB n'est pas du tout satisfaisant dans l'absolu.
32dB, c'est un rapport signal/bruit = 40 (car 20 log10 (40)= 32), autrement dit même une représentation 0-255 est inutile, sans parler de 0-16383 .

Pour un SNR de 32dB, même pas 6 bits sont significatifs dans les 14 usuels du raw.
Cela signifie que, à ce SNR, les cartes mémoires et disques durs stockent davantage de bruit et de zéros que d'information.

Verso92

Citation de: jenga le Septembre 18, 2019, 08:01:33
Je remarque quand même sur les forums beaucoup de confusion en ce qui concerne la signification des dB: un SNR 32 dB n'est pas du tout satisfaisant dans l'absolu.
32dB, c'est un rapport signal/bruit = 40 (car 20 log10 (40)= 32), autrement dit même une représentation 0-255 est inutile, sans parler de 0-16383 .

Le rapport S/B en dB, c'est pas plutôt 10 x log S/B ?

jenga

Citation de: Verso92 le Septembre 18, 2019, 08:10:17
Le rapport S/B en dB, c'est pas plutôt 10 x log S/B ?
Non, voir les liens que j'ai donnés.

Le dB est défini comme:
- 10x log décimal pour les mesures de puissance (par exemple, pour les électriciens, tension au carré, courant au carré, produit tension x courant, etc.)
- 20x log décimal pour les mesures d'amplitude (courant, tension, amplitude du signal)

Ceci parce que la puissance d'un signal varie comme le carré de son amplitude, et mettre au carré revient à doubler en unités log.
Donc 20 log (amplitude signal) ou 10 log (puissance signal) sont équivalents.

Le SNR est défini par l'amplitude (du bruit et du signal), donc les dB sont en 20 log.

On peut bien sûr raisonner en puissance signal/ puissance de bruit (la conversion en dB étant alors en 10 log), ce qui donne le même résultat puisque les puissances sont proportionnelles aux carrés des amplitudes.

jenga

Citation de: Somedays le Septembre 17, 2019, 17:19:33
Un autre avantage de Dxomark, c'est qu'ils harmonisent les ISO afin de comparer entre eux les divers boîtiers des diverses marques, contrairement au site Photons to photos qui ne fait aucune correction. Or 1600 ISO chez un constructeur n'est pas 1600 ISO chez un autre. Le plus fidèle en la matière est Ricoh/Pentax, tandis qu'Olympus et surtout Fuji sont de grands tricheurs optimistes, un 6400 ISO chez Fuji pouvant n'être qu'un 1600 ISO une fois l'harmonisation faite. Et c'est ainsi que des Fujistes s'émerveillent sur la montée en ISO de leurs boîtiers en l'attribuant à la spécificité des capteurs Trans...Mais passons.
En fait, tout cela me semble sans importance.
En effet, en dehors des utilisations à très bas niveau de lumière (typiquement un facteur10000 en-dessous de la saturation pour un D850), la montée en iso ne dépend que de la capacité des photosites, le reste c'est de l'agitation... et des erreurs de mesure, car le SNR est difficile à mesurer correctement.

Le SNR à sensibilité native est déterminé par la racine carrée de la capacité du photosite, et ensuite il décroît de 10 dB par décade (dans le graphique SNR dB en fonction de log iso). En dehors d'usages très spécifiques (typiquement 10000 fois en-dessous de la saturation pour un D850), la technologie du capteur en matière de bruit de lecture ne joue pas.

Le SNR est difficile à mesurer (voire impossible si on en prend la définition stricte), parce qu'il est défini comme le rapport signal/bruit photonique au signal maximal. Or, le signal fluctue considérablement, ce qui signifie que, s'il est maximal, une mesure sur deux dépasse le seuil de saturation, ce qui rend la mesure fausse.
La mesure ne peut donc pas être effectuée au signal maximal, il faut se placer "suffisamment" en-dessous; le "suffisamment" est difficile à définir, parce que les fluctuations aléatoires du signal peuvent aller bien au-delà de son écart-type.
Il faut donc se placer bien en-dessous du signal maximal, ce qui diminue le rapport SNR mesuré, qu'il faut donc corriger en conséquence... Et même comme ça, on n'est jamais à l'abri d'une mesure saturée.

La mesure du SNR est donc un exercice périlleux... et peu utile, puisqu'il suffit de connaître la capacité des photosites à sensibilité native pour être fixé.

Somedays

Citation de: jenga le Septembre 18, 2019, 08:01:33
C'est bien sûr équivalent, chaque personne préférera l'une ou l'autre unité selon son type de culture technique. Il me semble que les utilisateurs de logiciels de développement ou de retouche ont bien la perception du nombre de bits utiles, mais c'est à chacun de voir.

Je remarque quand même sur les forums beaucoup de confusion en ce qui concerne la signification des dB: un SNR 32 dB n'est pas du tout satisfaisant dans l'absolu.
32dB, c'est un rapport signal/bruit = 40 (car 20 log10 (40)= 32), autrement dit même une représentation 0-255 est inutile, sans parler de 0-16383 .

Pour un SNR de 32dB, même pas 6 bits sont significatifs dans les 14 usuels du raw.
Cela signifie que, à ce SNR, les cartes mémoires et disques durs stockent davantage de bruit et de zéros que d'information.


Seule compte vraiment la perception visuelle de l'image finale.
Pour le D850, le seuil de 32 dB pour le SNR 18% est atteint vers 1600 ISO en mode Print (cf graphique du message #10 de Verso92 ci-dessus). L'image ne doit pourtant pas être si mal que ça en termes de perception du bruit.
   
Dxomark a même retenu le seuil de "seulement" 30dB pour définir le score low-light ISO d'un boîtier:

"A SNR value of 30dB means excellent image quality. We have therefore defined low-light ISO as the highest ISO setting for a camera that allows it to achieve a SNR of 30dB while keeping a good dynamic range of 9 EVs and a color depth of 18bits."
 
https://www.dxomark.com/dxomark-camera-sensor-testing-protocol-and-scores/
   

30 dB ne font pourtant plus que 5 bits significatifs, ce qui donne l'impression d'un bruit très prédominant. Les bits "significatifs" ne le sont pas, justement.

Somedays

Citation de: Verso92 le Septembre 18, 2019, 08:10:17
Le rapport S/B en dB, c'est pas plutôt 10 x log S/B ?

"The SNR is given in dB, which is a logarithmic scale: an increase of 6 dB corresponds to doubling the SNR."
https://www.dxomark.com/dxomark-camera-sensor-testing-protocol-and-scores/
   
Un doublement du SNR en ajoutant 6 dB, c'est bien une valeur en décibel = 20 x log(10) (S/B).
   

Verso92

Citation de: jenga le Septembre 18, 2019, 08:45:24
Non, voir les liens que j'ai donnés.

Le dB est défini comme:
- 10x log décimal pour les mesures de puissance (par exemple, pour les électriciens, tension au carré, courant au carré, produit tension x courant, etc.)
- 20x log décimal pour les mesures d'amplitude (courant, tension, amplitude du signal)

Ceci parce que la puissance d'un signal varie comme le carré de son amplitude, et mettre au carré revient à doubler en unités log.
Donc 20 log (amplitude signal) ou 10 log (puissance signal) sont équivalents.

Le SNR est défini par l'amplitude (du bruit et du signal), donc les dB sont en 20 log.

On peut bien sûr raisonner en puissance signal/ puissance de bruit (la conversion en dB étant alors en 10 log), ce qui donne le même résultat puisque les puissances sont proportionnelles aux carrés des amplitudes.

OK (tellement l'habitude de raisonner en puissance, pour ma part).

Citation de: Somedays le Septembre 18, 2019, 09:13:57
   
"The SNR is given in dB, which is a logarithmic scale: an increase of 6 dB corresponds to doubling the SNR."
https://www.dxomark.com/dxomark-camera-sensor-testing-protocol-and-scores/
   
Un doublement du SNR en ajoutant 6 dB, c'est bien une valeur en décibel = 20 x log(10) (S/B).

Oui, bien sûr.

Nikojorj

Citation de: jenga le Septembre 18, 2019, 08:01:33
un SNR 32 dB n'est pas du tout satisfaisant dans l'absolu.
32dB, c'est un rapport signal/bruit = 40 (car 20 log10 (40)= 32), autrement dit même une représentation 0-255 est inutile, sans parler de 0-16383 .

Pour un SNR de 32dB, même pas 6 bits sont significatifs dans les 14 usuels du raw.
On parle d'affichage ici, pas de raw! Et pour ça, on peut se contenter d'assez peu de bits, surtout s'il y a un peu de bruit...

Cf.


ou


(clic pour les sources)

L'utilité de plein de bits pour les raws c'est de pouvoir triturer les données, mais pour afficher sans modifications, un jpeg qui contient plutôt moins que l'équivalent de 8 bits (grâce à sa compression) suffit bien.

egtegt²

Citation de: Nikojorj le Septembre 18, 2019, 10:20:46
L'utilité de plein de bits pour les raws c'est de pouvoir triturer les données, mais pour afficher sans modifications, un jpeg qui contient plutôt moins que l'équivalent de 8 bits (grâce à sa compression) suffit bien.

Ça n'a rien de nouveau, c'est connu que de toute façon très peu de moyens de visualisation dépassent 8 bits (quelques rares écrans à 10 bits, et encore, ils acceptent 10 bits en entrée, je ne parierais pas que tous affichent réellement 8 bits), et à ma connaissance aucun ne dépasse 10 bits (peut-être au niveau expérimental mais je ne connais pas de dispositif vendu) et je ne pense pas que ça aurait une quelconque utilité vu les limites de nos yeux.

Les bits supplémentaires servent juste à garantir qu'après PT, il restera toujours 8 bits.

Verso92

Citation de: egtegt² le Septembre 18, 2019, 11:47:06
(quelques rares écrans à 10 bits, et encore, ils acceptent 10 bits en entrée, je ne parierais pas que tous affichent réellement 8 bits)

Il suffit de faire l'essai pour voir.


Photo de l'écran (Nec PA241w) affichant un dégradé (fichier RAMP.psd, de mémoire) sous Photoshop en configuration 8 et 10 bits, respectivement :

egtegt²

Citation de: Verso92 le Septembre 18, 2019, 14:44:16
Il suffit de faire l'essai pour voir.
Photo de l'écran (Nec PA241w) affichant un dégradé (fichier RAMP.psd, de mémoire) sous Photoshop en configuration 8 et 10 bits, respectivement :
Oui, sur un dégradé pur, on peut voir la différence, mais sur une photo, la différence est bien moins visible. C'est lié au fait qu'en 8 bits, il n'y a que 256 dégradés dans chaque couleur pure.

Fais la même comparaison sur un dégradé entre par exemple deux couleurs différentes et tu ne verras plus du tout de banding ou beaucoup moins.

jenga

Citation de: Nikojorj le Septembre 18, 2019, 10:20:46
On parle d'affichage ici, pas de raw! Et pour ça, on peut se contenter d'assez peu de bits, surtout s'il y a un peu de bruit...
Cf.


Je suis bien d'accord, et j'ai même écrit dans mon post #12 que les 8 bits significatifs qu'on a, dans le meilleur des cas, avec un D850 (qui ne compte pas parmi les plus mauvais APN!!), sont bien suffisants pour la vision humaine.
Mais on m'a objecté que la vision humaine était bien plus performante que cela, et je n'ai pas voulu entrer dans ce débat.

Mais oui, je suis d'accord, même si les 5 bits dont nous parlons me semblent quand même un peu limite.

Je les qualifiais de "peu" en comparaison des 12 ou 14 auxquels peuvent légitimement s'attendre les utilisateurs, à cause de documents constructeur et de sites web entretenant la confusion.

jenga

Citation de: Somedays le Septembre 18, 2019, 09:08:59
   

Seule compte vraiment la perception visuelle de l'image finale.
Pour le D850, le seuil de 32 dB pour le SNR 18% est atteint vers 1600 ISO en mode Print (cf graphique du message #10 de Verso92 ci-dessus). L'image ne doit pourtant pas être si mal que ça en termes de perception du bruit.
   
Dxomark a même retenu le seuil de "seulement" 30dB pour définir le score low-light ISO d'un boîtier:

"A SNR value of 30dB means excellent image quality. We have therefore defined low-light ISO as the highest ISO setting for a camera that allows it to achieve a SNR of 30dB while keeping a good dynamic range of 9 EVs and a color depth of 18bits."
 
https://www.dxomark.com/dxomark-camera-sensor-testing-protocol-and-scores/
   

30 dB ne font pourtant plus que 5 bits significatifs, ce qui donne l'impression d'un bruit très prédominant. Les bits "significatifs" ne le sont pas, justement.
Comme répondu à Nokojorj, je suis bien d'accord sur le fait que moins de 8 bits significatifs suffisent, mais ce n'est pas l'avis général.

Je n'irai pas jusqu'à qualifier d'excellente (au sens du SNR) une image ayant seulement 5 bits significatifs; je dirais qu'elle est à la limite acceptable (toujours du seul point de vue SNR) pour moi; DXO la qualifie d'excellente, soit; d'autres estiment que 8 bits sont insuffisants pour eux.

Bref, on passe du domaine facile du traitement du signal, avec ses lois mathématiques objectives, au domaine perceptuel, et là ça se complique  :)

Verso92

Citation de: jenga le Septembre 18, 2019, 19:52:59
Je suis bien d'accord, et j'ai même écrit dans mon post #12 que les 8 bits significatifs qu'on a, dans le meilleur des cas, avec un D850 (qui ne compte pas parmi les plus mauvais APN!!), sont bien suffisants pour la vision humaine.
Mais on m'a objecté que la vision humaine était bien plus performante que cela, et je n'ai pas voulu entrer dans ce débat.

Pour moi, 8 bits suffisent en fin de chaine : je vois l'apport du 10 bit "écran" avec le fichier "dégradé" étudié pour (cf post #31), mais sur les photos, comme évoqué plus haut, je ne pense pas que ce soit visible (pour les images de synthèse, par contre, c'est un autre débat).

Par contre, je reste convaincu que 8 bits significatifs en entrée de post traitement serait très insuffisant : dans toutes les applications mettant en œuvre du traitement de signal, il faut prendre une réserve (quelquefois conséquente) sur la profondeur d'information, pour limiter les dégâts lors des multiples calculs en cascade (arrondis et troncatures).

jenga

Citation de: Verso92 le Septembre 18, 2019, 20:48:38
Par contre, je reste convaincu que 8 bits significatifs en entrée de post traitement serait très insuffisant : dans toutes les applications mettant en œuvre du traitement de signal, il faut prendre une réserve (quelquefois conséquente) sur la profondeur d'information, pour limiter les dégâts lors des multiples calculs en cascade (arrondis et troncatures).
Il y a 3 notions distinctes:

-le SNR: c'est le nombre de bits significatifs de chaque photosite: ce nombre est toujours inférieur à 8 pour un D850 à sensibilité native, pour les photosites les plus éclairés de l'image (encore moins sur des APN moins performants, un peu plus sur des D à 1 chiffre à cause de leurs gros pixels).
Il diminue de 1 à chaque fois que les isos sont multipiés par 4 à partir du natif

-le nombre de bits (typiquement 14) dans lesquels sont cadrés les bits significatifs. Le bruit photonique étant égal à la racine carrée du signal, à chaque fois que l'éclairement d'un photosite diminue d'un facteur 4 ses bits significatifs se décalent de 2 vers la droite (MSB à gauche) et diminuent de 1.
Le LSB est de plus noyé dans le bruit APN (voire le bit suivant, selon les APN).

Les bits significatifs se répartissent donc de cette manière, selon l'éclairement du photosite (S: significatif; p=bruit photonique; p=bruit APN; -:bit à 0)
SSSSSSSSpppppb
--SSSSSSSppppp
----SSSSSSpppb
------SSSSSppb
--------SSSSpb
----------SSSb
------------Sb

Il faut donc un codage capable de représenter cette dynamique, dans les étapes du traitement précédant l'application de la courbe de contraste. Une fois cette courbe appliquée, les valeurs à bas éclairement sont décalées vers la gauche (pour mimer le sensibilité non linéaire de l'oeil) et cette dynamique devient inutile.

-le nombre de bits utilisés pour les calculs intermédiaires, qui doit donner de la marge à droite pour que les erreurs d'arrondi ne dégradent pas le signal.Du tableau ci-dessus, on voit que 16 bits conviennent bien pour la plupart des cas, sauf à enchaîner beaucoup de traitements.

Même à extrêmement faible niveau d'éclairement (les dernières lignes du tableau ne correspondent pas à une utilisation usuelle), ils donneront 3 bits de marge à droite, et normalement on commencera par appliquer un bon facteur multiplicatif avant de faire d'autres traitements, ce qui donnera une marge très importante (16 bits pour un signal qui en comporte 3 ou 4 utiles).