VirtualDub MSU Smart Deblocking Filter

MSU Graphics & Media Lab (Video Group)

Algorithm: Dmitriy Vatolin,
Anton Obuhov, Sergey Grishin
Implementation: Anton Obuhov

MSU Smart Deblocking 0.5:
Improved main deblocking algorithm
Improved color processing algorithm
Improved blockiness preprocessor
Improved unaligned blockiness preprocessor
Added directional filtering control (on/off)
Added save/load directional filtering parameters in job control
Added Edge Sensivity control
Fixed blockiness creation bug in flat background areas
Minimal speed optimisation
MSU Smart Deblocking 0.1:
First public release

Filter is intended for recovering quality of video ripped from DVD (for example, when it contains 4 hours of video data), VideoCD, shot on cameraphone or after decompressing by H.261, H.263, DivX 3, DivX 4, XviD.

Filter automatically determines the blockiness's strength on the frame and in the concrete part of it, preserving the maximum of details. Thus, filter will process marginally when on scenes with slow motion, while it will smooth very hard in the case of fast motion in the same film.

The main advantages of the filter are:

Settings

Filter's interface allows to adjust the main parameters of processing. The filter can also visualize the result of edge detection.
Tip: The "Preview" button allows to instantly observe the results of filter settings modification. The "Show Edges" option works in preview mode only.
Tip: You can speed up the processing by unchecking some options.

Use block preprocessor
Default is ON.
Enables block preprocessing. You can see the example of degraded movie with a lot of blockiness, deblocked with preprocessing and without it:

Preprocess unaligned
Default is ON.
In case of slow motion unaligned blockiness may appear. Such blockiness is the problem for the most of deblocking techniques. If the option "Preprocess unaligned" is checked, the filter searches areas with unaligned blockiness and processes them. There are some examples below:

Preprocess chroma
Default is ON.
Enables preprocessing of color planes.

Process chroma
Default is ON.
Enables processing of color planes.

Use directional filtering
Default is OFF.
Enables directional filtering.

Tip: The next three controls actually work if "Use directional filtering" is checked.

Show edges
Default is OFF.
Enables visualization of found edges in preview window.

Edge Sensivity (0% - 100%)
Default value - 50.
The slider regulates the sensivity of edge detector: less to the left, more to the right. Optimal in most cases value is set by default.

Edge Threshold (0% - 100%)
Default value - 50.
The slider regulates the amount of found edges: more to the left, less to the right. Optimal in most cases value is set by default.
Tip: Directional filtering will be enabled in found edges.

Using AviSynth

Filter supports Job Control, and it can be used from AviSynth. Example:

LoadVirtualDubPlugin("...\MSU_Smart_Deblocking.vdf","MSU_Smart_Deblocking", 0)
clip=AVISource("source.avi", false, "RGB24") 
clip.ConvertToRGB32.MSU_Smart_Deblocking(1, 1, 1, 1, 1, 50, 50)

The values passed to the filter in line 3:
1) Enable block preprocessor (0,1)
2) Preprocess unaligned (0,1)
3) Preprocess chroma (0,1)
4) Process chroma (0,1)
5) Use directional filtering (0,1)
6) Edge attack (0-100)
7) Edge threshold (0-100)

Filter homepage

Additional information about this filter

See also

MSU Deblocking v2.2 filter page (Another deblocking method)