ニューラルネットワーク予測を使ってインターレース解除する nnedi


ニューラルネットワーク予測のエッジ補正からインターレースを解除するフィルタ nnedi の使い方。既存のインターレース解除フィルタ yadifw3fdif、現時点では master の bwdif に比べてかなり処理速度の遅いフィルタである。今までは AviSynth や Vapoursynth で使われているフィルタなのでそちらで検索すると使い方を調べることができる。rpow は組み込まれていないのでアップスケールには使えない。

関連記事
ffmpeg でインターレース解除

基本コマンド

プレビューがもたつくかもしれない
ffplay 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]
    バイナリファイルを指定する
    https://github.com/dubhater/vapoursynth-nnedi3/blob/master/src/nnedi3_weights.bin
    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]
    どのチャンネルを処理対象にするか
    0 から 7 まで[int]
    既定値: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

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)