Grain-Degrain Project
- Project: Dr. Dmitriy Vatolin
- Implementation, ideas: Konstantin Strelnikov, Maxim Makhinya
We developed new methods of removing and applying of the film grain
(specific type of noise that is usually present in materials that were
captured from film). Our methods allow extraction of film grain
information from video and using it for applying of the grain that is
very similar to original.
Some examples and explanation you can find below.
Results
Here are three examples of film grain from real video, it could be easily seen that film grain has another structure than digital noise. In most cases film grain makes video more natural and also masks some small artifacts:

Frame from DA sequence (720x353)

Frame from MI sequence (640x272)

Frame from DTs sequence (1920x1088)
![]() Scaled part of frame from DA |
![]() Scaled part of frame from MI |
![]() Scaled part of frame from DTs |
We have developed several methods for film grain removal including temporal and spatial noise filtration; you can find few examples below:

Source fragment from DA

Grain removal results

Source fragment from MI

Grain removal results

Source fragment from DTs

Grain removal results
We are proposing two types of grain parameters estimation:
- Noise parameters estimation
- Finding the best matching pattern in the predefined database
And three types of grain generation:
- Using estimated noise parameters
- Using patches from database
- Using analytical approximation of grain structure
An example of visual comparison for grain generation you can find below:

Source fragment from DA

Regraining results

Source fragment from MI

Regraining results
We have obtained these results by original video de-graining, determining grain parameters and applying grain to the de-grained video. Structures of grain in the regrained frames look very similar to the original sources.
The following example shows how regraining technique helps to increase quality and makes compression artifacts significantly less noticeable:
![]() Source fragment from DA |
![]() Regraining results |
These methods provides possibility to add grain to any other video, making it more natural (for example adding grain to synthetic video). This also makes compressed video look better especially in case when original grain was corrupted by lossy video encoder.
Download
Please contact us if you are interested in a commercial license.
E-mail: video@graphics.cs.msu.ru
-
MSU Benchmark Collection
- MSU Video Upscalers Benchmark 2022
- MSU Video Deblurring Benchmark 2022
- MSU Video Frame Interpolation Benchmark 2022
- MSU HDR Video Reconstruction Benchmark 2022
- MSU Super-Resolution for Video Compression Benchmark 2022
- MSU No-Reference Video Quality Metrics Benchmark 2022
- MSU Full-Reference Video Quality Metrics Benchmark 2022
- MSU Video Alignment and Retrieval Benchmark
- MSU Mobile Video Codecs Benchmark 2021
- MSU Video Super-Resolution Benchmark
- MSU Shot Boundary Detection Benchmark 2020
- MSU Deinterlacer Benchmark
- The VideoMatting Project
- Video Completion
- Codecs Comparisons & Optimization
- VQMT
- MSU Datasets Collection
- Metrics Research
- Video Quality Measurement Tool 3D
- Video Filters
- Other Projects