View Single Post
Old 22nd September 2015, 01:37   #1  |  Link
YamashitaRen
Registered User
 
Join Date: Apr 2014
Location: France
Posts: 33
nnedi3_rpow2 function for VapourSynth

Since jackoneill moved his nnedi3_rpow2 function to /dev/null, I decided to take the plunge and write my own function in python : https://gist.github.com/YamashitaRen...7524e794779d9c
The nnedi3 plugin is required for nnedi3_rpow2 : http://forum.doom9.org/showthread.php?t=166434
The znedi3 plugin is required for znedi3_rpow2 : https://github.com/sekrit-twc/znedi3
The nnedi3cl plugin is required for nnedi3cl_rpow2 : https://forum.doom9.org/showthread.php?t=174902
The eedi2 plugin is required for eedi2_rpow2 : http://forum.doom9.org/showthread.php?t=171136

It has been greatly inspired by jackoneill's plugin.

Shifted output should be correct but I'm no expert in programming and function hadn't been tested extensively so you never know...
Comparisons with zimg/fmtconv/old_nnedi3_rpow2 are warmly welcome.

Usage is :
Code:
nnedi3_rpow2(clip,rfactor,correct_shift="zimg",nsize=0,nns=3,qual=1,etype=0,pscrn=2,opt=True)
znedi3_rpow2(clip,rfactor,correct_shift="zimg",nsize=0,nns=3,qual=1,etype=0,pscrn=2,opt=True)
nnedi3cl_rpow2(clip,rfactor,correct_shift="zimg",nsize=0,nns=3,qual=1,etype=0,pscrn=2,opt=True)
eedi3_rpow2(clip,rfactor,correct_shift="zimg",alpha=0.2,beta=0.25,gamma=20,nrad=2,mdis=20,hp=0,ucubic=1,cost3=1,vcheck=2,vthresh0=32,vthresh1=64,vthresh2=4,sclip=None)
eedi2_rpow2(clip,rfactor,correct_shift="zimg",mthresh=10,lthresh=20,vthresh=20,estr=2,dstr=4,maxd=24,map=0,nt=50,pp=1)
By default it corrects the shift with "zimg".
It can correct it with "fmtconv" too.
Or it can not correct it if you use another value.

Example :
Code:
import vapoursynth as vs
import edi_rpow2 as edi
core = vs.get_core()
clip = yourclip
clip = core.resize.Bicubic(clip=clip,format=vs.YUV420P16,dither_type="error_diffusion")
clip = edi.znedi3_rpow2(clip=clip,rfactor=2)
clip = core.resize.Spline36(clip=clip,width=clip.width*2/3,height=clip.height*2/3)
edi_rpow2.py has to be in the site-packages directory of your python3 path.

Last edited by YamashitaRen; 21st May 2018 at 23:19. Reason: Update.
YamashitaRen is offline   Reply With Quote