niiyan/2007-04-19

ColorKeyFrame version 0.1(キーフレーム間の色補正を線形補間)

  • ColorKeyFrame プラグインの概要

    ColorKeyFrame

    The plugin is similar and based on ColorYUV AviSynth filter. In Avisynth it is a hard to set different color correction for various part of clip, especially smoothly varying correction. (the Animate function is not very convinient).

    There are two functions in new plugin: ColorKeyFrame and ColorInterpolate. Several ColorKeyFrame commands can be used to define color correction data for some given frames (key frames). ColorInterpolate function make color correction by given values at key frames and smooth transition of color correction between key frames by linear interpolation of the color correction data. If you define exactly one key frame, the color correction by ColorInterpolation will be uniform for whole clip, just as ColorYUV.

    Plugin uses some hack of Avisynth interface to transmit its setting (the similar method is used by DGDecode, IVTC, DePan, MVTools, etc). Output of ColorKeyFrame function is special clip with color correction data (for given key frame and previous key frames) in framebuffer. This output can be used as a source for next call of ColoKeyFrame for defining of correction of some other key frame, and so on. Finally the output of last ColorKeyFrame is used as second input clip (keys) for ColorInterpolation function to interpolate the color correction.

    (試訳: このプラグインは AviSynth の ColorYUV フィルタに似ており、またそれをベースにしている。AviSynth では、異なる色補正、とりわけスムーズに変化する補正をクリップのさまざまなパートに設定するのは難しい(Animate 関数はあまり便利ではない)。

    この新しいプラグインには次の 2 つの関数がある: ColorKeyFrame と ColorInterpolate。複数の ColorKeyFrame コマンドは、与えられたフレーム(キーフレーム)に対する色補正データを定義するのに使用できる。ColorInterpolate 関数は、キーフレームに与えられた値による色補正と、色補正データの線形補間によるキーフレーム間の色補正のスムーズな変化を行う。キーフレームを1 つだけ定義した場合、ColorInterpolation による色補正は、ちょうど ColorYUV のようにクリップ全体に対して一様になる。)

    このプラグインは、その設定を転送するために AviSynth のインターフェイスのハックを使用している(同様の方法は DGDecode、IVTC、DePan、MVTools などによって使われている)。ColorKeyFrame 関数の出力は、フレームバッファの中に(与えられたキーフレームと前のキーフレームに対する)色補正データを伴った特別なクリップである。この出力は、別のキーフレームの補正を定義するための ColoKeyFrame の次の呼び出しに対するソースとして使用できる。最終的に、最後の ColorKeyFrame の出力は、色補正を補間する ColorInterpolation 関数の 2 番目の入力クリップ(keys)として使用される。)

  • まとめ
    • ColorYUV をベースに書かれており、パラメータや基本的な色補正のやり方は似ている。
    • ColorKeyFrame プラグインには、ColorKeyFrame と ColorInterpolate という 2 つのフィルタが収録されている。
    • ColorKeyFrame では、色補正のキーとなるフレーム(キーフレーム)を指定して、そのフレームに対する補正値を指定する。
      • キーフレームといっても、AVI ファイルのそれとは必ずしも一致しない。
      • 指定したいキーフレームの分だけ、ColorKeyFrame フィルタを追加する。
      • ColorKeyFrame によって出力されるのは、そのキーフレームと前のキーフレームの色補正データを含む特別なクリップ。
    • ColorKeyFrame フィルタをすべて記述した後に ColorInterpolation フィルタを記述する。
    • ColorInterpolation は、ColorKeyFrame のデータを元に、キーフレーム間の補正値をスムーズに変化するように補間しながら、適用する。
      • キーフレームを 1 つしか定義しなかった場合は、ColorYUV と同様にクリップ全体に同じ値が適用される。
  • ColorKeyFrame プラグインを、に追加しました。

BobInPlace(リサイズを伴わない Bob フィルタ)

  • BobInPlace とは
    • その 1

      Bob filter with no resize - Doom9's Forum

      Originally, BobInPlace was written as an alternative to Bob --> Resize --> Reinterlace of interlaced material that must be resized, but I haven't successfully written a DeBobInPlace filter yet.

      (試訳: もともと BobInPlace は、リサイズする必要があるインターレース素材の Bob(ボブ) --> リサイズ --> 再インターレースの代替として書かれた。しかし、DeBobInPlace フィルタは、まだうまく書けていない。)

  • その 2

    Bob filter with no resize - Doom9's Forum

    Instead of moving both fields down and up 1/4 line, BobInPlace leaves the top field untouched and takes the average of every bottom field's line with the bottom field's line that procedes*1 it. This simple approach maximizes both sharpness and flicker. (試訳: 両方のフィールド(トップフィールドとボトムフィールド)を 1/4 ライン上下させる代わりに、BobInPlace はトップフィールドをそのままにして、すべてのボトムフィールドのラインとそれに先行するボトムフィールドのラインとの平均を取る。このシンプルなアプローチはシャープさとフリッカの両方を最大化する。)

  • ソースのみ。

*1 原文ママ。precede のタイポ?

最終更新日時: 2007-04-19 (木) 23:59:17 (5028d)