Skip to content

Post Processing Filters

Nekopanda edited this page May 13, 2018 · 1 revision

KFM(KFM.dll)の画質調整フィルタ

KTemporalNR(clip, int "dist", float "thresh")

時間軸平均化フィルタ

  • CUDA対応: Yes
  • clip
    • ソースクリップ
  • int dist = 3
    • 最大参照フレーム距離。参照フレーム数はソースフレームも含めてdist * 2 + 1枚。
  • float thresh = 1※
    • 平均化対象画素しきい値。1にするとソース画素と±1の画素のみを加算して平均化する

KDeband(clip, int "range", float "thresh", int "sample", bool "blur_first")

AviUtlのバンディング低減フィルタを移植

  • CUDA対応: Yes
  • clip
    • ソースクリップ
  • int range = 25
    • オリジナルのrangeに相当
  • float thresh = 1※
    • オリジナルのY,Cb,Crに相当。Y,Cb,Crで同じ値しか設定できない。値は、オリジナルのスケールは適用されず、8bit画素値でのしきい値で指定する。8bitソースに対しては1を設定すればだいたいOK
  • int sample = 1
    • オリジナルのsampleに相当
  • bool blur_first = false
    • オリジナルの「ブラー処理を先に」に相当

KEdgeLevel(clip, int "str", float "thrs", int "repair", bool "uv", bool "show")

AviUtlのエッジレベル調整を移植

  • CUDA対応: Yes
  • clip
    • ソースクリップ
  • int str = 10
    • オリジナルの「特性」に相当
  • float thrs = 10※
    • オリジナルの「閾値」に相当。ただし、スケールは8bit画素値でのしきい値となっているので、オリジナルの25はだいたい10に相当。
  • int repair = 0
    • 0でオリジナルと同等の処理。>0で新アルゴリズム処理。
    • 新アルゴリズム: "(repair + 1) / 2" 回エッジレベル調整フィルタを掛けて、repair 回Repair(mode=3)相当の処理で適用する。エッジレベル調整は、対象ピクセルから甘いエッジのみ適用するよう修正されたアルゴリズムが適用される。
  • bool uv = false
    • falseでオリジナルと同等。trueでchroma成分も処理。
  • bool show = false
    • エッジ判定を出力。repair>0の場合は、"(repair + 1) / 2" 回のうち、最後のフィルタ適用で判定されたエッジが出力される。(CUDA非対応)

※8bit基準の値を入れると高ビットでも自動スケールするようになっている。floatなので小数点以下も有効であることに注意。