分页: 1 / 5

TAA v1.6.2 & MCAA v1.3 - "aatype"调整,速度大幅优化,mask模式增加

发表于 : 2011-02-25 13:40
06_taro
3重AA,daa式的preaa,传统的aa(eedi2/nnedi3/sangnom三种模式),soothe的postaa(用于对付post-sharpening可能导致的alising)
三种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:NMMMediaFire

TAA_v1.6.2+MCAA_v1.3+Requirements.7z(包含TAA 1.6.2、MCAA v1.3及所需插件):NMMMediaFire
► 显示剧情透露 所需插件/脚本:
► 显示剧情透露 MCAA说明:
► 显示剧情透露 TAA说明:
Taroの「寂しい男の戯言」

俺寫doc水平真爛
{:cat_11}
因為懶,還沒加error_msg,所以使用前還是先把這極爛的doc看下……
AVSPmod還不支持/* xxxx */的註釋語法高亮真鬱悶
AVS的function沒法設定成private繼續鬱悶= =

Re: TAA v1.2 - 某个不快不慢的AA脚本

发表于 : 2011-02-25 15:09
dgwxx
taro去NMM Doc文档库开个条目吧 XDDD

Re: TAA v1.2 - 某个不快不慢的AA脚本

发表于 : 2011-02-25 15:40
-o-o-304-o-o-
顶taro大

Re: TAA v1.2 - 某个不快不慢的AA脚本

发表于 : 2011-02-25 15:53
06_taro
dgwxx 写了:taro去NMM Doc文档库开个条目吧 XDDD
等明天考完试回来吧
{:cat_6} 这东西效果还在测试中

Re: TAA v1.2 - 某个不快不慢的AA脚本

发表于 : 2011-02-25 16:27
264768502
=。= 在公司没办法试,有无效果预览图之类的呢

Re: TAA v1.2 - 某个不快不慢的AA脚本

发表于 : 2011-02-25 21:34
nuomi
taro大大看成tora了,掩面(逃.

Re: TAA v1.3 - 比v1.2稍微快些,aa方式有较大修改

发表于 : 2011-03-22 18:01
06_taro
v1.3更新,默认值里把没必要的默认参数略降,弱化preaa及后处理的post-sharpen(原来默认的Contra-sharpening方式细节还原太强了反而导致在强锯齿情况下aa效果不够高,其实现在的lsf+masking细节还原已经基本够了),添加了速度极快的HQSharpen(by Didée)供仍然嫌慢的人使用,添加soothe做postaa对付后处理中可能导致的二次aliasing,部分代码整修了一下提高运行效率,总体来讲现在的默认参数比原来在效率和效果上更平衡了。添加error提示,修改英文doc(原来的太乱了……)

Re: TAA v1.3 - 比v1.2稍微快些,aa方式有较大修改

发表于 : 2011-03-22 18:45
ikamusume
taro大… 你那載點 下載完成之後 解壓發生未知錯誤
之前用的1.2版都不錯 現在有1.3版真想快點用

MCAA.avsi

发表于 : 2011-03-22 21:17
06_taro
囧……压缩时忘了改成LZMA,用的是LZMA2,重打包重传,地址已更新,顺便把某个bug修掉……

顺便丢个从SharpAAMCmod里面挖出来的MC脚本--MCAA.avsi,我自己是用这个来做MC补偿的,一直懒得放出来……

用法同SharpAAMCmod,将aatype换成aafilter,aafilter="aa滤镜",概念上类似于MCAnyTempDenoiser,
譬如
aafilter="AAA().AAA().AAA().AAA().AAA()",
另外后处理的sharpener换成了LimitedSharpenFaster加速,相应地加了个sharptype参数,默认为"lsf"即LimitedSharpenFaster,"lsfmod"为lsfmode

突然脑中冒出一句话叫“批量EP,方便搅基”(拖……

代码: 全选

###
### Use any anti-aliasing filter with motion-compensated post processing
###
### Based on Didée's MC script, Mystery Keeper's SharpAAMC and thetoof's SharpAAMCmod (in his AnimeIVTC)
### (http://forum.doom9.org/showthread.php?t=140031)
###
### Modified by 06_taro(astrataro@gmail.com)
###
### +---------+
### |  USAGE  |
### +---------+
###
### Use it in the same way as SharpAAMCmod, except for
### 1. use aafilter="yourAAFilters" instead of aatype
### 2. add "sharptype" which allows you to choose LimitedSharpenFaster as post-sharpening
###       sharptype[string, Default "lsf"]:
###       -"lsf", Use LimitedSharpenFaster
###       -"lsfmod", Use lsfmod
###
### MCAA(aafilter="Sangnom().TurnLeft().Sangnom().TurnRight()")
### or
### MCAA(aafilter="AAA()")
###
### +----------------+
### |  REQUIREMENTS  |
### +----------------+
###
### -> Toon									[for dark>0]
### -> aWarpSharp2					[for thin>0]
### -> MaskTools2
### -> MaskTools
### -> MVTools
### -> LimitedSharpenFaster	[for sharptype="lsf"]
### -> lsfmod								[for sharptype="lsfmod"]
### -> taa									[or any other anti-aliasing filters matching your "aafilter" setting]
###

function MCAA(clip orig, float "dark", int "thin", int "sharp", int "smooth", bool "stabilize", int "tradius", int "aapel", int "aaov", int "aablk", string "aafilter", string "sharptype")
{
dark	= default ( dark,     0.2 ) # strokes darkening strength
thin	= default ( thin,      10 ) # Presharpening
sharp	= default ( sharp,    150 ) # Postsharpening
smooth	= default ( smooth,    -1 ) # Postsmoothing
stabilize= default ( stabilize,false ) # Use post stabilization with Motion Compensation
Tradius	= default ( Tradius,    2 ) # 2 = MDegrain2 / 3 = MDegrain3 
aapel	= default ( aapel,      1 ) # accuracy of the motion estimation (Value can only be 1, 2 or 4. 1 means a precision to the pixel. 2 means a precision to half a pixel, 4 means a precision to quarter a pixel, produced by spatial interpolation (better but slower).)
aaov	= default ( aaov,       (orig.width>1100) ? 8 : 4 ) # block overlap value (horizontal). Must be even and less than block size. (Higher = more precise & slower)
aablk	= default ( aablk,      (orig.width>1100) ? 16 : 8 ) # Size of a block (horizontal). It's either 4, 8 or 16 ( default is 8 ). Larger blocks are less sensitive to noise, are faster, but also less accurate.
aafilter	= default ( aafilter, "taa(aatype=1, preaa=-1, sharp=0.2, mtype=0)" )
sharptype	= default ( sharptype, "lsf" ) # Use lsfmod or lsf for postsharpening

w=width(orig)
h=height(orig)
m=mt_logic( orig.DEdgeMask(0,255,0,255,"5 10 5 0 0 0 -5 -10 -5", divisor=4,Y=3,U=3,V=3)
 \       ,orig.DEdgeMask(0,255,0,255,"5 0 -5 10 0 -10 5 0 -5", divisor=4,Y=3,U=3,V=3)
 \       ,"max").mt_lut("x 128 / 0.86 ^ 255 *")
preaa=(thin==0 && dark==0) ? orig :
      \ (thin==0) ? orig.Toon(dark) :
      \ (dark==0) ? orig.awarpsharp2(depth=thin) :
      \ orig.Toon(dark).awarpsharp2(depth=thin)
aa = Eval("preaa."+aafilter)
postsh=(sharp==0 && smooth==0) ? aa :
       \ (sharptype=="lsf") ? aa.LimitedSharpenFaster(edgemode=1,strength=sharp,overshoot=1,soft=smooth) :
       \ (sharptype=="lsfmod") ? aa.lsfmod(edgemode=1,strength=sharp,overshoot=1,soft=smooth) :
       \ blankclip(pixel_type="YV12").subtitle("Please use lsf or lsfmod for sharptype")
merged=mt_merge(orig,postsh,m,Y=3,U=3,V=3)

sD=mt_makediff(orig,merged)

origsuper= orig.MSuper(pel=aapel)
sDsuper  = sD.  MSuper(pel=aapel, levels=1)


fv3 = tradius==3 ? origsuper.MAnalyse(isb=false,delta=3,overlap=aaov,blksize=aablk) : nop()
fv2 = tradius>=2 ? origsuper.MAnalyse(isb=false,delta=2,overlap=aaov,blksize=aablk) : nop()
fv1 = tradius>=1 ? origsuper.MAnalyse(isb=false,delta=1,overlap=aaov,blksize=aablk) : nop()
bv1 = tradius>=1 ? origsuper.MAnalyse(isb=true, delta=1,overlap=aaov,blksize=aablk) : nop()
bv2 = tradius>=2 ? origsuper.MAnalyse(isb=true, delta=2,overlap=aaov,blksize=aablk) : nop()
bv3 = tradius==3 ? origsuper.MAnalyse(isb=true, delta=3,overlap=aaov,blksize=aablk) : nop()
sDD = tradius==1 ? sD.MDegrain1(sDsuper,bv1,fv1) : tradius==2 ? sD.MDegrain2(sDsuper,bv1,fv1,bv2,fv2) : sD.MDegrain3(sDsuper,bv1,fv1,bv2,fv2,bv3,fv3)

reduc = 0.4
sDD = mt_lutxy(sD,sDD,"x 128 - abs y 128 - abs < x y ?").mergeluma(sDD,1.0-reduc)

return stabilize ? orig.mt_makediff(sDD,U=2,V=2) : merged
}

Re: TAA v1.4 & MCAA 1.1 - 默認下大幅加速,bugfix,正式增加MCAA

发表于 : 2011-11-18 4:15
06_taro
更新
其实比较tricky,默认参数都改了,加速什么的其实可比性不强囧……
不过现在的默认参数副作用也不算大,所以基本上就这样吧……