MosquitoNR
From Avisynth wiki
(Difference between revisions)
m (→Requirements: AviSynth 2.6) |
(add 64-bit version) |
||
Line 1: | Line 1: | ||
− | {{ | + | {{FilterCat5|External_filters|Plugins|Plugins_x64|Restoration_filters|Deringing & Mosquito Noise}} |
{{Filter3 | {{Filter3 | ||
− | |{{Author/b_inary}} | + | |1={{Author/b_inary}} |
− | |v0.10 | + | |2=v0.10 |
− | |[http://web.archive.org/web/20131028144351/http://www.geocities.jp/w_bean17/files/mosquito_nr_avisynth.zip mosquito_nr_avisynth.zip] | + | |3=[x86] [http://web.archive.org/web/20131028144351/http://www.geocities.jp/w_bean17/files/mosquito_nr_avisynth.zip mosquito_nr_avisynth.zip] |
− | |Deringing & Mosquito Noise | + | [x64] [https://www.dropbox.com/s/0dgrruxne80izus/MosquitoNR_0.10_x64.zip?dl=1 MosquitoNR_0.10_x64.zip] |
− | |[http://www.gnu.org/licenses/gpl-2.0.txt GPLv2] | + | |4=Deringing & Mosquito Noise |
+ | |5=[http://www.gnu.org/licenses/gpl-2.0.txt GPLv2] | ||
|6=[http://forum.doom9.org/showthread.php?t=167582 Doom9 Thread]}} | |6=[http://forum.doom9.org/showthread.php?t=167582 Doom9 Thread]}} | ||
== Description == | == Description == | ||
Line 18: | Line 19: | ||
<br> | <br> | ||
== Requirements == | == Requirements == | ||
− | * AviSynth | + | * [x86] [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6.0] |
+ | * [x64] [[AviSynth+]] | ||
* [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only | * [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only | ||
* Supported color formats: [[YUY2]], [[YV12]], [[YV16]], [[YV24]], [[YV411]], [[Y8]] | * Supported color formats: [[YUY2]], [[YV12]], [[YV16]], [[YV24]], [[YV411]], [[Y8]] | ||
− | |||
* CPU with [[SSE2]] support | * CPU with [[SSE2]] support | ||
Line 69: | Line 70: | ||
== Changelog == | == Changelog == | ||
Version Date Changes<br> | Version Date Changes<br> | ||
+ | v0.10 2013/11/29 - x64 version | ||
+ | - Compiled with Intel C++ Compiler XE 14.<br> | ||
v0.10 2013/03/14 - fixed a crash with AviSynth MT | v0.10 2013/03/14 - fixed a crash with AviSynth MT | ||
- added support for YV16, YV24, Y411, Y8 | - added support for YV16, YV24, Y411, Y8 |
Revision as of 16:43, 18 April 2020
Abstract | |
---|---|
Author | b_inary |
Version | v0.10 |
Download | [x86] mosquito_nr_avisynth.zip
[x64] MosquitoNR_0.10_x64.zip |
Category | Deringing & Mosquito Noise |
License | GPLv2 |
Discussion | Doom9 Thread |
Contents |
Description
MosquitoNR is a noise reduction filter designed for mosquito noise, which is often caused by lossy compression such as MPEG.
This filter works as follows:
- 1. Compute low frequency components of the image.
- 2. Apply direction-aware blur (smoothing). This blur effectively reduces compression artifacts, but also breaks detail.
- 3. Restore the low frequency components to the blurred image.
MosquitoNR processes luma only, to correctly process chroma take a look at the example below.
Requirements
- [x86] AviSynth+ or AviSynth 2.6.0
- [x64] AviSynth+
- Progressive input only
- Supported color formats: YUY2, YV12, YV16, YV24, YV411, Y8
- CPU with SSE2 support
Syntax and Parameters
- MosquitoNR (clip, int "strength", int "restore", int "radius", int "threads")
- clip =
- Input clip
- clip =
- int strength = 16
- Range: 0 - 32
- Sets the strength of the blur.
- Setting this value higher brings stronger noise reduction effect, but side effect will also become stronger.
- Range: 0 - 32
- int strength = 16
- int restore = 128
- Range: 0 - 128
- Sets the rate of restoring.
- If set to 0, no restoring is performed.
- If set to 128, low frequency components of the blurred image is completely replaced with those of the original image, and runs slightly faster.
- Range: 0 - 128
- int restore = 128
- int radius = 2
- Range: 1 - 2
- Sets the radius of the blur.
- 1 is faster, but will have insufficient effect in some cases.
- Range: 1 - 2
- int radius = 2
- int threads = 0
- Range: 0 - 32
- Controls how many threads are used.
- By default, threads is set equal to automatically detected number of processors.
- Since this filter needs a lot of memory access, thread efficiency is not very good. Setting this value lower might improve overall processing speed.
- Range: 0 - 32
- int threads = 0
Examples
MosquitoNR with default settings:
AviSource("Blah.avi") MosquitoNR(strength=16, restore=128, radius=2, threads=0)
MosquitoNR processes only luma.
If you want to process chroma too, you can write a script like the following, but there might be no noticeable change.
AviSource("Blah.avi") MosquitoNR() u = UtoY().MosquitoNR() # In AviSynth 2.6, UtoY8() may be faster v = VtoY().MosquitoNR() YtoUV(u, v, last)
Changelog
Version Date Changes
v0.10 2013/11/29 - x64 version - Compiled with Intel C++ Compiler XE 14.
v0.10 2013/03/14 - fixed a crash with AviSynth MT - added support for YV16, YV24, Y411, Y8 - some speed optimizations - added English documentation
v120210 2012/02/10 - initial release
Acknowledgments
This filter is a combination of flash3kyuu's AviUtl plugin "smoothing filter" and nilpo's AviUtl plugin "low frequency components protection filter".
This combination was proposed by POP@4bit. I thank all of them very much.
- flash3kyuu's web page (Japanese): http://www.geocities.jp/flash3kyuu/
- nilpo's web page (Japanese): http://nilposoft.info/aviutl-plugin/
- POP@4bit's web page (Japanese): http://pop.4-bit.jp/?p=3362
Extenal Links
- Doom9 Forum - MosquitoNR discussion.
Back to External Filters ←