參數
file [string, default="GrainEvaluateFile.txt"]
輸出的文件名
Y、U、V [bool, default Y=true, U=false, V=U]
是否檢測Y/U/V平面
直接掛上,然後跑一遍腳本就行了,輸出的文件裡包含每一幀的grain強度,例如(按默認沒開UV,如果加上U=true的話則還包含UV的數據):
代码: 全选
......
frame 1740; Y grain strength = 0.231630
frame 1741; Y grain strength = 0.232441
frame 1742; Y grain strength = 0.236746
frame 1743; Y grain strength = 0.227266
frame 1744; Y grain strength = 0.232714
frame 1745; Y grain strength = 0.224304
frame 1746; Y grain strength = 0.230653
frame 1747; Y grain strength = 0.232147
frame 1748; Y grain strength = 0.229529
frame 1749; Y grain strength = 0.223949
frame 1750; Y grain strength = 1.285356
frame 1751; Y grain strength = 1.362018
frame 1752; Y grain strength = 1.360037
frame 1753; Y grain strength = 1.387078
frame 1754; Y grain strength = 1.130997
frame 1755; Y grain strength = 1.239628
frame 1756; Y grain strength = 1.225395
frame 1757; Y grain strength = 1.305777
frame 1758; Y grain strength = 1.227744
frame 1759; Y grain strength = 1.311756
frame 1760; Y grain strength = 1.252549
frame 1761; Y grain strength = 1.324252
frame 1762; Y grain strength = 1.267346
......
反正速度很快,按默認只檢測Y的話1920x1080跑出個六七十fps不成問題(僅使用單核,不過一般來說可能比解碼的速度還快,所以倒是源濾鏡反而是瓶頸)。整個掛上先跑一遍,輸出個文件之後按裡面的數值做scene filter也比較方便,至少幀定位比較簡單了…如果正好也需要跑tfm的1st pass的話掛上也可以順便看看噪點情況…
也可以拿來衡量降噪強度,譬如:
[syntax lang="avisynth"]MP_Pipeline("""
DGSource("input.dgi")
GrainEvaluate("before_NR.log")
### ###
MCTD
GrainEvaluate("after_NR.log")
""")[/syntax]
然後對比一下輸出的兩個文件,降噪的程度就一目了然了
不影響輸出的clip,速度也夠快,所以直接在壓的時候順便加上這句跑一下,之後QC時拿去參考也可以…