三种post-sharpening,通过sharp的值自动选择:Contra-sharpening、HighQualitySharpen、lsfmod(lsfmod有三种defaults选择方式,其中sharp>1的方式与LimitedSharpenFaster的速度和效果相同)
最后一重edge masking做边缘处理
想EP的可以放到LSharpAAF里面去继续处理(拖……
YV12 input
Download:
TAA_v1.6.2+MCAA_v1.3.7z:NMM、MediaFire
TAA_v1.6.2+MCAA_v1.3+Requirements.7z(包含TAA 1.6.2、MCAA v1.3及所需插件):NMM、MediaFire
► 显示剧情透露 所需插件/脚本:
TAA:
-> eedi2
-> eedi3
-> nnedi3
-> Masktools2
-> TEdgeMask
-> tcanny
-> MSharpen
-> Sangnom
-> RemoveGrain
-> Repair
-> lsfmod
-> Soothe
MCAA:
-> Toon
-> aWarpSharp2
-> Masktools2
-> MVTools2
-> lsfmod
-> Repair
-> eedi2
-> eedi3
-> nnedi3
-> Masktools2
-> TEdgeMask
-> tcanny
-> MSharpen
-> Sangnom
-> RemoveGrain
-> Repair
-> lsfmod
-> Soothe
MCAA:
-> Toon
-> aWarpSharp2
-> Masktools2
-> MVTools2
-> lsfmod
-> Repair
► 显示剧情透露 MCAA说明:
和sharpaamcmod相同,和LSharpAAF類似,默認的thin改成了0,sharp改成了80,另外可以用aafilter="AAA"這樣的參數修改內部用的aa濾鏡(默认的aafilter="taa(aatype=1, preaa=-1, sharp=0, mtype=0, postaa=false)"),以及用sharptype="old"/"fast"/"slow"修改sharp方式(默认sharptype="fast"),用shM修改lsfmod内置mask方式,用predown/predownMC进行先行downscale,用aarepair来修复细节。predown/downscale具体同下面TAA的说明,predownMC是设置在stabilize=true时是否对MC也使用downscale的clip,如果为false的话会使用原始clip,但是有可能会导致mawen同学说的强锯齿又被masktools修回去了。
例如大蝦著名的一縮遮百丑大法:
另外我沒有像taa或者Holy修改的LSharpAAFmod裡那樣通過給sharp值增加HQSharp/Contra-Sharpening的用法,因為實際上taa通過參數的組合已經包含了市面上能見到的大部分aa算法(需要MC的算法則配合MCAA),幾乎沒有必要用到其他aa腳本了,極端的大蝦一縮法也可以像上面那樣直接實現;另一方面由於MCAA的處理中post-sharpen是緊接著aa的,因此需要HQSharp/Contra-sharpening的只要在taa的sharp參數裡設置就行了,所以沒必要再把MCAA裡的整形參數sharp改成浮點型的以適應這兩個sharpening。
例如大蝦著名的一縮遮百丑大法:
代码: 全选
MCAA(aafilter="taa(aatype=-1, preaa=-1, mtype=0, sharp=0.3, postaa=false)", sharptype=0, predown=true, predownMC=true, repair=24)
► 显示剧情透露 TAA说明:
使用方法:
taa(aatype, preaa, sharp, postaa, mtype, src, predown, aarepair, p1, p2, p3, p4, p5, p6)
例:
AVISource("video.avi")
taa(aatype=-2, preaa=-1, sharp=80, postaa=true, mtype=2, src=last, predown=true, aarepair=24, p1=48, p2=0.7, p3=0.15)
参数解释:
aatype [int: -3~5 默认=1]
----------------------
第二重(最主要的)AA模式:
= -3 : nnedi3 & Sangnom
= -2 : eedi3 & Sangnom
= -1 : eedi2 & Sangnom
= 0 : 无处理
= 1 : eedi2
= 2 : eedi3
= 3 : nnedi3
= 4 : nnedi3做upscale后Sangnom
= 5 : Spline36Resize做upscale后Sangnom
= 6 : 同5,速度比5快得多,不过默认参数下除了mtype=5以外强度略有降低
p1~p6 [float]
----------------------
第二重(最主要的)AA模式下的自定义参数。具体涵义与默认值根据不同aatype而不一样,具体看avsi内文档。
preaa [int: -1~2 默认=1]
----------------------
即原"drc"参数,preaa的处理方向,默认为横向(同daa)
= -1 : 两个方向
= 0 : 无preaa处理
= 1 : 横向
= 2 : 纵向
mtype [int: 0~6, 默认=0 (当aatype=0且preaa=0时) / 5 (其他情况下)]
----------------------
Masktools里的边缘处理方法
= 0 : 不处理
= 1 : Sobel算子
= 2 : Roberts算子
= 3 : Prewitt算子
= 4 : TEdgeMask方式
= 5 : tcanny方式(canny算子)
= 6 : MSharpen方式
mthr [int: 0~255, 默认=32]
----------------------
mask的阙值,越高则细小的线条越不会被当作edge mask
sharp [float, 默认=0.3 (preaa=1 or 2时) / -1 (preaa=-1时) / 0 (preaa=0且aatype=0时) / 0.2 (preaa=0且0<aatype<=3时) / 80 (其他情况)]
--------------
post-sharpening的方法和参数
< -1 : 指定lsfmod(defaults="slow")时的"strength",取正值,较慢,例如sharp=-50时即为lsfmod(strength=50, defaults="slow", source=src)
= -1 : Contra-sharpening,较慢, 细节还原最好,但是源的锯齿很厉害的话这种sharpen会将锯齿重新引入(虽然肯定没原来强)
处于(-1,0)区间: 指定lsfmod(defaults="fast")时的"strength",取正数并乘以100,例如sharp=-0.5时即为lsfmod(strength=50, defaults="fast", source=src)
= 0 : 无post-sharpening处理
处于(0,1)区间 : 直接用avs内置sharpen滤镜,最快,质量还可以,只取绝对值,取自Didée菊苣的HighQualitySharpen,不推荐用绝对值超过0.6的值
>= 1 : 指定lsfmod(defaults="old")时的"strength",例如sharp=50时即为lsfmod(strength=50, defaults="old", source=src),速度和效果同LimitedSharpenFaster
postaa [bool, 默认=true (当0.4<|sharp|<1或|sharp|>60时) / false (当sharp≠0时)]
----------------------
用Didée菊苣的Soothe做第三重aa,主要目的是对付post-sharpen里可能导致的aliasing
src [clip, 默认=input]
----------------------
用于后处理中的源视频,主要是像lsfmod的source参数、HQsharpen的chroma、以及mt_merge之类的用。一般来说不需要调整,如果想降低锐化程度,或者使用其他滤镜处理过的clip作为非edge区域的话可以酌情使用
mclip [clip, 默认=未设定]
----------------------
当设定mclip时,将mclip当作edge mask而不使用内部mask
predown [bool, 默认=false]
----------------------
先进行downscale到原始分辨率的3/4,处理后再拉回去。对付粪upconv非常有效,但是细节损失更大
aarepair [int, 默认=0 (当predown=false时) / 24 (其他情况下)]
----------------------
用repair进行细节修复,非0时等同于repair里的mode参数。
这是目前我自己实验出来对predown=true时先downscale再upscale导致的细节损失修复最快的方法,一般情况下效果也相当不错(默认的24或者略低的23时),过低的参数细节保留程度更高但是aliasing也会回复得更厉害,我个人觉得用23/24就可以了。
原理是将repair反过来用,将源作为filter过的,aa后的clip作为source,然后哟个repair来把线条中心不需要动的欢迎回源的样子,而线条邻近的pixel取aa后的来去除aliasing。
现在这个参数的默认值是在predown=true时为24,否则为0(不使用),实际上不管用不用predown,即使是关闭mtype和sharp就单独靠这个aarepair,也可以在快得多的速度下取得不错的细节修复效果,譬如可以直接这样处理
edit(16 Feb 2012):
貌似我加上src参数都快一年了,
始终没见有人想到去用taa的mask与src组合的隐藏用法,
于是来提一下:
taa(src=fft3dgpu.f3kdb)
这样就是对edge做aa,而非edge做降噪+deband……
taa(aatype, preaa, sharp, postaa, mtype, src, predown, aarepair, p1, p2, p3, p4, p5, p6)
例:
AVISource("video.avi")
taa(aatype=-2, preaa=-1, sharp=80, postaa=true, mtype=2, src=last, predown=true, aarepair=24, p1=48, p2=0.7, p3=0.15)
参数解释:
aatype [int: -3~5 默认=1]
----------------------
第二重(最主要的)AA模式:
= -3 : nnedi3 & Sangnom
= -2 : eedi3 & Sangnom
= -1 : eedi2 & Sangnom
= 0 : 无处理
= 1 : eedi2
= 2 : eedi3
= 3 : nnedi3
= 4 : nnedi3做upscale后Sangnom
= 5 : Spline36Resize做upscale后Sangnom
= 6 : 同5,速度比5快得多,不过默认参数下除了mtype=5以外强度略有降低
p1~p6 [float]
----------------------
第二重(最主要的)AA模式下的自定义参数。具体涵义与默认值根据不同aatype而不一样,具体看avsi内文档。
preaa [int: -1~2 默认=1]
----------------------
即原"drc"参数,preaa的处理方向,默认为横向(同daa)
= -1 : 两个方向
= 0 : 无preaa处理
= 1 : 横向
= 2 : 纵向
mtype [int: 0~6, 默认=0 (当aatype=0且preaa=0时) / 5 (其他情况下)]
----------------------
Masktools里的边缘处理方法
= 0 : 不处理
= 1 : Sobel算子
= 2 : Roberts算子
= 3 : Prewitt算子
= 4 : TEdgeMask方式
= 5 : tcanny方式(canny算子)
= 6 : MSharpen方式
mthr [int: 0~255, 默认=32]
----------------------
mask的阙值,越高则细小的线条越不会被当作edge mask
sharp [float, 默认=0.3 (preaa=1 or 2时) / -1 (preaa=-1时) / 0 (preaa=0且aatype=0时) / 0.2 (preaa=0且0<aatype<=3时) / 80 (其他情况)]
--------------
post-sharpening的方法和参数
< -1 : 指定lsfmod(defaults="slow")时的"strength",取正值,较慢,例如sharp=-50时即为lsfmod(strength=50, defaults="slow", source=src)
= -1 : Contra-sharpening,较慢, 细节还原最好,但是源的锯齿很厉害的话这种sharpen会将锯齿重新引入(虽然肯定没原来强)
处于(-1,0)区间: 指定lsfmod(defaults="fast")时的"strength",取正数并乘以100,例如sharp=-0.5时即为lsfmod(strength=50, defaults="fast", source=src)
= 0 : 无post-sharpening处理
处于(0,1)区间 : 直接用avs内置sharpen滤镜,最快,质量还可以,只取绝对值,取自Didée菊苣的HighQualitySharpen,不推荐用绝对值超过0.6的值
>= 1 : 指定lsfmod(defaults="old")时的"strength",例如sharp=50时即为lsfmod(strength=50, defaults="old", source=src),速度和效果同LimitedSharpenFaster
postaa [bool, 默认=true (当0.4<|sharp|<1或|sharp|>60时) / false (当sharp≠0时)]
----------------------
用Didée菊苣的Soothe做第三重aa,主要目的是对付post-sharpen里可能导致的aliasing
src [clip, 默认=input]
----------------------
用于后处理中的源视频,主要是像lsfmod的source参数、HQsharpen的chroma、以及mt_merge之类的用。一般来说不需要调整,如果想降低锐化程度,或者使用其他滤镜处理过的clip作为非edge区域的话可以酌情使用
mclip [clip, 默认=未设定]
----------------------
当设定mclip时,将mclip当作edge mask而不使用内部mask
predown [bool, 默认=false]
----------------------
先进行downscale到原始分辨率的3/4,处理后再拉回去。对付粪upconv非常有效,但是细节损失更大
aarepair [int, 默认=0 (当predown=false时) / 24 (其他情况下)]
----------------------
用repair进行细节修复,非0时等同于repair里的mode参数。
这是目前我自己实验出来对predown=true时先downscale再upscale导致的细节损失修复最快的方法,一般情况下效果也相当不错(默认的24或者略低的23时),过低的参数细节保留程度更高但是aliasing也会回复得更厉害,我个人觉得用23/24就可以了。
原理是将repair反过来用,将源作为filter过的,aa后的clip作为source,然后哟个repair来把线条中心不需要动的欢迎回源的样子,而线条邻近的pixel取aa后的来去除aliasing。
现在这个参数的默认值是在predown=true时为24,否则为0(不使用),实际上不管用不用predown,即使是关闭mtype和sharp就单独靠这个aarepair,也可以在快得多的速度下取得不错的细节修复效果,譬如可以直接这样处理
代码: 全选
taa(mtype=0, sharp=0.2, postaa=false, predown=false, aarepair=24)
貌似我加上src参数都快一年了,
始终没见有人想到去用taa的mask与src组合的隐藏用法,
于是来提一下:
taa(src=fft3dgpu.f3kdb)
这样就是对edge做aa,而非edge做降噪+deband……
俺寫doc水平真爛
因為懶,還沒加error_msg,所以使用前還是先把這極爛的doc看下……
AVSPmod還不支持/* xxxx */的註釋語法高亮真鬱悶
AVS的function沒法設定成private繼續鬱悶= =