NMM视频技术(旧)

 找回密码
 成为会员
搜索
查看: 16647|回复: 20

[AVS插件] 大家都在使用什么降噪/柔化/锐化滤镜来处理动画片?

[复制链接]
发表于 2008-8-15 19:56 | 显示全部楼层 |阅读模式
前几天在这个帖子的2楼提到了关于全自动IVTC的极限处理方式。但是这样处理出来的画面会比较模糊,如果片源噪点比较多,需要强力降噪的话,画面就会更加模糊,而且细节保留量会大大下降。

大家平时在处理动画的时候,都是用什么降噪/柔化/锐化滤镜的呢?我想请大家为我推荐几个你喜欢用的滤镜,帮助我改善画面质量。

我用的AVS代码如下:
  1. DoubleWeave.a60224().AssumeTFF
  2. TDeint(mode=2,mthreshL=0,mthreshC=0,order=1,field=1,slow=2,
  3. \edeint=StackVertical(
  4. \last.undot.DCTFun4b(3,2).crop(0,2,0,0),
  5. \last.undot.DCTFun4b(3,2).crop(0,2,0,0)
  6. \).AssumeTFF
  7. \.separatefields().eedi2(field=-2,nt=128)
  8. \.crop(0,0,0,-478).addborders(0,2,0,0)
  9. \)
  10. crop(8,2,-8,0)
  11. WarpSharp(90,5,90)
  12. KenKunNR(128,3,6)
  13. LimitedSharpenFaster(smode=4,ss_x=1.0,ss_y=1.0,strength=90,overshoot=0,undershoot=150)
  14. undot()
  15. addborders(0,2,0,0)
复制代码
处理前后效果对比图:

[ 本帖最后由 diseac 于 2008-8-15 19:57 编辑 ]

DVD原图象(只做了704切边)

DVD原图象(只做了704切边)

处理后图象

处理后图象

评分

1

查看全部评分

发表于 2008-8-15 21:23 | 显示全部楼层
动画降噪是一个比较困难的事情。噪声分很多种类型,古代cell时代的动画(^^||就是老片啦)的噪声普遍和电影胶片比较相似,是那种颗粒比较大,不停在画面上闪烁的噪声。而现代digital动画的噪声比较轻,颗粒很小,像“粉”一样撒在画面上。现代动画的噪声处理起来相对容易一些。下面我说一下我降噪的经验之谈,不一定是最好的方案。

1.大原则
降噪=杀细节,要想将细节和噪声区别开来不是特别容易,降噪之后通常通过锐化来强化细节和线条边缘。但是有一点需要注意,除非特殊情况下,都应该按照先降噪,再锐化的过程来做。如果在降噪之前先加了锐化,那么无形之中就相当于将噪声强化之后再进行降噪,无疑间接上加大了降噪的难度。

2.古代片
古代片比较棘手。沙子一样的噪声在画面上不停地闪烁,极其浪费码率。
我遇到过的噪声最变态的三个动画分别是银英、人狼、天国之扉。而这三个变态片之中又以人狼最甚。银英和人狼迄今为止我还没找到满意的降噪方案。银英的噪声的频率似乎跟画面线条本身的频率有所重合,降噪之后线条很多都消失了(以杨威利的衣服为甚-v-),所以总感觉无从下手。人狼的灰暗场景特别多,降噪之后一压,画面上总是变得像粥一样一塌糊涂,非常郁闷。
唯一比较满意的是天国之扉,因为年代比较久远,具体参数是忘了,当年好像使用了AU自带的两个降噪插件+ウェーブレット・ノイズフィルタ Type-G。因为降噪之后画面变得有些模糊,所以还用了锐化,分别是sswroom写的Sharpen Edge(AU区有下载),最后又用unsharpening做了一点“观感强化”。其他还加入了去光环等等其他一些修正,我那台P1.6G的笔记本压了三天两夜才压好(笑)。

3.现代片
现代片只要噪声不是太夸张我一般都不降噪,因为编码器在压缩过程中的量化过程本身就会对高频部分进行丢弃,客观上起到了降噪的作用。
迄今为止的几个特例是人高桥留美子剧场系列、EUREKA7、狼雨和钢练。除了高桥系列,后三个都是BONES的作品。这里插一点题外话,似乎每家动画公司做出来的东西都有一点自己的くせ(说好听了是“习惯”,说难听了是“毛病”),比如GONZO著名的画面上方的2px黑边和bad cut,比如BONES的“微噪声”。
高桥的噪声稍微有些厉害,没降噪每话视频部分基本在140M左右(x264 q18),稍微用KenKunNRT磨一下的话能到110M左右。
而BONES动画的噪声比较“暧昧”,是那种看上去好像是可降可不降,但是降下来内心又无比痛苦觉得可惜的类型。可能是我一直比较喜欢BONES动画的缘故吧,HOHO~所以,要降的话,基本上也是用KK轻轻扫一下的感觉。

4.锐化
锐化分为细节加强和边缘加强的类型。细节加强我用的比较少,没什么研究。所以这里就说两句边缘加强型锐化。
边缘加强型锐化可以让画面“看上去”漂亮一些,因为细节在降噪过程中(甚至实在编码过程中)遭受损失,让线条锐利一些可以重新营造“画面锐利”的氛围(氛围而已,实际上细节该杀的都杀掉了),不失为一种节省码率又讨好眼睛的好方法。但是这种锐化通常有一个缺点,就是或多或少都会造成光环的出现,调试参数的时候要特别注意。
边缘加强型的锐化我主要用Sharpen Edge和warpsharp。Sharpen Edge是不折不扣的边缘强调型锐化,光环效应相对来说比较弱。warpsharp则是“收线型”的边缘加强滤镜,他会让线条变得更洗,给人一种画面很干净的感觉。
加什么锐化,凭个人喜好。我除非降噪比较厉害的情况,一般都是不加锐化。

泛泛而论,请多指教。
发表于 2008-8-15 21:41 | 显示全部楼层
写完之后想了想,又觉得需要补充一些,算作第5部分吧。(楼主现在大概在看女排姑娘吧^^||笑)

5.细节
很多动画喜欢在背景之中加“水彩”效果,可以增加画面的质感。这点在古代动画中尤其明显(其实现代动画里面依然有保留这种做法的,对现代动画中这种效果印象比较深的是LOVELESS。其实楼主贴图的墙壁部分大概也是这种效果。)。墙壁、石头、草地、土地、路面、蓝天白云等,颜色相对单一、面积大、又迫切需要“质感”的东西,都是这种手法一展身手的场所。
但是,这种质感造出来的细节恰巧跟我们2D降噪需要除掉的噪声重合起来,难以区分。当噪声比较严重的时候,只好通下杀手,去掉一部分了。不知道有没有什么更好的方法
 楼主| 发表于 2008-8-15 23:45 | 显示全部楼层
感谢dgwxx的详细讲解!
看完女排的精彩比赛回来就看到dgwxx的长文,感觉今天晚上真是收获颇丰!

我贴的对比图象,我认为有两项不足之处。
一是线条有锯齿,这是eedi2造成的。
二是墙壁的纹理全被抹平,这是降噪引起的。
墙壁的纹理应该是动画片在制作时故意加上的效果,而人物头发、面部、衣服上的噪点应该就不是故意加上去的了。
我进行降噪的目的有两个:一是因为全片都做了透明混合,画面很模糊,需要锐化,所以在锐化之前不得不降噪;二是为了降低码率,将不该有的噪点去除(比如脸上的噪点)。
可是由于进行了降噪,而且是很强的降噪,人做了美容,墙壁也都变成塑料的了。(/>.<)/  ========  ┻━━┻

降噪和细节真的是鱼和熊掌。

我一直习惯把WarpSharp放在最前面,其他的锐化放在最后面,我自己也不知道为什么。
我在用KenKunNRT的时候发现画面经常会出重影,有点象把交错祯做了透明混合的感觉,难道3D柔化是把噪点转移到别的祯上去?所以我一直都是用KenKunNR。不知道dgwxx有没有发现这个问题。

avisynth有没有类似 Sharpen Edge 的滤镜或脚本呢?我因为从来不用AU,所以对AU的插件一无所知,AU的使用方法也是一知半解,个人觉得AVS代码看起来比较直观(其实AU才算是直观吧),而且我听说AVS→AU好象需要将色彩空间转换式做调整,具体情况不详。前几天论坛上的sswroom发表了这篇文章(http://www.dgwxx.net/nmmbbs/thread-660-1-1.html),好象说的就是这个问题,但是我没有这方面的经验,所以看不太懂。

[ 本帖最后由 diseac 于 2008-8-15 23:46 编辑 ]
发表于 2008-8-16 09:01 | 显示全部楼层
说明里面说KK和KKT跟AU的降噪一样,但实际上还是不完全一样的。至少参数的设定就不一样。我在AU里面经常用256/2/10这样一组参数作为初始参数进行调整,效果不是很强烈,而在KK的两个降噪里面,128/2/10就已经抹得相当厉害了。所以如果把AU的参数照样挪到KK里面,就会引起不少问题。
为什么要说这个呢。记得看过哪个AU的文档说过,自带的3D降噪在参数过于强力的时候会导致鬼影。所以,我估计您参数开大了,KenKunNRT就直接把两帧给平均了,看起来像是blend了似的。
=====================================
至于AVS导入AU,最近发现误差稍微有些大,所以我最近都没在用AU了。因为有一个致命的问题一直没有解决,那就是在AU里面IVTC。我曾经研究过AU的IVTC,一直没找出来一种很好的办法所以目前还不得不依赖TIVTC…
 楼主| 发表于 2008-8-16 15:46 | 显示全部楼层
我尝试把KenKunNRT的参数调小,重影现象消失了,谢谢dgwxx的提示

关于AVS-AU的色彩空间,我引用一段别人写的代码,不知道是否正确:
  1. ColorYUY2(gain_y=5, off_y=-1, gamma_y=-20, cont_y=5,
  2. \ gain_u=0, off_u=0, gamma_u=0, cont_u=5,
  3. \ gain_v=0, off_v=0, gamma_v=0, cont_v=5,
  4. \ gain_r=5, off_r=-13, gamma_r=-20, cont_r=10,
  5. \ gain_g=5, off_g=-13, gamma_g=-20, cont_g=10,
  6. \ gain_b=5, off_b=-13, gamma_b=-20, cont_b=10,
  7. \ opt="1-254", matrix="rec709s",
  8. \ debug=0, interpolation="411->422", interlaced=false)
  9. ColorMatrix(mode="Rec.709->SMPTE 240M", source=0, dest=3, scaling=2, interlaced=false)
复制代码
这样出来的片子是SMPTE 240M的,需要在x264里标明--transfer smpte240m,或者再转换回来。
发表于 2008-8-17 20:07 | 显示全部楼层
颜色空间的详细部分我不太清楚,还需要继续研究。不过有一点,楼主似乎弄错了一些问题。
AVS和AU所使用的颜色空间确实不一样。根据sswroom的话,AVS通常是YV12 (Progressive YUV 4:2:0 8-bit),AU是Progressive YUV 4:4:4 16-bit (12-bit usable)。这个转换通常是由AU来完成的。所以,我们通常不需要为颜色空间转换的问题操心。
发表于 2008-8-18 00:34 | 显示全部楼层
感觉还是留着噪点比较好,否则那些大量的条状带看着更不舒服,我看x264都把debanding开到1.5,看着黑色地方那些细小点的闪动特舒服。

ps:大虾细心处理动画我都没怎么看过,只看过无皇刃传,所以那些费了心血的片子让我们也分享一下嘛
发表于 2008-8-18 09:33 | 显示全部楼层
我也很想分想出来,无奈带宽不济,压的东西基本都自己收藏了
异乡人也是,学校网又贵又慢,当时受制于上传带宽,码率没开太高,音轨也没全包含进去。那之后我自己又压了一个1.2G配置稍微豪华一点的v2,自己看用 ^^||
发表于 2008-8-18 13:07 | 显示全部楼层
为何没人用ff3dfilter来降噪呢?
 楼主| 发表于 2008-8-19 04:20 | 显示全部楼层
原帖由 dgwxx 于 2008-8-17 20:07 发表
颜色空间的详细部分我不太清楚,还需要继续研究。不过有一点,楼主似乎弄错了一些问题。
AVS和AU所使用的颜色空间确实不一样。根据sswroom的话,AVS通常是YV12 (Progressive YUV 4:2:0 8-bit),AU是Progressive YUV ...


是这样啊,看来我理解错了。

原帖由 bomber1984 于 2008-8-18 00:34 发表
感觉还是留着噪点比较好,否则那些大量的条状带看着更不舒服,我看x264都把debanding开到1.5,看着黑色地方那些细小点的闪动特舒服。


同感!柔化过多的话,画面总会出现象一锅稀饭一样的感觉,特别是在暗场。
真是一点办法也没有

原帖由 saemonz 于 2008-8-18 13:07 发表
为何没人用ff3dfilter来降噪呢?


fft3d效果不错,但是速度超慢,所以我不爱用。我的显卡不能支持它的GPU版本。
发表于 2008-9-10 01:53 | 显示全部楼层
降噪滤镜感觉实用性始终不高~用不用的差异无非就是点状噪点和块状噪点

锐化滤镜倒可以用些。线条强化型推荐使用LimitedSharpenFaster,效果不错。如果线条需要大幅度强化就使用vmToon,这个效果超好,不过速度也超“好”。但总觉得vmToon过的线条会有些不太自然的感觉,尺度自己把握吧~ 至于WarpSharp这种老牌的细化线条型锐化滤镜,有些时候用用也还是不错的啦~
发表于 2008-9-10 09:39 | 显示全部楼层
我比较喜欢对于某些动画用fft3dgpu磨一下皮
warpsharp以前超喜欢,不过后来很少用了
 楼主| 发表于 2008-9-11 00:20 | 显示全部楼层
原帖由 52wy 于 2008-9-10 01:53 发表
降噪滤镜感觉实用性始终不高~用不用的差异无非就是点状噪点和块状噪点  


同感!多数情况下,我只用undot()降噪,它基本不改变画面的任何效果,但肯定会使码率降低,对付特殊的噪点比较多的片子,才会下大一点力度。
多数情况下锐化我只用WarpSharp,它一般不会带来码率提升,LimitedSharpenFaster以前用得比较多,现在不太爱用了,一般我都会把它的undershoot开得很大来强化黑线。
发表于 2008-9-11 02:28 | 显示全部楼层
原帖由 diseac 于 2008-9-11 00:20 发表


同感!多数情况下,我只用undot()降噪,它基本不改变画面的任何效果,但肯定会使码率降低,对付特殊的噪点比较多的片子,才会下大一点力度。
多数情况下锐化我只用WarpSharp,它一般不会带来码率提升,LimitedS ...

你是用原版的warpsharp,还是用后来的改版?
 楼主| 发表于 2008-9-11 19:59 | 显示全部楼层
原帖由 VempX 于 2008-9-11 02:28 发表

你是用原版的warpsharp,还是用后来的改版?


WarpSharp package
就是里面带auto24fps等好多内建函数的那个。
发表于 2008-9-11 20:44 | 显示全部楼层
原帖由 diseac 於 2008-9-11 19:59 發表
WarpSharp package
就是裡面帶auto24fps等好多內建函數的那個。

我想 VempX 應該是問你用的 WarpSharp 是原版的還是 seraphy 修改的版本?
http://niiyan.net/?WarpSharpPackage#h74ed3f1

[ 本帖最后由 Holy 于 2008-9-11 23:42 编辑 ]
 楼主| 发表于 2008-9-12 22:26 | 显示全部楼层
是原版。
seraphy的OreAQ版x264让我吃尽了苦头,所以他的东西现在都不敢用了。
发表于 2009-4-7 01:27 | 显示全部楼层
http://soulhunter.razorbb.net/index.html#017

有测试方法,貌似fft3d和DCTFun4b不错
发表于 2009-6-17 11:41 | 显示全部楼层
搞来搞去,感觉还是太复杂了。而且,动作越多,对原画面改动越大,确非我心愿。决定还是不要用了。

另外,象LimitedSharpenFaster这种本身就是一堆代码的滤镜是怎么使用的呢?还真是挺复杂的,希望有朋友可以讲解下。很感谢呢。
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

小黑屋|手机版|NMM视频技术

GMT+8, 2019-10-15 09:08 , Processed in 0.090688 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表