Cnr2

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(Archived Downloads)
(Description: add link to VsCnr2)
 
(6 intermediate revisions by one user not shown)
Line 1: Line 1:
{{FilterCat|External_filters|Denoisers|Temporal Denoisers}}
+
{{FilterCat5|External_filters|Plugins|Plugins_x64|Denoisers|Temporal_denoisers}}
 
{{Filter3
 
{{Filter3
| {{Author/Marc FD}}
+
|1={{Author/Marc FD}}
| v2.6.1
+
|2=v2.6.1_avs26
| [http://bengal.missouri.edu/~kes25c/cnr2_v261.zip cnr2_v261.zip]
+
|3=[https://www.dropbox.com/s/9fiab3s5exi43h2/cnr2_v261-avs26.zip?dl=1 cnr2_v261-avs26.zip]
| Temporal Denoisers
+
|4=Temporal Denoisers
| [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
+
|5=[http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
|}}
+
|6=[http://forum.doom9.org/showthread.php?t=78905 Doom9 Thread]}}
<br>
+
 
 
== Description ==
 
== Description ==
: This filter is a Chroma Stabilizer for analog sources. It's a temporal filter and it's very effective against two chroma artifacts: Stationary rainbows and huge analog chroma activity.
+
This filter is a Chroma Stabilizer for analog sources. It's a temporal filter and it's very effective against two chroma artifacts: Stationary rainbows and huge analog chroma activity.<br>
:Cnr2 was inspired by the VirtualDub filter [http://web.archive.org/web/20041205081740/http://freevcr.ifrance.com/freevcr/virtualdub/cnr-en.html Chroma Noise Reduction 1.1] by Gilles Mouchard.
+
Cnr2 was inspired by the VirtualDub filter [http://web.archive.org/web/20041205081740/http://freevcr.ifrance.com/freevcr/virtualdub/cnr-en.html Chroma Noise Reduction 1.1] by Gilles Mouchard.
 +
<br>
 +
<br>
 +
<span style="color:red">'''Note: [[vsCnr2]] is recommended as a modern replacement for Cnr2.'''</span>
 +
<br>
 +
<br>
 +
 
 +
== Requirements ==
 +
* [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6]
 +
* [x64]: [[AviSynth+]]
 +
* [[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]]
 
<br>
 
<br>
== Requirements: ==
+
* [https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads Microsoft Visual C++ 2015 Redistributable Package (x86 / x64)]
:- AviSynth 2.5.8 or later
+
:<span style="color:red">***</span> <tt>vcredist_x86.exe</tt> is required for <tt>Cnr2-x86</tt>
:- [[FAQ_different_types_content#How_do_I_recognize_progressive.2C_interlaced.2C_telecined.2C_hybrid_and_blended_content.3F|Progressive]] input only
+
:<span style="color:red">***</span> <tt>vcredist_x64.exe</tt> is required for <tt>Cnr2-x64</tt>
:- Supported color formats: [[YUY2]], [[YV12]]
+
 
<br>
 
<br>
 
== [[Script variables|Syntax and Parameters]] ==
 
== [[Script variables|Syntax and Parameters]] ==
 
:{{Template:FuncDef|Cnr2 (''clip'', ''string'' "mode", ''float'' "scdthr", ''int'' "ln", ''int'' "lm", ''int'' "un", ''int'' "um", ''int'' "vn", ''int'' "vm", ''bool'' "log", ''bool'' "sceneChroma")}}
 
:{{Template:FuncDef|Cnr2 (''clip'', ''string'' "mode", ''float'' "scdthr", ''int'' "ln", ''int'' "lm", ''int'' "un", ''int'' "um", ''int'' "vn", ''int'' "vm", ''bool'' "log", ''bool'' "sceneChroma")}}
 
<br>
 
<br>
::{{Par2|mode|string| "oxx"}}
+
::{{Par2| |clip| }}
::::mode of each components, "YUV":
+
:::Input clip.
:::::* o : wide
+
<br>
:::::* x : narrow; this mode is more sensible to variations, and less effective.<br>
+
::{{Par2|mode|string|"oxx"}}
 +
:::Mode of each components, "[[YUV]]":
 +
::::* o : wide
 +
::::* x : narrow; this mode is more sensible to variations, and less effective.<br>
 
<br>
 
<br>
 
::{{Par2|scdthr|float|10.0}}
 
::{{Par2|scdthr|float|10.0}}
::::Scene change detection threshold (as percentage of maximum possible change):  
+
:::Scene change detection threshold (as percentage of maximum possible change):  
:::::If {{Template:FuncDef|sceneChroma}} is set to true, then it is the maximum possible change including both luma and chroma.
+
::::If {{Template:FuncDef|sceneChroma}} is set to true, then it is the maximum possible change including both luma and chroma.
:::::If {{Template:FuncDef|sceneChroma}} is set to false then it is the maximum possible change considering luma only (luma only is more reliable).
+
::::If {{Template:FuncDef|sceneChroma}} is set to false then it is the maximum possible change considering luma only (luma only is more reliable).
::::Lower it to make scene change detection more sensible. If a scene change is detected, Cnr2 will reset the filtering for the new scene.
+
:::Lower it to make scene change detection more sensible. If a scene change is detected, Cnr2 will reset the filtering for the new scene.
 
<br>
 
<br>
 
::{{Par2|ln|int|35}}
 
::{{Par2|ln|int|35}}
Line 37: Line 50:
 
::{{Par2|vn|int|47}}
 
::{{Par2|vn|int|47}}
 
::{{Par2|vm|int|255}}
 
::{{Par2|vm|int|255}}
:::Range: 0 to 255
+
::: l parameters control the luma channel, u and v corresponds to the U/V chroma channels respectively.
::::The ''n'' values are the movement sensibility; higher values will denoise more, but could produce ghosting artifacts.
+
:::The ''n'' values are the movement sensibility; higher values will denoise more, but could produce ghosting artifacts.
 +
:::The ''m'' values are the maximum effectiveness of the denoiser; lower them to reduce the denoising effect.
  
::::The ''m'' values are the maximum effectiveness of the denoiser; lower them to reduce the denoising effect.
+
:::Range: 0 to 255
 
<br>
 
<br>
 
::{{Par2|log|bool|false}}
 
::{{Par2|log|bool|false}}
::::Log the scene change stats (output them using OutputDebugString). You can use [http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx DebugView] to see it.  
+
:::Log the scene change stats (output them using OutputDebugString). You can use [http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx DebugView] to see it.  
::::It will simply list the detected change, the maximum allowable change for the current {{Template:FuncDef|scdthr}} setting, and the ratio (at 1.0 or greater a scene change has occurred).  
+
:::It will simply list the detected change, the maximum allowable change for the current {{Template:FuncDef|scdthr}} setting, and the ratio (at 1.0 or greater a scene change has occurred).  
 
<br>
 
<br>
 
::{{Par2|sceneChroma|bool|false}}
 
::{{Par2|sceneChroma|bool|false}}
::::Sets whether or not both chroma and luma are considered on scene change detection (true), or only luma (false).
+
:::Sets whether or not both chroma and luma are considered on scene change detection (true), or only luma (false).
::::Luma only detection tends to be more reliable.  
+
:::Luma only detection tends to be more reliable.  
 
<br>
 
<br>
 
== Examples ==
 
== Examples ==
Line 56: Line 70:
 
<br>
 
<br>
 
== Changelog ==
 
== Changelog ==
  Version     Date            Developer      Changes<br>
+
  Version           Date            Developer      Changes<br>
  v2.6.1     2004/06/30      tritical        - YUY2 opts as I had slowed it down
+
  v2.6.1_avs26     2016/06/26      Chikuzen        - Update to AviSynth 2.6 api
  v2.6       2004/06/29      tritical        - Some bug fixes and some code cleanup and rewriting
+
                                                  - x64 binary
  v2.51       2003/11/18      Klaus Post      - Further bug fixes
+
                                                  - Compiled with Microsoft Visual Studio C++ 2015
  v2.5       2003/11/13      Klaus Post      - Bug fixes
+
v2.6.1            2004/06/30      tritical        - YUY2 opts as I had slowed it down
  v2.4       2002/12/15      Marc FD        - Bug fixes
+
  v2.6             2004/06/29      tritical        - Some bug fixes and some code cleanup and rewriting
  v2.3       2002/11/13      Marc FD        - YV12 mode, scd (scene change detection)
+
  v2.51             2003/11/18      Klaus Post      - Further bug fixes
  v2.2       2002/08/01      Marc FD        - Ugly bug fixed
+
  v2.5             2003/11/13      Klaus Post      - Bug fixes
  v2.1       2002/07/31      Marc FD        - Bug Fixes (thanks to dividee ;)
+
  v2.4             2002/12/15      Marc FD        - Bug fixes
  v2.0       2002/07/20      Marc FD        - Initial release; AviSynth filter coded (from scratch)
+
  v2.3             2002/11/13      Marc FD        - YV12 mode, scd (scene change detection)
 +
  v2.2             2002/08/01      Marc FD        - Ugly bug fixed
 +
  v2.1             2002/07/31      Marc FD        - Bug Fixes (thanks to dividee ;)
 +
  v2.0             2002/07/20      Marc FD        - Initial release; AviSynth filter coded (from scratch)
 
<br>
 
<br>
 
== Archived Downloads ==
 
== Archived Downloads ==
Line 73: Line 90:
 
!!width="150px"| Download
 
!!width="150px"| Download
 
!!width="150px"| Mirror
 
!!width="150px"| Mirror
 +
|-
 +
!v2.6.1_avs26
 +
|[https://www.dropbox.com/s/9fiab3s5exi43h2/cnr2_v261-avs26.zip?dl=1 cnr2_v261-avs26.zip]
 +
|[https://web.archive.org/web/20200520181255if_/https://files.videohelp.com/u/223002/cnr2_v261-avs26.zip cnr2_v261-avs26.zip]
 
|-
 
|-
 
!v2.6.1  
 
!v2.6.1  
|[http://bengal.missouri.edu/~kes25c/cnr2_v261.zip cnr2_v261.zip]
+
|<strike>[http://bengal.missouri.edu/~kes25c/cnr2_v261.zip cnr2_v261.zip]</strike>
 
|[http://web.archive.org/web/20070222162801/http://bengal.missouri.edu/~kes25c/cnr2_v261.zip cnr2_v261.zip]
 
|[http://web.archive.org/web/20070222162801/http://bengal.missouri.edu/~kes25c/cnr2_v261.zip cnr2_v261.zip]
 
|}
 
|}
 
<br>
 
<br>
== Links ==
+
==External Links ==
*[http://forum.doom9.org/showthread.php?t=78905 Doom9 Forum] - Cnr2 discussion.
+
*[https://forum.doom9.org/showthread.php?t=78905 Doom9 Forum] - Cnr2 discussion.
<br>
+
*[https://forum.doom9.org/showthread.php?t=173638 Doom9 Forum] - Cnr2 v2.6.1_avs26 discussion.
 
<br>
 
<br>
 
<br>
 
<br>
 
-----------------------------------------------
 
-----------------------------------------------
 
'''Back to [[External_filters#Temporal_Denoisers|External Filters]] &larr;'''
 
'''Back to [[External_filters#Temporal_Denoisers|External Filters]] &larr;'''

Latest revision as of 05:07, 6 February 2023

Abstract
Author Marc FD
Version v2.6.1_avs26
Download cnr2_v261-avs26.zip
Category Temporal Denoisers
License GPLv2
Discussion Doom9 Thread

Contents

[edit] Description

This filter is a Chroma Stabilizer for analog sources. It's a temporal filter and it's very effective against two chroma artifacts: Stationary rainbows and huge analog chroma activity.
Cnr2 was inspired by the VirtualDub filter Chroma Noise Reduction 1.1 by Gilles Mouchard.

Note: vsCnr2 is recommended as a modern replacement for Cnr2.

[edit] Requirements


*** vcredist_x86.exe is required for Cnr2-x86
*** vcredist_x64.exe is required for Cnr2-x64


[edit] Syntax and Parameters

Cnr2 (clip, string "mode", float "scdthr", int "ln", int "lm", int "un", int "um", int "vn", int "vm", bool "log", bool "sceneChroma")


clip   =
Input clip.


string  mode = "oxx"
Mode of each components, "YUV":
  • o : wide
  • x : narrow; this mode is more sensible to variations, and less effective.


float  scdthr = 10.0
Scene change detection threshold (as percentage of maximum possible change):
If sceneChroma is set to true, then it is the maximum possible change including both luma and chroma.
If sceneChroma is set to false then it is the maximum possible change considering luma only (luma only is more reliable).
Lower it to make scene change detection more sensible. If a scene change is detected, Cnr2 will reset the filtering for the new scene.


int  ln = 35
int  lm = 192
int  un = 47
int  um = 255
int  vn = 47
int  vm = 255
l parameters control the luma channel, u and v corresponds to the U/V chroma channels respectively.
The n values are the movement sensibility; higher values will denoise more, but could produce ghosting artifacts.
The m values are the maximum effectiveness of the denoiser; lower them to reduce the denoising effect.
Range: 0 to 255


bool  log = false
Log the scene change stats (output them using OutputDebugString). You can use DebugView to see it.
It will simply list the detected change, the maximum allowable change for the current scdthr setting, and the ratio (at 1.0 or greater a scene change has occurred).


bool  sceneChroma = false
Sets whether or not both chroma and luma are considered on scene change detection (true), or only luma (false).
Luma only detection tends to be more reliable.


[edit] Examples

Cnr2 with default settings:

AviSource("Blah.avi")
Cnr2(mode="oxx", scdthr=10.0, n=35, lm=192, un=47, um=255, vn=47, vm=255, log=false, sceneChroma=false)


[edit] Changelog

Version           Date            Developer       Changes
v2.6.1_avs26 2016/06/26 Chikuzen - Update to AviSynth 2.6 api - x64 binary - Compiled with Microsoft Visual Studio C++ 2015 v2.6.1 2004/06/30 tritical - YUY2 opts as I had slowed it down v2.6 2004/06/29 tritical - Some bug fixes and some code cleanup and rewriting v2.51 2003/11/18 Klaus Post - Further bug fixes v2.5 2003/11/13 Klaus Post - Bug fixes v2.4 2002/12/15 Marc FD - Bug fixes v2.3 2002/11/13 Marc FD - YV12 mode, scd (scene change detection) v2.2 2002/08/01 Marc FD - Ugly bug fixed v2.1 2002/07/31 Marc FD - Bug Fixes (thanks to dividee ;) v2.0 2002/07/20 Marc FD - Initial release; AviSynth filter coded (from scratch)


[edit] Archived Downloads

Version Download Mirror
v2.6.1_avs26 cnr2_v261-avs26.zip cnr2_v261-avs26.zip
v2.6.1 cnr2_v261.zip cnr2_v261.zip


[edit] External Links




Back to External Filters

Personal tools