General Information

Abstract

This document provides a description of the film grain synthesis technology in video applications, including for use with Rec. ITU-T H.264 | ISO/IEC 14496-10, Rec. ITU-T H.265 | ISO/IEC 23008-2 and Rec. ITU-T H.266 | ISO/IEC 23090-3.

Status
Published
Publication Date
24-Jul-2024
Current Stage
9092 - International Standard to be revised
Start Date
10-Jul-2026
Completion Date
03-Oct-2026

Buy Documents

Technical report

ISO/IEC TR 23002-9:2024 - Information technology — MPEG video technologies — Part 9: Film grain synthesis technology for video applications Released:25. 07. 2024

English language (48 pages)
sale 15% off
Preview
sale 15% off
Preview

Overview

ISO/IEC TR 23002-9:2024 is an important technical report from ISO and IEC that addresses film grain synthesis technology for video applications. As part of the MPEG video technologies series, this document provides guidance for preserving or recreating the distinct appearance of film grain in digital video content. Film grain-the random, grainy effect seen in traditional celluloid film-is often desired in both cinematic productions and digital video for artistic effect or to mask compression artefacts. This report outlines methodologies for analyzing, modeling, synthesizing, and blending film grain within various MPEG video coding standards, supporting improved subjective quality and more efficient video compression.

Key Topics

ISO/IEC TR 23002-9:2024 covers several essential areas within the topic of film grain synthesis for video:

  • Technical Characteristics of Film Grain
    Discusses how film grain originates from analogue film processes and the role it plays in achieving the "cinematic look" in digital and physical media.
  • Film Grain Modeling
    Explains approaches for analyzing and parametrizing film grain, considering variations in brightness and color layers within film, and describes impacts on visual appearance.
  • Film Grain Synthesis
    Reviews end-to-end processes and models-such as frequency filtering and autoregressive approaches-used to recreate film grain on the decoder side after compression.
  • Applications and Use Cases
    Details how film grain synthesis is applied for both artistic purposes (restoring the filmic look) and practical outcomes (masking compression artefacts in streamed or broadcast video).
  • Film Grain Metadata
    Covers standard methods for representing and signaling film grain characteristics within MPEG bitstreams through metadata, facilitating interoperability.
  • Workflow and Integration
    Outlines encoder-side denoising and grain analysis, parameter exchange, and decoder-side grain synthesis and blending.

Applications

Film grain synthesis technology, as detailed in ISO/IEC TR 23002-9:2024, provides significant value across multiple industries and scenarios:

  • Video Encoding and Compression
    By temporarily removing film grain before compression, higher coding efficiency can be achieved without sacrificing visual fidelity. The grain can then be reintroduced during playback, reducing bandwidth while preserving artistic intent.
  • Broadcast and Streaming Services
    Essential for adaptive streaming and television broadcast, where bitrates must be managed carefully yet cinematic quality is expected.
  • Film Restoration and Post-Production
    Enables the preservation or recreation of film grain in restored cinema classics or in digitally shot films to unify the visual style or create an organic, immersive look.
  • Visual Quality Enhancement
    Adds synthetic film grain in post-processing to mask compression defects (such as banding or blocking) and to enhance perceived depth and texture in images.
  • Hybrid Content Pipelines
    Useful where footage from different cameras (analog, digital, varying sensors) is combined, ensuring a consistent grain structure throughout the project.

Related Standards

ISO/IEC TR 23002-9:2024 references and complements several other key standards in video coding and processing:

  • Rec. ITU-T H.264 / ISO/IEC 14496-10
    Advanced video coding (AVC)
  • Rec. ITU-T H.265 / ISO/IEC 23008-2
    High efficiency video coding (HEVC)
  • Rec. ITU-T H.266 / ISO/IEC 23090-3
    Versatile video coding (VVC)
  • Rec. ITU-T H.274 / ISO/IEC 23002-7
    Versatile supplemental enhancement information for coded video bitstreams

These standards define the core MPEG video frameworks into which film grain synthesis and metadata can be integrated, allowing for broad industry compatibility and deployment.


Incorporating film grain synthesis technology as covered in ISO/IEC TR 23002-9:2024 enables content creators, broadcasters, and streaming platforms to balance compression efficiency with high-quality, cinematic visual output. By following this standard, organizations can ensure consistent, interoperable implementation of film grain modeling within the latest MPEG video applications.

Buy Documents

Technical report

ISO/IEC TR 23002-9:2024 - Information technology — MPEG video technologies — Part 9: Film grain synthesis technology for video applications Released:25. 07. 2024

English language (48 pages)
sale 15% off
Preview
sale 15% off
Preview

Get Certified

Connect with accredited certification bodies for this standard

BSI Group

BSI (British Standards Institution) is the business standards company that helps organizations make excellence a habit.

UKAS United Kingdom Verified

NYCE

Mexican standards and certification body.

EMA Mexico Verified

Sponsored listings

Frequently Asked Questions

ISO/IEC TR 23002-9:2024 is a technical report published by the International Organization for Standardization (ISO). Its full title is "Information technology — MPEG video technologies — Part 9: Film grain synthesis technology for video applications". This standard covers: This document provides a description of the film grain synthesis technology in video applications, including for use with Rec. ITU-T H.264 | ISO/IEC 14496-10, Rec. ITU-T H.265 | ISO/IEC 23008-2 and Rec. ITU-T H.266 | ISO/IEC 23090-3.

This document provides a description of the film grain synthesis technology in video applications, including for use with Rec. ITU-T H.264 | ISO/IEC 14496-10, Rec. ITU-T H.265 | ISO/IEC 23008-2 and Rec. ITU-T H.266 | ISO/IEC 23090-3.

ISO/IEC TR 23002-9:2024 is classified under the following ICS (International Classification for Standards) categories: 35.040.40 - Coding of audio, video, multimedia and hypermedia information. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC TR 23002-9:2024 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.

Standards Content (Sample)


Technical
Report
ISO/IEC TR 23002-9
First edition
Information technology — MPEG
2024-07
video technologies —
Part 9:
Film grain synthesis technology for
video applications
Technologies de l'information — Technologies vidéo MPEG —
Partie 9: Technologie de la synthèse du grain de film pour les
applications vidéo
Reference number
© ISO/IEC 2024
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on
the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below
or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
© ISO/IEC 2024 – All rights reserved
ii
Contents Page
Foreword .v
Introduction .vi
1 Scope . 1
2 Normative references . 1
3 Terms and definitions . 1
4 Abbreviated terms . 2
5 Conventions . 2
5.1 General .2
5.2 Arithmetic operators .2
5.3 Bit-wise operators .3
5.4 Assignment operators .3
5.5 Relational, logical and other operators .3
5.6 Range notation .4
5.7 Mathematical functions .4
5.8 Order of operations .4
6 Overview of film grain technologies . 5
6.1 General .5
6.2 Film grain technical characteristics .5
6.3 Film grain modelling .7
6.4 Film grain use cases and applications .8
6.5 Film grain workflow .8
7 Film grain synthesis . 10
7.1 General .10
7.2 General description of film grain synthesis .10
7.2.1 General .10
7.2.2 Grain pattern template generation .11
7.2.3 Randomization . 12
7.2.4 Local adaptation . 15
7.2.5 Deblocking .17
7.2.6 Blending.17
7.3 Examples of film grain synthesis using the frequency filtering model .17
7.3.1 SMPTE RDD 5 .17
7.3.2 Variants based on SMPTE RDD 5 .19
7.4 Examples of film grain synthesis using the autoregressive model . 20
7.4.1 FGC SEI message based autoregressive model . 20
7.4.2 AFGS1 model .21
7.5 Example of film grain synthesis supporting both the frequency filtering and
autoregressive models .24
7.5.1 General .24
7.5.2 Film grain template generation.24
7.5.3 Randomization .24
7.5.4 Local adaptation .24
7.5.5 Deblocking . 25
7.5.6 Blending. 25
8 Film grain analysis .25
8.1 General . 25
8.2 Denoising and image analysis . 26
8.2.1 Denoising . 26
8.2.2 Edge and texture analysis . 26
8.3 Determination of grain scaling function .27
8.3.1 General .27
8.3.2 An example of FGC SEI message scaling factor estimation .27

© ISO/IEC 2024 – All rights reserved
iii
8.3.3 An example of AFGS1 scaling factor estimation.31
8.4 Determination of cut-off frequencies for frequency filtering model .31
8.4.1 General .31
8.4.2 An example of FGC SEI message cut-off frequency estimation .32
8.5 Determination of autoregressive model coefficients . 33
9 Film grain metadata .33
9.1 General . 33
9.2 Film grain characteristics SEI message . 34
9.2.1 General . 34
9.2.2 Interpretation of FGC SEI message syntax . 34
9.3 AFGS1 metadata . 36
9.3.1 General . 36
9.3.2 Interpretation of AFGS1 metadata syntax . 36
Annex A (informative) Example implementations of the derivation of x/y offset.39
Annex B (informative) Example implementations of film grain synthesis technologies . 41
Bibliography . 47

© ISO/IEC 2024 – All rights reserved
iv
Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are
members of ISO or IEC participate in the development of International Standards through technical
committees established by the respective organization to deal with particular fields of technical activity.
ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations,
governmental and non-governmental, in liaison with ISO and IEC, also take part in the work.
The procedures used to develop this document and those intended for its further maintenance are described
in the ISO/IEC Directives, Part 1. In particular, the different approval criteria needed for the different types
of document should be noted. This document was drafted in accordance with the editorial rules of the ISO/
IEC Directives, Part 2 (see www.iso.org/directives or www.iec.ch/members_experts/refdocs).
ISO and IEC draw attention to the possibility that the implementation of this document may involve the
use of (a) patent(s). ISO and IEC take no position concerning the evidence, validity or applicability of any
claimed patent rights in respect thereof. As of the date of publication of this document, ISO and IEC had not
received notice of (a) patent(s) which may be required to implement this document. However, implementers
are cautioned that this may not represent the latest information, which may be obtained from the patent
database available at www.iso.org/patents and https://patents.iec.ch. ISO and IEC shall not be held
responsible for identifying any or all such patent rights.
Any trade name used in this document is information given for the convenience of users and does not
constitute an endorsement.
For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and expressions
related to conformity assessment, as well as information about ISO's adherence to the World Trade
Organization (WTO) principles in the Technical Barriers to Trade (TBT) see www.iso.org/iso/foreword.html.
In the IEC, see www.iec.ch/understanding-standards.
This document was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information, in collaboration with
ITU-T (as ITU-T twin H.Sup-FGST).
A list of all parts in the ISO/IEC 23002 series can be found on the ISO and IEC websites.
Any feedback or questions on this document should be directed to the user’s national standards
body. A complete listing of these bodies can be found at www.iso.org/members.html and
www.iec.ch/national-committees.

© ISO/IEC 2024 – All rights reserved
v
Introduction
Film grain synthesis technology can provide subjective quality benefits for certain video applications and
can be used to effectively achieve improved video compression. The use of such technology can involve
pre-processing to reduce film grain and sensor noise that is present in a video or image signal prior to
compression. Metadata information can then be conveyed to a decoder and used to synthesize noise with
similar characteristics as in the original content as a post-processing stage that follows the compression
decoding process. This metadata can be signalled using appropriate mechanisms, such as the supplemental
enhancement information messages that are supported by several video coding standards.
This document provides a referenceable overview of the end-to-end processing steps for film grain and
sensor noise removal, estimation, parameterization, synthesis, and blending for consumer distribution
applications. This document includes examples of encoder-side and post-decoding processing steps for grain
blending for some of the currently defined technologies.

© ISO/IEC 2024 – All rights reserved
vi
Technical Report ISO/IEC TR 23002-9:2024(en)
Information technology — MPEG video technologies —
Part 9:
Film grain synthesis technology for video applications
1 Scope
This document provides a description of the film grain synthesis technology in video applications, including
for use with Rec. ITU-T H.264 | ISO/IEC 14496-10, Rec. ITU-T H.265 | ISO/IEC 23008-2 and Rec. ITU-T H.266
| ISO/IEC 23090-3.
2 Normative references
The following documents are referred to in the text in such a way that some or all of their content constitutes
requirements of this document. For dated references, only the edition cited applies. For undated references,
the latest edition of the referenced document (including any amendments) applies.
Rec. ITU-T H.264 | ISO/IEC 14496-10, Information technology — Coding of audio-visual objects — Part 10:
Advanced video coding
Rec. ITU-T H.265 | ISO/IEC 23008-2, Information technology — High efficiency coding and media delivery in
heterogeneous environments — Part 2: High efficiency video coding
Rec. ITU-T H.266 | ISO/IEC 23090-3, Information technology — Coded representation of immersive media —
Part 3: Versatile video coding
Rec. ITU-T H.274 | ISO/IEC 23002-7, Information technology — MPEG video technologies — Part 7: Versatile
supplemental enhancement information messages for coded video bitstreams
3 Terms and definitions
For the purposes of this document, the terms and definitions given in Rec. ITU-T H.264 | ISO/IEC 14496-10,
Rec. ITU-T H.265 | ISO/IEC 23008-2, Rec. ITU-T H.266 | ISO/IEC 23090-3 and Rec. ITU-T H.274 |
ISO/IEC 23002-7 apply.
ISO and IEC maintain terminology databases for use in standardization at the following addresses:
— ISO Online browsing platform: available at https:// www .iso .org/ obp
— IEC Electropedia: available at https:// www .electropedia .org/

© ISO/IEC 2024 – All rights reserved
4 Abbreviated terms
AFGS1 AOMedia film grain synthesis 1
AVC Advanced video coding (Rec. ITU-T H.264 | ISO/IEC 14496-10)
DCT Discrete cosine transform
FGS Film grain synthesis
FGC Film grain characteristics
HD High definition
HEVC High efficiency video coding (Rec. ITU-T H.265 | ISO/IEC 23008-2)
IDCT Inverse discrete cosine transform
LFS Linear feedback shift register
LUT Look-up table
MCTF Motion-compensated temporal filtering
SD Standard definition
SEI Supplemental enhancement information
UHD Ultra-high definition
VSEI Versatile supplemental enhancement information (Rec. ITU-T H.274 | ISO/IEC 23002-7)
VVC Versatile video coding (Rec. ITU-T H.266 | ISO/IEC 23090-3)
5 Conventions
5.1 General
The mathematical operators used in this document are similar to those used in the C programming language.
However, the results of integer division and arithmetic shift operations are defined more precisely, and
additional operations are defined, such as exponentiation and real-valued division. Numbering and counting
conventions generally begin from 0, e.g. "the first" is equivalent to the 0-th, "the second" is equivalent to the
1-th, etc.
5.2 Arithmetic operators
The following arithmetic operators are defined as follows:
+ Addition
− Subtraction (as a two-argument operator) or negation (as a unary prefix operator)
* Multiplication, including matrix multiplication
Exponentiation. Denotes x to the power of y. In other contexts, such notation is used for super-
y
x
scripting not intended for interpretation as exponentiation.
Integer division with truncation of the result towards zero. For example, 7 / 4 and (−7) / (−4)
/
are truncated to 1 and (−7) / 4 and 7 / (−4) are truncated to −1.

© ISO/IEC 2024 – All rights reserved
Used to denote division in mathematical formulae where no truncation or rounding is intend-
÷
ed.
Used to denote division in mathematical formulae where no truncation or rounding is intend-
x
ed.
y
y
The summation of f( i ) with i taking all integer values from x up to and including y.
fi
()
∑
ix=
x % y Modulus. Remainder of x divided by y, defined only for integers x and y with x >= 0 and y > 0.
5.3 Bit-wise operators
The following bit-wise operators are defined as follows:
Bit-wise "and". When operating on integer arguments, operates on a two's complement rep-
resentation of the integer value. When operating on a binary argument that contains fewer
&
bits than another argument, the shorter argument is extended by adding more significant bits
equal to 0.
Bit-wise "or". When operating on integer arguments, operates on a two's complement rep-
resentation of the integer value. When operating on a binary argument that contains fewer
|
bits than another argument, the shorter argument is extended by adding more significant bits
equal to 0.
Bit-wise "exclusive or". When operating on integer arguments, operates on a two's complement
representation of the integer value. When operating on a binary argument that contains fewer
^
bits than another argument, the shorter argument is extended by adding more significant bits
equal to 0.
Arithmetic right shift of a two's complement integer representation of x by y binary digits. This
x >> y function is defined only for non-negative integer values of y. Bits shifted into the MSBs as a
result of the right shift have a value equal to the MSB of x prior to the shift operation.
Arithmetic left shift of a two's complement integer representation of x by y binary digits. This
x << y function is defined only for non-negative integer values of y. Bits shifted into the LSBs as a
result of the left shift have a value equal to 0.
5.4 Assignment operators
The following assignment operators are defined as follows:
= Assignment operator
Increment, i.e. x++ is equivalent to x = x + 1; when used in an array index, evaluates to the value
++
of the variable prior to the increment operation.
Decrement, i.e. x− − is equivalent to x = x − 1; when used in an array index, evaluates to the
− −
value of the variable prior to the decrement operation.
Increment by amount given, i.e. x += 3 is equivalent to x = x + 3, and x += ( −3 ) is equivalent
+=
to x = x + ( −3 ).
Decrement by amount given, i.e. x −= 3 is equivalent to x = x − 3, and x −= ( −3 ) is equivalent
−=
to x = x − ( −3 ).
5.5 Relational, logical and other operators
The following operators are defined as follows:

© ISO/IEC 2024 – All rights reserved
== Equality operator
!= Not equal to operator
!x Logical negation "not"
> Larger than operator
< Smaller than operator
>= Larger than or equal to operator
<= Smaller than or equal to operator
Conditional/logical "and" operator. Performs a logical "and" of its Boolean operators, but only
&&
evaluates the second operand if necessary.
Conditional/logical "or" operator. Performs a logical "or" of its Boolean operators, but only
| |
evaluates the second operand if necessary.
Ternary conditional. If condition a is true, then the result is equal to b; otherwise the result is
a ? b : c
equal to c.
5.6 Range notation
y.z range operator/notation.
This function is defined only for integer values of y and z. When z is larger than or equal to y, it
defines an ordered set of values from y to z in increments of 1. Otherwise, when z is smaller than
y, the output of this function is an empty set. If this operator is used within the context of a loop,
it specifies that any subsequent operations defined are performed using each element of this set,
unless this set is empty.
5.7 Mathematical functions
The following mathematical functions are defined as follows:
x    ;    x>= 0
Abs( x ) =
{
− Ceil( x ) the smallest integer greater than or equal to x.
x   ;        z< x


Clip3( x, y, z ) = y   ;        z> y


z   ;        otherwise

Floor( x ) the smallest integer lower than or equal to x.
x   ;    xy<=

Min( x, y ) =

y   ;    xy>

5.8 Order of operations
When order of precedence in an expression is not indicated explicitly by use of parentheses, the following
rules apply:
— Operations of a higher precedence are evaluated before any operation of a lower precedence.
— Operations of the same precedence are evaluated sequentially from left to right.

© ISO/IEC 2024 – All rights reserved
Table 1 specifies the precedence of operations from highest to lowest; a higher position in the table indicates
a higher precedence.
NOTE For those operators that are also used in the C programming language, the order of precedence used in this
document is the same as that used in the C programming language.
Table 1 — Operation precedence from highest (at top of table) to lowest (at bottom of table)
operations (with operands x, y, and z)
"x++", "x−−"
"!x", "−x" (as a unary prefix operator)
y
x
x
"x * y", "x / y", "x ÷ y", " ", "x % y"
y
y
"x + y", "x − y" (as a two-argument operator), ""f i
()
∑
ix=
"x << y", "x >> y"
"x < y", "x <= y", "x > y", "x >= y"
"x == y", "x != y"
"x & y"
"x | y"
"x && y"
"x || y"
"x ? y : z"
"x.y"
"x = y", "x += y", "x −= y"
6 Overview of film grain technologies
6.1 General
This clause provides an overview of film grain technologies in the context of video/image compression and
distribution. It includes historical information on the development of such technologies in subclause 6.2,
information on some of the use cases and applications in subclause 6.3, and a high-level description of film
grain modelling in subclause 6.3. More details are provided in subsequent clauses as follows:
— Clause 7 describes some of the already defined film grain synthesis technologies, and in particular the
frequency filtering and autoregressive models.
— Clause 8 provides examples of technologies that can be used for film grain analysis, including techniques
for video denoising, edge and complex texture detection, film grain characteristic analysis, and model
parameter estimation.
— Clause 9 describes some of the film grain metadata that have already been defined in current image/
video coding standards and specifications, and how each metadata is interpreted, if appropriate, in the
context of the frequency filtering and autoregressive models.
— Example implementations of such technologies are then described in Annex A and Annex B.
6.2 Film grain technical characteristics
The multimedia distribution industry began using celluloid (analogue) film as the medium for capture,
editing and distribution. Content distribution evolved to analogue technology and then digital technologies.
During this evolution, the attraction to the visual characteristics of analogue film did not fade. Due to its

© ISO/IEC 2024 – All rights reserved
physical nature, analogue film produced a visual experience that was appreciated by many. Film grain is
one of the characteristics of analogue film and is considered a primary contributor to the visual appearance
of analogue film, e.g. film look or also known as the cinematic look. Film grain is a product of the physical
characteristics of analogue film. It refers to the spatiotemporal variations in optical density of processed
film that resulted from photographically developing the light-exposed silver-halide crystals dispersed in
[1]
photographic emulsion. Images are thus formed by exposure and the development of these crystals. In
colour images, where the silver is chemically removed after development, dye clouds (like soft, tiny grains)
are formed on the sites where the silver crystals have been exposed. Grains are randomly distributed in the
resulting image because of the random formation of silver crystals in the original emulsion. The naked eye
cannot distinguish individual grains, which are about 2 microns down to about a tenth of that in size. Instead,
the eye resolves groups of grains in an image, that an observer identifies as a grainy look that is commonly
called “film grain”. This is illustrated in Figure 1. Another example is shown in Figure 2, with a different
colour image formation process called “autochrome”. This was one of the first colour image techniques
invented by Auguste and Louis Lumière in 1903, where a classical black and white photo emulsion was
exposed through a colour filter made of a fine dust of potato starch dyed with different colours.
In general, the higher the image resolution, the higher likelihood for perception of film grain. Film grain can
be clearly noticeable in cinema and high definition (HD) images; although it progressively loses importance in
standard definition (SD) images and becomes imperceptible in smaller formats as described in Reference [2].
a) 4000 dots per inch (2.54 cm) b) raw negative 500× microscope view
scan of 2 mm × 2 mm area of 0.1 mm × 0.1 mm area
1)
Figure 1 — Fuji Superia™ 400 film
Figure 2 — 24 mm × 24 mm and 2.2×2.2 mm crops of a 1916 autochrome picture
(13 cm × 18 cm glass plate) photograph by Albert Samama Chikly,
scan courtesy of Ministère de la Culture / RMN-GP (France)
TM
1) Fuji Superia 400 is an example of film product available commercially. This information is given to describe
examples used in this document and does not constitute an endorsement by ISO or IEC of the use of this product.

© ISO/IEC 2024 – All rights reserved
Film grain appearance is therefore inevitable because of the physical nature of the process embedded in the
film design itself. However, historically, it was considered as noise, and as such, technological advances have
gone in the direction of its elimination.
The silver-halide crystals were engineered to be smaller and less visible, however due to the physical design
and characteristics of analogue film, it was not possible to completely eliminate the grainy look. With the
advancements of digital camera sensors and their widespread utilization, the grainy look has been mostly
eliminated. Although digital sensors have brought many possibilities in terms of visual quality and visual
processing, the “film look” lives on among professionals and film enthusiasts. Within the new era, film grain has
turned into a visual tool and not just a by-product of chemical processing as in the case of analogue film stock.
Note that the term film grain also includes synthetic film grain that can be added in post-production to
digitally captured high-value content for artistic effect or to mask imperfections in digital footage, which
can otherwise look too sharp and unnatural. The term “film grain” can sometimes be used informally to
refer to image sensor noise, particularly in low light and high-speed captures.
Therefore, perception of moderate grain texture is a desirable, often sought after, characteristic in
motion picture and video productions. Although the exact effect of the grain is not clear, it is considered
a requirement in the motion picture industry to preserve the grainy appearance of images throughout
the image processing and delivery chain. Intuitively, in this context, the presence of film grain can help to
differentiate ‘real-world’ images from ‘computer-generated’ material, which are commonly created with no
film grain. Furthermore, it is possible that film grain provides some visual cues that facilitate the correct
[2]
perception of depth in two-dimensional pictures. Even when movies are captured with digital cameras,
artificial film grain can be added at a post-processing stage to create a specific look, which artists qualify as
“soft”, “organic”, or “living”. Synthetic film grain is also used to harmonize capture from different cameras,
potentially mixing film and digital capture and different lighting conditions.
Film grain preservation during video distribution, and especially when targeting low bitrate applications,
can be challenging for two reasons. First, compression gains related to temporal prediction cannot be fully
leveraged because of the random nature of the grain. Film grain noise is temporally independent, and as
a result, motion compensation cannot be efficiently used for its prediction. Second, the grain commonly
appears at high spatial frequencies, and it is typically filtered with other noise by in-loop filters, such as
[2]
deblocking filters, or due to the quantization process. This challenge is more severe with recent coding
formats, as bitrate gains have come along with noise elimination. In addition, introduction of pre-filtering in
the video distribution chain can potentially remove film grain prior to compression. The use of quantization
[3] [4]
matrices , could potentially assist in the preservation of some of the film grain within the video content,
however this also can have severe limitations, especially at lower bitrates, and for streaming applications.
This report focuses on film grain technology from the video compression and distribution point of view. It
includes encoder-side and decoder-side aspects. On the encoder side, film grain technology provides means
to denoise and/or analyse source video to improve compression and to determine statistical characteristics
of the film grain to be synthesized at the decoder. At the decoder side, film grain technology provides the
means to synthesize and blend film grain with the decoded video.
6.3 Film grain modelling
To synthesize grain, use of light-dependent film grain model parameters can be useful, particularly for the
simulation of photographic film grain, as photographic film grain is intrinsically light intensity (exposure)
dependent. First, variation of film opacity is the result of a variation of grain density, as seen in Figure 1,
which has an impact on the perceived grain. Also, film is organized in several layers (usually 3) for each
colour component, with various light sensitivities to reach to its full dynamic range. Light-sensitive crystals
have a distribution of sizes. Larger crystals capture more photons and are more likely to be exposed than
smaller crystals, particularly in darker regions. This results in a dependency of the noise characteristics on
brightness. An example with both grain size and strength variation is shown in Figure 3.

© ISO/IEC 2024 – All rights reserved
2)
Figure 3 — Kodak Vision™ 250D film and 3063 dots per inch (2.54 cm) scan of 2.7×2.7 mm areas of
the same picture
6.4 Film grain use cases and applications
Two main film grain use cases are presented below:
a) The first use case of film grain synthesis is artistic intent: recreate the film grain at the decoder side,
which was unavoidably lost by compression involved in content distribution at practical bitrates. In this
case, the film grain is considered to be a significant aspect of the video, and the content provider wants
it to be part of the user experience. Preserving film grain through video compression would require
too high bit rates for applications such as adaptive streaming and broadcasting. On the other hand,
removing film grain allows using the full potential of video compression technologies, while requiring
film grain synthesis after decoding.
b) The second use case, which can also complement the first one, is the masking of compression
impairments, like blocking, banding, “mosquito” noise, etc., including impairments due to quantization.
If there is no artistic intent, then the constraints on film grain model accuracy can be relaxed. For this
use case, the encoder can adjust film grain parameters to fit the coding parameters, so that the intended
defect masking is effective (e.g. by adjusting noise amplitude based on quantization step sizes).
It was determined that removing the film grain by filtering the content, compressing, and providing
information that enables the regeneration of the film grain, even if that is just an approximation, can result in
more efficient coding performance and a better visual outcome. This is called film grain modelling. The use of
film grain modelling technologies can be beneficial for image and video compression by providing improved
subjective quality at a lower bitrate for certain types of video content. For example, these technologies can
potentially provide benefits to video content that contains noise, such as film grain or image sensor noise.
Thus, film grain modelling technologies provide a means of optionally removing noise prior to or during the
encoding process to improve compression efficiency and, subsequently, to reconstruct an approximation of
the film grain during or after the decoding process. It can also be used to add visual noise to decoded video
to mask or attenuate the visibility of compression artefacts. Note here that visually pleasant noise can be
added to the decoded video even if the source video had no visible noise/film grain to fulfil the masking task
mentioned above.
6.5 Film grain workflow
Use of film grain modelling technologies to denoise a source video by using a pre-processor is illustrated
in Figure 4. Source video is input to a denoising process that outputs a video sequence from which noise
or film grain is attenuated or removed. A film grain parameterization process then compares the source
and denoised videos to determine film grain model parameter values, which relate to the variance, spatial
frequency characteristics, colour correlation, and other statistical characteristics of the film grain. The
TM
2) Kodak Vision 250D is an example of film product available commercially. This information is given to describe
examples used in this document and does not constitute an endorsement by ISO or IEC of the use of this product.

© ISO/IEC 2024 – All rights reserved
process of denoising followed by the film grain model parameter estimation is commonly referred to as the
film grain analysis process. Such process will be further discussed in Clause 8.
After these processes are performed, the denoised video is then encoded and the film grain model parameter
values are either signalled in the coded bitstream or provided to the decoder by some external means.
Figure 4 — Use of film grain modelling technologies with a denoising pre-processing stage
An alternative implementation of a film grain denoising and modelling system is also illustrated in Figure 5.
In this case, the encoder itself acts as the denoising process.
Figure 5 — Use of film grain modelling technologies with an encoder to denoise source video
The use of film grain modelling technologies with pre-determined film grain parameter values is illustrated
in Figure 6. Note that film grain parameter values can, for example, have been pre-determined during post-
production or when the statistical characteristics of the film grain are otherwise known a priori. The film
grain parameters could be adjusted by the encoder depending on coding parameters or a default film grain
configuration could be selected to mask coding artefacts. In such case, film grain can be added at the decoder
side even if it was not present in the source video.
Figure 6 — Use of film grain modelling technologies with pre-determined film grain model
parameter values
In any case, model parameters can be manually tuned/fine-tuned by a skilled person and provided to the
encoder, for example, to be used as illustrated on Figure 6.
Figure 7 presents a decoding process, along with the film grain synthesis post-processing, for each of the
examples provided in Figure 4 to Figure 6. At the decoder, the film grain model parameter values are parsed

© ISO/IEC 2024 – All rights reserved
and input to a film grain synthesis process that generates simulated film grain and blends the grain with the
decoded video to output decoded video with simulated film grain.
Figure 7 — Decoding process along with the film grain synthesis post-processing
7 Film grain synthesis
7.1 General
Film grain synthesis is commonly based on Gaussian noise generation, with spatial correlation modelled
either by frequency limits or autoregressive parameters, and local adaptation that consists of adjusting
grain amplitude and, optionally, correlation, to target image intensity levels.
Gaussian noise can be generated with a random generator and a Gaussian distribution table. The Gaussian
noise generator can be run for every sample in the picture, along with spatial correlation methods.
Alternatively, it can be run for a limited area (e.g. 64×64 samples), further called a “template”, that is
then randomized to generate the full picture. Several such templates need to be generated when spatial
correlation varies across intensity intervals (e.g. when film grain shape is not the same across the image).
Template pattern randomization (i.e. extension to the full picture) can be performed by dividing the picture
into blocks smaller than the template (e.g. 16×16 or 32×32 blocks compared to a 64×64 template), and by
choosing a pseudo-random offset within the template space for each of those smaller blocks. A pseudo-
random sign inversion can be added to the random offset to improve randomization. When such a process
is performed, deblocking can be needed across randomization blocks, especially when spatial correlation
within the grain pattern is significant (in other words: when the grain is large).
Working with templates avoids running the Gaussian generator and correlation process for the full picture,
which can be costly, not only because of more computations, but also because storing neighbouring lines (for
spatial corr
...