スクリプト

キーイング_H

概要

マット調整・スピル除去・トラックマットの3種

詳細説明

キーイング_H

背景を抜いた素材の仕上げに使うアニメーション効果の詰め合わせです。1 つのファイルに 3 つの効果が入っています。

効果 すること
マット調整 透明度の輪郭(マット)を、収縮・膨張 → エッジぼかし → レベル補正 の順で整える
スピル除去 背景色が被写体の縁や髪に回り込んだ色(スピル)を取る
トラックマット 別のレイヤーの明るさか透明度で、オブジェクトを型抜きする
  • Script/@キーイング_H.anm2(マット調整 v1.01 / スピル除去 v1.01 / トラックマット v1.03)

インストール

  1. Script\@キーイング_H.anm2 を配置する
  2. AviUtl2 を再起動する
  3. オブジェクトに「マット調整」「スピル除去」「トラックマット」を追加する(HexScript の中。効果名は マット調整@キーイング_H など)

使い方の流れ

クロマキーなどで背景を抜いた素材に、マット調整 → スピル除去 の順で重ねます。
透明度の輪郭を先に整えてから、色の被りを取るためです。トラックマットは単独で使います。

マット調整

透明度(アルファ)の輪郭だけを整えます。色そのものはぼかしません。フィルタオブジェクトにも対応しています。

使い方

  1. 背景を抜いた素材に「マット調整」を追加する
  2. 縁に背景の色が残るなら 収縮/膨張 をマイナスにして輪郭を内側へ削る。抜けすぎて痩せたならプラスにする
  3. 輪郭が硬いときは エッジぼかし で柔らかくする
  4. 半透明のもやが残るときは 黒レベル を上げる。被写体の中に薄い穴があるときは 白レベル を下げる

パラメータ

マット形状

項目 範囲 初期値 説明
収縮/膨張 -16 ~ 16 0 マイナスで不透明な部分を内側へ削る(収縮)、プラスで外側へ広げる(膨張)。単位は px。1 px 単位で効き、小数部は効かない
エッジぼかし 0 ~ 32 0 輪郭の透明度をぼかす半径(px)。不透明な部分の色はぼけない

マットレベル

項目 範囲 初期値 説明
黒レベル 0 ~ 100 0 不透明度(%)がこの値以下の部分を完全に透明にする
白レベル 0 ~ 100 100 不透明度がこの値以上の部分を完全に不透明にする。黒レベルとの間は直線で引き伸ばす
マットコントラスト -100 ~ 100 0 半透明の部分の濃さ。プラスで薄く(透明寄り)、マイナスで濃く(不透明寄り)なる。+100 で不透明度の 2 乗、-100 で平方根
  • 処理の順番は 収縮/膨張 → エッジぼかし → マットレベル で固定です
  • 膨張で広がった部分には、隣の不透明な画素の色がそのまま入ります。黒い縁は出ません

注意

  • 透明度に対する操作なので、全面が不透明な画像では何をしても見た目が変わりません。 背景を抜いた後の、輪郭を持つ素材に使ってください
  • 黒レベルが白レベル以上のときは、マットレベルの 3 項目を丸ごと使いません(そのままだと全体が消えるため)
  • 通常のオブジェクトでは、膨張とエッジぼかしが外枠の外まで広がります。 膨張の量とぼかしの半径の分だけ画像の上下左右を
    透明で広げてから処理するので、外枠いっぱいまで不透明な素材でも四角の縁で切れません。広げた分だけオブジェクトの大きさが変わり、
    中心の位置は変わりません
  • 収縮だけ・マットレベルだけのときは画像を広げません(大きさは元のまま)
  • フィルタオブジェクトでは広げません。 画面の大きさは変えられないので、膨張とぼかしは画面の中に収まります

スピル除去

背景色の成分が、被写体の縁や髪に回り込んで残った色を中和します。透明度は変えません。フィルタオブジェクトにも対応しています。

使い方

  1. 背景を抜いた素材に「スピル除去」を追加する(マット調整を使うならその後)
  2. 背景色 に抜いた背景の色を指定する(初期値は緑)
  3. 緑の服など、残したい色まで灰色になるときは 許容 をプラスにする
  4. 取った後に暗く見えるなら 明度を保つ を ON のままにする

パラメータ

項目 範囲 初期値 説明
背景色 - 00ff00 抜いた背景の色。R・G・B のうちいちばん強い成分(緑背景なら緑)を、取る対象の色にする
強度 0 ~ 100 100 効きの強さ(%)。0 で何もしない
許容 -100 ~ 100 0 対象の色をどこまで残すか。プラスで多く残し、マイナスで多く取る
バランス 0 ~ 100 50 対象の色を下げる上限。0 で残り 2 色の小さい方、100 で大きい方、50 でその平均
明度を保つ ON / OFF ON ON なら、色を取った後の明るさが元と同じになるよう 3 色をまとめて持ち上げる(100% を超える色は 100% で止まる)。OFF なら取った分だけ暗くなる

色の取り方

緑背景(初期値)の場合、画素の緑が「赤と青から決めた上限(バランス)+ 許容」を超えている分を削ります。
上限を超えていない画素は変わらないので、赤や青が十分にある色(肌など)は残ります。

  • 背景色は、どの成分がいちばん強いかだけを見ます。正確な色を拾う必要はありません。青背景なら青っぽい色を指定すれば足ります
  • R・G・B が同じ強さの色(灰色など)を指定すると、赤が対象になります
  • 半透明の縁でも、色が不透明度より明るくなる(縁が白く浮く)ことはありません(v1.00 は明度を保つ ON のとき半透明の縁で起きえました。v1.01 で直しました)

トラックマット

別のレイヤーのオブジェクトの明るさ(輝度)か透明度(アルファ)を型にして、オブジェクトを型抜きします。
フィルタオブジェクトに追加すると、画面全体をまとめて型抜きできます(下の「フィルタオブジェクトで使う」)。

使い方

  1. 型にしたいオブジェクト(マット)を、抜きたいオブジェクトより上のレイヤーに置く
  2. 抜きたいオブジェクトに「トラックマット」を追加する。初期値の 参照レイヤー -1 は、1 つ上(レイヤー番号が 1 小さい)のレイヤーを指す
  3. マットの白い所が残り、黒い所が消える。透明度で抜きたいときは マット元 を「アルファ」にする
  4. マットの位置がずれるときは、下の「位置の合わせ方」のとおり オフセットX / Y で合わせる

パラメータ

項目 範囲 / 選択肢 初期値 説明
参照レイヤー -10 ~ 10 -1 マットにするレイヤーを、自分のレイヤー番号からの差で指定する
マット元 輝度 / アルファ 輝度 輝度: マットの明るい所ほど残す(マットの透明な所は消える)。アルファ: マットの不透明な所ほど残す
反転 ON / OFF OFF 残す所と消す所を入れ替える
強度 0 ~ 100 100 型抜きの効き(%)。0 で何もしない、50 で半分だけ効く
エフェクト適用後を使う ON / OFF ON ON ならマット側のオブジェクトに付けた効果を掛けた後の画像を型にする。OFF なら効果を掛ける前の画像

位置補正

項目 範囲 初期値 説明
オフセットX -4000 ~ 4000 0 マットを置いたとみなす位置の X(px)。プラスで右
オフセットY -4000 ~ 4000 0 マットを置いたとみなす位置の Y(px)。プラスで下

位置の合わせ方

マットの画像は、画面の中央にオフセットX / Y だけずらして、等倍で置いてあるものとみなして重ねます。
マット側のオブジェクトの位置・拡大率・回転は見ません。

  • マット側を画面の中央(X 0・Y 0)・拡大率 100 に置けば、オフセットは 0 のままで合う
  • マット側を動かしたときは、その X・Y をオフセットX・Y に入れると合う
  • 抜く側(自分)は、標準描画の X・Y と拡大率に、トラックマットより前に掛けた効果の移動と拡大(「座標」「拡大率」など)を足して合わせる。拡大率 100 以外でも合う(実機で確認)。前の効果で動かしても、マットは画面に固定されたまま

フィルタオブジェクトで使う

フィルタオブジェクトに「トラックマット」を追加すると、それより下のレイヤーで描いた画面全体を型抜きします(v1.03 から。実機で確認)。
オブジェクト追加メニューの「フィルタオブジェクト」の一覧には出ないので、フィルタオブジェクトを置いてから「フィルタ効果を追加」で足してください。

  • 画面全体を、画面の中央に等倍で置いたものとして重ねます。マットを画面の中央(X 0・Y 0)・拡大率 100 に置けば、オフセットは 0 のままで合う
  • 参照レイヤーは、フィルタオブジェクトのレイヤー番号からの差で指定する
  • 型抜きした所は透明になります。動画の背景色の上ではなく、透明のまま出力されます
  • v1.02 までは、フィルタオブジェクトに追加すると処理が止まって何も起きないおそれがありました

注意

  • マット側のレイヤーも、通常どおり画面に描かれます。上に不透明なレイヤーを重ねて隠しても、型としての読み込みには影響しません
  • マットの画像からはみ出した部分は消えます(反転 ON なら残ります)
  • 抜く側の回転・中心、カメラ制御は位置合わせに入りません。回転させたオブジェクトではずれます
  • トラックマットより前に掛けた効果の移動・回転・拡大・不透明度は、そのまま残ります(v1.00 はマットを読み込むときに失われるおそれがありました。v1.01 で直しました)
  • マットの外周の半画素は、マットの端の濃さで読みます(v1.01 までは外周が半分の濃さになることがありました。v1.02 で直しました)
  • 個別オブジェクトのテキストなど、効果の側で描画するものをマットにするとうまく読めないことがあります(本体の仕様)
  • 参照先を読み込めなかったとき、参照先のレイヤー番号が 1 未満になるときは、型抜きせずにそのまま表示します