photo by Alex Plesovskich from unsplash
TV and movie content is full of film grain as part of the creative concept.
Analog motion picture film has randomly distributed grains due to the process of exposure and development of silver-halide crystals dispersed in photographic emulsion.
Digital cameras don't produce film grain, but it is often added in post-production to make an “analog movie” effect. However, digital camera sensors create noise.
Film grain is characterized by a high degree of randomness. Therefore it is difficult to compress efficiently. Randomness makes prediction difficult and reconstruction of film grain requires very high bitrates.
Some video codecs, notably AV1, contain film grain synthesis.
The input pictures are denoised and the resulting denoised version of the input pictures is used in the encoding process. Then, a model of the film grain in the source picture is estimated at the encoder side, and the noise model parameters are included in the bitstream for the decoder to reproduce the noise and add it to the reconstructed pictures. A block diagram of the algorithm is shown below.
Example of grain synthesis: a) grain template, b) denoised picture, c) reconstructed picture with grain
Example of film grain synthesys in AV1 : a) source picture, b) encoded without film grain (30% fewer bits then c), c) encoded with film grain
Using a film grain synthesis algorithm helps preserve higher subjective quality and provide bitrate savings.