VerticalCleaner

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (Description)
m (link)
Line 1: Line 1:
 
{{FilterCat|External_filters|Denoisers|Spatial Denoisers}}
 
{{FilterCat|External_filters|Denoisers|Spatial Denoisers}}
{{Filter2
+
{{Filter3
 
| {{Author/kassandro}}
 
| {{Author/kassandro}}
 
| v0.1
 
| v0.1
Line 6: Line 6:
 
| Spatial Denoisers
 
| Spatial Denoisers
 
| [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
| [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
|}}
+
|6=[http://videoprocessing.fr.yuku.com/reply/647/Can-use-quantile-like-vertical-median-filter#reply-647 VideoProcessing Forum]}}
 
<br>
 
<br>
 
== Description ==
 
== Description ==

Revision as of 22:33, 16 August 2014

Abstract
Author Kassandro
Version v0.1
Download VericalCleaner.rar
Category Spatial Denoisers
License GPLv2
Discussion VideoProcessing Forum


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)
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.


bool  planar = false
See SSETools Interleaved2Planar.


Examples

VerticalCleaner with default values:

AviSource("Blah.avi")
VerticalCleaner(mode=2, planar=false)


Changelog

2008-02-28 :
 - Initial release


Links





Back to External Filters

Personal tools