VerticalCleaner
m (space) |
m (archived links) |
||
(One intermediate revision by one user not shown) | |||
Line 3: | Line 3: | ||
| {{Author/kassandro}} | | {{Author/kassandro}} | ||
| v0.1 | | v0.1 | ||
− | | [http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar | + | | [http://web.archive.org/web/20140420182854/http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar VerticalCleaner.rar] |
| 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]}} | + | |6=<strike>[http://videoprocessing.fr.yuku.com/reply/647/Can-use-quantile-like-vertical-median-filter#reply-647 VideoProcessing Forum]</strike>}} |
== Description == | == Description == | ||
Line 29: | Line 29: | ||
! colspan="2"| *VerticalCleanerSSE2.dll is highly recommended as it's considered to be the most compatible and stable. | ! colspan="2"| *VerticalCleanerSSE2.dll is highly recommended as it's considered to be the most compatible and stable. | ||
|} | |} | ||
+ | <br> | ||
+ | <span style="color:red">'''Note: [[RgTools]] is recommended as a modern drop-in replacement for VerticalCleaner.'''</span> | ||
+ | <br> | ||
<br> | <br> | ||
Line 56: | Line 59: | ||
<br> | <br> | ||
== Mode Description== | == Mode Description== | ||
− | Written by [http://videoprocessing.fr.yuku.com/sreply/649/Can-use-quantile-like-vertical-median-filter | + | Written by [https://web.archive.org/web/20170616143827/http://videoprocessing.fr.yuku.com/sreply/649/Can-use-quantile-like-vertical-median-filter Kassandro]<br> |
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. | 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. | ||
Line 80: | Line 83: | ||
|- | |- | ||
!v0.1 | !v0.1 | ||
− | |[http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar VericalCleaner.rar] | + | |<strike>[http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar VericalCleaner.rar]</strike> |
|[http://web.archive.org/web/20140420182854/http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar VerticalCleaner.rar] | |[http://web.archive.org/web/20140420182854/http://home.arcor.de/kassandro/prerelease/VerticalCleaner.rar VerticalCleaner.rar] | ||
|} | |} | ||
Line 86: | Line 89: | ||
==External Links == | ==External Links == | ||
− | *[http://videoprocessing.fr.yuku.com/sreply/651/Can-use-quantile-like-vertical-median-filter VideoProcessing Forum] - Parameter description by Kassandro.<br> | + | *[https://web.archive.org/web/20170616094128/http://videoprocessing.fr.yuku.com/sreply/651/Can-use-quantile-like-vertical-median-filter VideoProcessing Forum] - Parameter description by Kassandro.<br> |
− | *[http://videoprocessing.fr.yuku.com/sreply/649/Can-use-quantile-like-vertical-median-filter VideoProcessing Forum] - Mode 2 explanation by Kassandro. | + | *[https://web.archive.org/web/20170616143827/http://videoprocessing.fr.yuku.com/sreply/649/Can-use-quantile-like-vertical-median-filter VideoProcessing Forum] - Mode 2 explanation by Kassandro. |
<br> | <br> | ||
<br> | <br> | ||
----------------------------------------------- | ----------------------------------------------- | ||
'''Back to [[External_filters#Spatial_Denoisers|External Filters]] ←''' | '''Back to [[External_filters#Spatial_Denoisers|External Filters]] ←''' |
Latest revision as of 18:40, 17 February 2020
Abstract | |
---|---|
Author | Kassandro |
Version | v0.1 |
Download | VerticalCleaner.rar |
Category | Spatial Denoisers |
License | GPLv2 |
Discussion | |
Contents |
[edit] 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. VerticalCleanerSSE3.dll Dynamically linked SSE3 version. [NOT RECOMMENDED] *VerticalCleanerSSE2.dll is highly recommended as it's considered to be the most compatible and stable.
Note: RgTools is recommended as a modern drop-in replacement for VerticalCleaner.
[edit] Requirements
- AviSynth 2.5.8 or later
- Progressive input only
- Supported color formats: YUY2, YV12
- MSVCR80.DLL
[edit] Syntax and Parameters
- VerticalCleaner (clip, int "mode", bool "planar")
- clip =
- Input clip.
- clip =
- int mode = 2
- Modes:
- 0 : copy input
- 1 : vertical median
- 2 : relaxed vertical median (preserves more detail)
- Modes:
- int mode = 2
- bool planar = false
- See SSETools Interleaved2Planar.
- bool planar = false
[edit] Mode Description
Written by Kassandro
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.
[edit] Examples
VerticalCleaner with default values:
AviSource("Blah.avi") VerticalCleaner(mode=2, planar=false)
[edit] Changelog
2008-02-28 : - Initial release
[edit] Archived Downloads
Version | Download | Mirror |
---|---|---|
v0.1 | VerticalCleaner.rar |
[edit] External Links
- VideoProcessing Forum - Parameter description by Kassandro.
- VideoProcessing Forum - Mode 2 explanation by Kassandro.
Back to External Filters ←