0924名無CCDさん@画素いっぱい
2018/04/25(水) 22:59:30.58ID:6DI3sD+N0その476%だが、sensorgen.csvに記録されているD2Xのデータから逆にSNRを計算してみると面白い。
sensorgen.csvには各ISO感度毎にRead Noise、Saturation Capacity、PRNU、Gain、QE、DRが算出・記録されている。
で、sensorgenのページには、
SNR=20*log10( (G・g)/sqrt( r^2+(G・g)+(p・G・g)^2) )
とSNRの算出に、G・g・r・pの4つのパラメータが必要と記載されている。そして同様にそのページに記載されているが、
r: Read Noise
G: Saturation Capacity/100
p:PRNU
であり、gはgray scale すなわちDxOのfullSNRグラフの横軸、算出されるSNRは同じくDxOのfullSNRグラフの縦軸になる。
sensorgen.csv内のD2XのデータにおけるISO100からISO3200の各数字を上記SNRの式に代入し、g=100(%)の場合のSNRを計算した。
順に、(1)DxOのfullSNRのグラフにプロットされたgreyscale100%でのSNR値、(2)計算値、(3) 計算値/DxO値(%)とすると、以下のようになった。
ISO100:(1)40.9、(2)41.9、(3)102%
ISO200:(1)38.9、(2)37.2、(3)96%
ISO400:(1)36.9、(2)48.2、(3)131%
ISO800:(1)34.2、(2)40.3、(3)118%
ISO1600:(1)30.9、(2)30.9、(3)100%
ISO3200:(1)27.7、(2)27.2、(3)98%
Read Noise、Saturation Capacity、PRNU、Gain、QE、DRを算出するためにleastsqを用いている関係上誤差が残り、
QEにおいて1%前後の誤差があると記載されているが、その誤差も考慮すれば概ね近しい答えと言えるだろう、
ISO400と800を除いては。
特にISO400は30%も異なっている。
この結果より、sensorgen.csvのD2Xのデータの内ISO400・800のものはエラーが含まれていると考えるのが妥当。