Anime4KCPP

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (Anime4KCPP: input clip colorspace)
(documentation update for v2.3.0)
Line 2: Line 2:
 
{{Filter3
 
{{Filter3
 
|1=[https://github.com/TianZerL TianZerL]
 
|1=[https://github.com/TianZerL TianZerL]
|2=v2.0.0  
+
|2=v2.3.0
|3=[https://github.com/TianZerL/Anime4KCPP/releases Anime4KCPP_AviSynthPlus_plugin-2.0.0-Win64-msvc.7z]
+
|3=[https://github.com/TianZerL/Anime4KCPP/releases Anime4KCPP_AviSynthPlus_plugin-2.3.0-Win64-msvc.7z]
 
|4=Resize  
 
|4=Resize  
 
|5=[https://github.com/TianZerL/Anime4KCPP/blob/master/LICENSE MIT]
 
|5=[https://github.com/TianZerL/Anime4KCPP/blob/master/LICENSE MIT]
Line 18: Line 18:
 
== Requirements ==
 
== Requirements ==
 
* [x64]: [[AviSynth+]]
 
* [x64]: [[AviSynth+]]
* Supported color formats: [[RGB24]]
+
* Supported color formats: [[RGB24]], [[YV24]]
** YUV444 also supported when <code>ACNet=true</code>
+
** YUV444, YUV422, and YUV420 is also supported when <code>ACNet=true</code>
 
<br>
 
<br>
 
== [[Script variables|Syntax and Parameters]] ==
 
== [[Script variables|Syntax and Parameters]] ==
  
 
===Anime4KCPP===
 
===Anime4KCPP===
:{{Template:FuncDef| Anime4KCPP (clip "src", int "passes", int "pushColorCount", float "strengthColor", float "strengthGradient", int "zoomFactor", bool "ACNet", bool "GPUMode", int "platformID", int "deviceID")}}
+
:{{Template:FuncDef| Anime4KCPP (clip "src", int "passes", int "pushColorCount", float "strengthColor", float "strengthGradient", int "zoomFactor", bool "ACNet", bool "GPUMode", bool "HDN", int "HDNlevel", int "platformID", int "deviceID")}}
  
 
<br>
 
<br>
 
::{{Par2|src|clip| }}
 
::{{Par2|src|clip| }}
:::Input clip must be [[RGB24]] or YUV444 if <code>ACNet=true</code>.
+
:::Input clip must be RGB24 or YV24 (YUV444P8) if <code>ACNet=false</code>..
 +
:::YV24 (YUV444P8), YV16 (YUV420P8), and YV12 (YUV420P8) are also supported if <code>ACNet=true</code>.
 
<br>
 
<br>
 
::{{Par2|passes|int|2}}
 
::{{Par2|passes|int|2}}
Line 49: Line 50:
 
<br>
 
<br>
 
::{{Par2|GPUMode|bool|false}}
 
::{{Par2|GPUMode|bool|false}}
:::Enable GPU acceleration
+
:::Enable GPU acceleration.
 +
<br>
 +
::{{Par2|HDN|bool|false}}
 +
:::Enable HDN mode for ACNet.
 +
<br>
 +
::{{Par2|HDNLevel|int|1}}
 +
:::Set HDN level, higher for better denoising but may cause blur and lack of detail, range 1 to 3.
 
<br>
 
<br>
 
::{{Par2|platformID|int|0}}
 
::{{Par2|platformID|int|0}}
Line 66: Line 73:
 
Anime4KCPP with default settings:
 
Anime4KCPP with default settings:
 
  [[AviSource]]("Blah.avi")
 
  [[AviSource]]("Blah.avi")
  Anime4KCPP(passes=2, pushColorCount=2, strengthColor=0.3, strengthGradient=1.0, zoomFactor=1, ACNet=false, GPUMode=false, platformID=0, deviceID=0)
+
  Anime4KCPP(passes=2, pushColorCount=2, strengthColor=0.3, strengthGradient=1.0, zoomFactor=1, \
 +
            ACNet=false, GPUMode=false, HDN=false, HDNlevel=1, platformID=0, deviceID=0)
 
<br>
 
<br>
  
 
== Changelog ==
 
== Changelog ==
 
  Version      Date            Changes<br>
 
  Version      Date            Changes<br>
 +
v2.3.0      2020/08/07      - Add HDNlevel switching for ACNet, range from 1 to 3, higher for better
 +
                                denoising but may cause blur and lack of detail.
 +
                              - Improve performance.<br>
 +
v2.2.1      2020/06/30      - Fixed weird borders in some AMD cards.
 +
                              - AviSynthPlus and VapourSynth plugin
 +
                                * Add YUV444 input support for Anime4K09.
 +
                                * Reduce memory consumption.
 +
                                * Improve performance.<br>
 +
v2.2.0      2020/06/22      - AviSynthPlus plugin
 +
                                * Add all YUV 8 bit format (YUV444, YUV422 and YUV420) input support of ACNet.
 +
                                * Improve performance, now you can use it to real time playback, see how.
 +
                              - VapourSynth plugin
 +
                                * Add safe mode, and default is on, it usually faster, no extra pixels
 +
                                ([https://github.com/TianZerL/Anime4KCPP/issues/11 weird border #11]), but may use more memory.
 +
                                * Add all YUV 8 bit format (YUV444, YUV422 and YUV420) input support of ACNet,
 +
                                  need safe mode is turned on (otherwise only RGB24 and YUV444 is supported).<br>
 +
v2.1.0      2020/06/13      - Add HDN mode of ACNet for better denoise.
 +
                              - Improve quality of ACNet.
 +
                              - Improve performance of ACNet.<br>
 
  v2.0.0      2020/06/05      - New CNN based algorithm ACNet, greatly improve quality  
 
  v2.0.0      2020/06/05      - New CNN based algorithm ACNet, greatly improve quality  
 
                                 while ensuring performance, all platforms support it now!
 
                                 while ensuring performance, all platforms support it now!

Revision as of 02:35, 9 August 2020

Abstract
Author TianZerL
Version v2.3.0
Download Anime4KCPP_AviSynthPlus_plugin-2.3.0-Win64-msvc.7z
Category Resize
License MIT
Discussion

Contents

Description

Anime4K is a simple high-quality anime upscale algorithm with GPU acceleration support.

Starting with v2.0.0 it also provides its own CNN (Convolutional Neural Network) algorithm ACNet:

  • ACNet is a CNN based anime upscale algorithm. It aims to provide both high-quality and high-performance.


Requirements

  • [x64]: AviSynth+
  • Supported color formats: RGB24, YV24
    • YUV444, YUV422, and YUV420 is also supported when ACNet=true


Syntax and Parameters

Anime4KCPP

Anime4KCPP (clip "src", int "passes", int "pushColorCount", float "strengthColor", float "strengthGradient", int "zoomFactor", bool "ACNet", bool "GPUMode", bool "HDN", int "HDNlevel", int "platformID", int "deviceID")


clip  src =
Input clip must be RGB24 or YV24 (YUV444P8) if ACNet=false..
YV24 (YUV444P8), YV16 (YUV420P8), and YV12 (YUV420P8) are also supported if ACNet=true.


int  passes = 2
Passes for processing.


int  pushColorCount = 2
Limit the number of color pushes, make sure the edge won't be too thin


float  strengthColor = 0.3
Strength for pushing color, range 0.0 to 1.0, higher for thinner.


float  strengthGradient = 1.0
Strength for pushing gradient, range 0.0 to 1.0, higher for sharper.


int  zoomFactor = 1
Upscaling ratio for resizing.


bool  ACNet = false
Set to true to enable ACNet.


bool  GPUMode = false
Enable GPU acceleration.


bool  HDN = false
Enable HDN mode for ACNet.


int  HDNLevel = 1
Set HDN level, higher for better denoising but may cause blur and lack of detail, range 1 to 3.


int  platformID = 0
int  deviceID = 0
For specifying the GPU.


listGPUs

This function will list the available platform IDs and device IDs by throwing an error, you can use them to specify the GPU for processing.

listGPUs ()


Examples

Anime4KCPP with default settings:

AviSource("Blah.avi")
Anime4KCPP(passes=2, pushColorCount=2, strengthColor=0.3, strengthGradient=1.0, zoomFactor=1, \
           ACNet=false, GPUMode=false, HDN=false, HDNlevel=1, platformID=0, deviceID=0)


Changelog

Version      Date            Changes
v2.3.0 2020/08/07 - Add HDNlevel switching for ACNet, range from 1 to 3, higher for better denoising but may cause blur and lack of detail. - Improve performance.
v2.2.1 2020/06/30 - Fixed weird borders in some AMD cards. - AviSynthPlus and VapourSynth plugin * Add YUV444 input support for Anime4K09. * Reduce memory consumption. * Improve performance.
v2.2.0 2020/06/22 - AviSynthPlus plugin * Add all YUV 8 bit format (YUV444, YUV422 and YUV420) input support of ACNet. * Improve performance, now you can use it to real time playback, see how. - VapourSynth plugin * Add safe mode, and default is on, it usually faster, no extra pixels (weird border #11), but may use more memory. * Add all YUV 8 bit format (YUV444, YUV422 and YUV420) input support of ACNet, need safe mode is turned on (otherwise only RGB24 and YUV444 is supported).
v2.1.0 2020/06/13 - Add HDN mode of ACNet for better denoise. - Improve quality of ACNet. - Improve performance of ACNet.
v2.0.0 2020/06/05 - New CNN based algorithm ACNet, greatly improve quality while ensuring performance, all platforms support it now! - YUV444 input support (only for ACNet) for VapourSynth and AviSynth+. - Improve performance. - Miscellaneous bug fixes. - Other detail enhancements.
beta 2020/05/24 - Initial beta release for AviSynth+


External Links

  • GitHub - Source code repository.




Back to External Filters

Personal tools