VerticalCleaner
From Avisynth wiki
(Difference between revisions)
m (→Requirements:) |
m (→Description) |
||
Line 9: | Line 9: | ||
<br> | <br> | ||
== Description == | == Description == | ||
− | : A fast vertical median plugin | + | : A fast vertical median plugin which comes in 4 versions: |
− | + | ::{| class="wikitable" border="1"; width="700px" | |
− | + | |- | |
− | :: | + | !!width="200px"| Name |
− | + | !!width="500px"| Comments | |
− | + | |- | |
− | + | |VerticalCleanerS.dll | |
+ | |Statically linked [[SSE]] version. | ||
+ | |- | ||
+ | |VerticalCleaner.dll | ||
+ | |Dynamically linked [[SSE]] version. | ||
+ | |- | ||
+ | |VerticalCleanerSSE2.dll | ||
+ | |Dynamically linked [[SSE2]] version. | ||
+ | |- | ||
+ | |VerticalCleanerSSE2.dll | ||
+ | |Dynamically linked [[SSE3]] version. [NOT RECOMMENDED] | ||
+ | |- | ||
+ | ! colspan="2"| *VerticalCleanerSSE2.dll is highly recommended as it's considered to be the most compatible and stable. | ||
+ | |} | ||
<br> | <br> | ||
+ | |||
== Requirements: == | == Requirements: == | ||
:- AviSynth 2.5.8 or later | :- AviSynth 2.5.8 or later |
Revision as of 16:42, 15 June 2014
Abstract | |
---|---|
Author | Kassandro |
Version | v0.1 |
Download | VericalCleaner.rar |
Category | Spatial Denoisers |
License | GPLv2 |
Contents |
Description
- A fast vertical median plugin which comes in 4 versions:
Name Comments VerticalCleanerS.dll Statically linked SSE version. VerticalCleaner.dll Dynamically linked SSE version. VerticalCleanerSSE2.dll Dynamically linked SSE2 version. VerticalCleanerSSE2.dll Dynamically linked SSE3 version. [NOT RECOMMENDED] *VerticalCleanerSSE2.dll is highly recommended as it's considered to be the most compatible and stable.
Requirements:
- - AviSynth 2.5.8 or later
- - Progressive input only
- - Supported color formats: YUY2, YV12
- - MSVCR80.DLL
Syntax and Parameters
- VerticalCleaner (clip, int "mode", bool "planar")
- int mode = 2
- Modes:
- 0 : copy input
- 1 : vertical median
- 2 : relaxed vertical median (preserves more detail)
- Modes:
- int mode = 2
- Description of mode 2:
- Let b1, b2, c, t1, t2 be a vertical sequence of pixels. The center pixel c is to be modified in terms of the 4 neighbours.
- For simplicity let us assume that b2 <= t1. Then in mode 1, c is clipped with respect to b2 and t1, i.e. c is replaced by max(b2, min(c, t1)).
- In mode 2 the clipping intervall is widened, i.e. mode 2 is more conservative than mode 1.
- If b2 > b1 and t1 > t2, then c is replaced by max(b2, min(c, max(t1,d1) )), where d1 = min(b2 + (b2 - b1), t1 + (t1 - t2)).
- In other words, only if the gradient towards the center is positive on both clipping ends, then the upper clipping bound may be larger.
- If b2 < b1 and t1 < t2, then c is replaced by max(min(b2, d2), min(c, t1)), where d2 = max(b2 - (b1 - b2), t1 - (t2 - t1)).
- In other words, only if the gradient towards the center is negative on both clipping ends, then the lower clipping bound may be smaller.
- In mode 1 the top and the bottom line are always left unchanged. In mode 2 the two first and the two last lines are always left unchanged.
- Description of mode 2:
- bool planar = false
- See SSETools Interleaved2Planar.
- bool planar = false
Examples
VerticalCleaner with default values:
AviSource("Blah.avi") VerticalCleaner(mode=2, planar=false)
Changelog
2008-02-28 : - Initial release
Links
- VideoProcessing Forum - Parameter description by Kassandro.
- VideoProcessing Forum - Mode 2 explanation by Kassandro.
Back to External Filters ←