構文
MSuper (clip, int "hpad", int "vpad", int "pel", int "levels", bool "chroma", int "sharp", int "rfilter", clip "pelclip", bool "isse", bool "planar")
解説
以下公式翻訳
+
|
... |
ソースクリップを取得し、多層(階層スケーリング)フレームデータを持つ特殊な"super"クリップを用意します。このsuperクリップはMAnalyse関数やモーション補間(クライアント)機能で利用します。そのパラメーターを保存、変換するために一つの手法としてsuperクリップのオーディオプロパティ(特にnum_audio_samples)を利用しています。なのでsuperクリップには音声はありません。それはクライアント機能を付加したソースクリップをさらに使う理由のひとつでもあります。持っているクリップを(通常形式の)特殊なクリップのように扱えるでしょう。(意訳)
+
|
... |
Get source clip and prepare special "super" clip with multilevel (hierarchical scaled) frames data. The super clip is used by both MAnalyse and motion compensation (client) functions. For storing and transferring its parameters we use audio properties of super clip (specifically, num_audio_samples) as a trick. So, audio is killed in super clip. That is one of reasons why we additionally use source clip with client functions. You may have a look to super clip yourself (it has normal format).
|
hpad :ソースフレーム(左右両方)に追加された水平パディング(埋め込み?)です。小さな埋め込みはフレームの境界付近でのより正しい動き推定のために追加されます(MVToolsのv2.0以前は常に内部的にpadding=block sizeとして扱われていました。現在は厳密ではありませんが推奨値です)。デフォルトは8です。
vpad :ソースフレーム(上下両方)に追加された垂直パディング(埋め込み?)です。デフォルトは8です。
pel : モーション推定の精度です。値は1,2,4のいずれかのみです。1は1ピクセルの精度を意味します。2は1ピクセルの半分の精度、4は1ピクセルの4分の1を意味し、空間補間によって生成されます(遅延なく正確にできますが大きなスケールステップを扱うため常によくなるとは限りません。)。デフォルトはv1.4.10以降2となっています。
levels :superクリップのフレームにおける階層レベルの数です。MAnalyse関数ではすべてのレベルにおいて必要とされますが、他のクライアント機能においてはよかった単一のレベルで十分です(courser?レベルは使いません)。デフォルトは0です(自動で可能なすべてのレベルに適応されます)。
chroma : superクリップにchroma(彩度)プレーンも準備することを許可します(falseだとluma(輝度)だけです)。デフォルトはtrueです。
sharp :pelを2か4にした際のサブピクセルの補間手法。
0はソフト補間(bilinear)
1はバイキュービック補間(4 tap Catmull-Rom)
2はシャープウィーナー補間(6 tapでLanczosに似ている)
デフォルトは2です。
rfilter :階層レベルの平滑化と低減(半減)のフィルターです。
0はフィルタリングされていないSimpleResizeのような4ピクセル平均(古い手法)
1はより平滑化するためのReduceBy2のような三角(シフト)フィルタ(減少エイリアス)
2はさらに平滑化するためのBilinearResizeのような三角フィルタ
3はさらに平滑化するための正方形フィルタ
4はさらに平滑化するためのBicubicResize(b=1,c=0)のようなキュービックフィルタ
デフォルトは2です(v2.3.1以降)。superクリップか下部の(元の?)荒い部分(適切な切り取りやオーバーレイによる)に外部フィルターを適用したりできます。
pelclip :内部のサブピクセル補間の代わりに使うためのオプション的なアップサンプリングソースクリップです(pelが2,4のとき)。行列がpelの倍数(pel=2のとき0,2,4,...)の位置にあるピクセル(パディング無し)はオリジナルソースのピクセルと同じ場所にあるべきで、他のピクセルは補間されるべきです。pel=2の例:LanczosResize(width*2,height*2,src_left=0.25, src_top=0.25)(近況追記:lumaでは正しく働きますが、MVToolsの内部補間におけるchromaピクセルの位置には対応していません。それにもかかわらず、ベクターやモーション補間はほとんど通常のクリップと変わらず、YUY2のsrc_left=0.5と追加YV12のsrc_top=0.5では同じ彩度(chroma)になるでしょう)他の使い勝手のよい例はEEDI2 edge-directed resamplerです。デフォルトは未定義です。
|
解説まとめ
MSuper関数は読み込んだ動画から
MAnalyze関数やモーション補間機能で使用する階層フレームクリップデータを出力します。まずはこの関数を使って動画データをフレーム情報を持つデータに変換し、他の関数で編集するという流れになるでしょう。
hpad,vpad (default=8)
フレームの縁付近のモーション推定につかう埋め込み処理。小さい値にすると正確な推定ができるようだ。
levels (default=0)
superクリップに生成するフレームの階層の数を指定する値。MAnalyse関数を使用する場合は全ての階層が必要(levels=0)になる。
chroma (default=true)
trueにするとchroma(彩度)プレーンもsuperクリップに出力する。falseだとluma(輝度)のみ。
rfilter (default=2)
階層レベルの平滑化(スムージング)と低減(半減)のフィルタ。
0:フィルタリングされていないSimpleResizeのような4ピクセル平均(古い手法)
1:ReduceBy2のような三角(シフト)フィルタ(減少エイリアス)
2:BilinearResizeのような三角フィルタ
3:正方形フィルタ
4:BicubicResize(b=1,c=0)のようなキュービックフィルタ
pel (1,2,4のいずれかを入力 default=2)
ピクセルサイズ補間によるモーション推定の正確さの指定。1:単一ピクセル、2:ハーフピクセル、4:クォーターピクセル。大きなスケールステップが起こるので精度を上げてもいい結果が出るとは限らないとのこと。
sharp (default=2)
pelを2か4にした際のサブピクセルの補間手法。
0:ソフト補間(bilinear)
1:バイキュービック補間(4 tap Catmull-Rom)
2:シャープウィーナー補間(6 tapでLanczosに似ている)
pelclip
pelを2か4にした際のサブピクセルの補間を別のソースクリップから行うときの引数みたいだがよく分からない。
EEDI2 edge-directed resamplerというサンプルがあるらしい。
最終更新:2013年03月09日 21:03