VirtualDub MSU Denoising Filter
Algorithm, ideas: Dr. Dmitriy Vatolin, Dmitriy Kulikov
Implementation: Sergey Putilin, Ilya Tsvetkov
Version 2.5 released
The filter is designed for noisy video stream processing, video quality improvement, or video preprocessing (e.g. for preprocessing before compression or deinterlacing). The filter implementation is able to use GPU processing power to increase the processing speed.
|Free version for non-commercial home usage only||License for commercial or professional usage|
- New algorithm for high definition video (HDTV) processing added
- Automatic noise estimation
- Shot detection to reduce artifacts during temporal denoising
- Cg libraries are not used any more
- First version with support for fast video processing using GPU
- New interface
By default filter uses automatic noise estimation and is ready for video processing without any manual setup. In this mode user can slightly correct denosing strength to achieve necessary results Automatic noise estimation checkbox controls this mode.
Setting the checkbox
you can select GPU or CPU versions of algorithm.
GPU-mode is available, so you can use GPU for video processing (this feature is optional)
GPU-mode is unavailable. The most probable reason is that your computer does not meet the minimum system requirements of the filter
Note that not all graphic-cards are supported. We recommend to use ATI Radeon X700 or higher and nVidia Geforce 6600 or higher. The filter requires OpenGL 2.1 support. We strongly recommend to install the latest video-drivers to use GPU-mode and achieve better performance.
Filter provides two different algorithms for video denoising (selection is made via Algorithms list):
- MSU Denoiser - algorithm used in previous versions of filter
- Bilateral - new algorithm which is implemented in three variants corresponding to different performance/quality ratios. This algorithm is most suitable for HD video denoising because of its quality.
The filter suppresses noise in both spatial and temporal domains. Filter effect is specified for each type of denoising in the dialogue box as shown. Checkboxes help to set required combination of domains, thus enabling spatial-only or temporal-only denoising.
The new feature of 2.5 release is careful scene change processing. The filter detects shots to prevent artifacts of temporal denoising, but can also reduce the performance, especially when high performance GPU is used.
Filter supports Job Control and can be used with AviSynth. Here is an example:
LoadVirtualDubPlugin("..\VirtualDub\plugins\MSUDenoiser25.vdf", "MSUDenoiser", 1)
clip = AviSource("video.avi")
clip.ConvertToRGB32.MSUDenoiser(algorithm, gpuMode, correction, shotDetection)
- algorithm: 0 - MSU Denoiser; 1 - Bilateral, small region (fast); 2 - Bilateral, medium; 3 - Bilateral, big region (best quality);
- gpuMode - if set to 0, CPU is used; GPU otherwise;
- correction - manual correction for automatic mode (50 - no correction);
- shotDetection - careful scene change processing (for MSU Denoiser algorithm only).
Let's consider filter operation on Susy sequence first. The sequence is quite noisy in spatial and temporal domains.
Let's compare source frame with the frame processed by MSU Denoising Filter:
Source frame with noise
Frame processed by MSU Denoising Filter
(made with 'hard' preset that emphasizes filter effect)
Here is a comparison between two versions of MSU Denoiser: old version without GPU processing and new version with GPU processing
Comparison of filter processing speed on different hardware
Increase of performance speed compared with CPU (Pentium 4 3.4 GHz) version of algorithm
To use the filter download the archive using the link given below and extract its content into VitualDub plugins directory.
|For common questions about filter's work please contact us|
|For commercial license of this filter (commercial usage is not free) please contact us|
Server size: 8069 files, 1215Mb (Server statistics)
Project sponsored by YUVsoft Corp.
Project supported by MSU Graphics & Media Lab