Nice @Carmelo_DrRaw, thank you for your contribution!
I agree that the idea of simulating the photographic process grain by grain is really charming.
So, let’s see some new comparisons. I plotted the normalized power spectra of:
- kodak trix 1600 (example of the scanned film grain I found so far);
- darktable grain at 1600 iso;
-
@patdavid’s tmax 400 sample;
-
@Carmelo_DrRaw’s 50% gray medium sample.
The grain from @patdavid is quite different from the others, it has much more high frequency content and a bump in the middle, there is a strong bias for a certain grain size. I didn’t normalize it in the same way of the others because the power spectrum doesn’t look decayed at the boundaries of the frequency axis.
The grain from @Carmelo_DrRaw resemble a lot the kodak trix 1600, it is probably slightly more peaked.
Then, I played with the octaves of the darktable simplex noise algorithm. I fitted the kodak trix 1600 power spectum using three octaves: the parameters to be determined were three frequencies and three amplitudes. I think the power spectrum “darktable 1600 proposed” came up quite close at the desired one.
It is possible to easily match other smooth monotonically decreasing power spectrum shapes.
(left) darktable 1600 - (right) darktable 1600 proposed
The difference is small, hopefully It can be appreciated that the grain on the right is more smooth and plumpy while the grain on the left is somewhat sandier.
For @Carmelo_DrRaw, here are the power spectra of the other images you provided. It looks like there isn’t a big change in size for small, medium and large samples. There is a strong change of the amplitude though.
Here are the power spectra of the 50% gray images.
Here are the power spectra of the 50% gray images normalized by the maximum.
The images with different solid gray colors have the same grain power spectrum shape but different amplitudes.
Here are the power spectra of the 10%, 50%, 90% gray images.
Here are the power spectra of the 10%, 50%, 90% gray images normalized by the maximum.