ニューラルネットワーク予測のエッジ補正からインターレースを解除するフィルタnnedi
の使い方。既存のインターレース解除フィルタyadif, w3fdif, bwdif
に比べてかなり処理速度の遅いフィルタである。今までは AviSynth や Vapoursynth で使われているフィルタなのでそちらで検索すると使い方を調べることができる。rpowオプションは組み込まれていないのでアップスケールには使えない。
関連記事
ffmpeg でインターレース解除
基本コマンド
プレビューがもたつくかもしれない
ffmpeg -i input -vf nnedi=deint=all:field=a:planes=7:nsize=s32x4:nns=n32:qual=fast:etype=a:pscrn=new output
ffplay -i input -vf nnedi=deint=all:field=a:planes=7:nsize=s32x4:nns=n32:qual=fast:etype=a:pscrn=new
公式ドキュメント:FFmpeg Filters Documentation : nnedi
オプション
BeanのAviUtlプラグイン置き場より nnedi3 for AviUtl ver 0.9.4.1 (2011-07-22) の nnedi3.txt を参考にしている。
- weights[string]
バイナリファイルを指定する
vapoursynth-nnedi3/nnedi3_weights.bin at master · dubhater/vapoursynth-nnedi3、または
znedi3/nnedi3_weights.bin at master · sekrit-twc/znedi3
View Raw から保存する。これを参照しないとフィルタが使えない
ffmpeg と同じ場所に置く
既定値:nnedi3_weights.bin - deint[int] どのフレームを処理するか
- 0, all:既定値
- 1, interlaced
- field[int]
インターレース解除してBob化するかしないか、フィールドオーダーを変えるか維持するか - -2, af
Bob化しフィールドオーダーは変えない - -1, a:既定値
Bob化せずフィールドオーダーは変えない - 0, t
Bob化せずトップフィールド維持 - 1, b
Bob化せずボトムフィールド維持 - 2, tf
Bob化しトップフィールドファースト - 3, bf
Bob化しボトムフィールドファースト - planes[int]
どのチャンネルを処理対象にするか。詳しくはffmpeg について | チャンネルの順番と注意点を参照
範囲:0 から 7 まで
既定値:7 - nsize[int]
ニューラルネットワーク予測で参照する局所近傍サイズを指定する。縦x横 - 0, s8x6
- 1, s16x6
- 2, s32x6
- 3, s48x6
- 4, s8x4
- 5, s16x4
- 6, s32x4:既定値
- nns[int]
ニューラルネットワーク予測器のニューロンの数を指定する。縦x横。数値が大きいほど処理速度を犠牲にして品質を上げる - 0, n16
- 1, n32:既定値
- 2, n64
- 3, n128
- 4, n256
- qual[int]
最終的な出力値を計算するためにブレンドされた異なるニューラルネットワーク予測数を制御する。簡単に言えば品質指定。slow にすると処理速度を犠牲にして品質を上げる - 1, fast:既定値
- 2, slow
- etype[int]
ニューラルネットワーク予測で用いる重みを選択する - 0, a:既定値
絶対誤差を最小にするよう学習された重みを用いる - 1, s
二乗誤差を最小にするよう学習された重みを用いる - pscrn[int]
事前にニューラルネットワーク予測での補正が必要かどうか、必要ならどのピクセルを指定するか。指定してもしなくても目で見て分かるほどの差はでない - 0, none
- 1, original
- 2, new:既定値
- fapprox[int]
デバグフラグの指定
0 から 3 まで
既定値:0