
今回は、モーショントラッキングで自動でトラッキングしてくれるスクリプト、Mr-OjiiさんのMotionTracking MK-Ⅱ Plusを試してみたので紹介したいと思います。
MotionTracking MK-II Plus(GitHub)
【AviUtl】MotionTracking MK-II Plusの導入方法と解説(ニコニコ動画)
目次
MotionTracking MK-Ⅱ Plusの導入

まずはGitHubのReleasesページから最新版をダウンロードします。

ダウンロードしたzipファイルを解凍し、
MotionTracking_modelフォルダ
MotionTrackingMKⅡPlus.auf
この二つをpluginsフォルダにコピーします。
これでひとまず導入は完了です。AviUtlを起動します。
使い方

設定からMotionTracking MK-Ⅱ Plusの設定をクリック。

このようなウィンドウが表示されます。

流れとしては、
1. Select Objectでターゲットの選択範囲を指定
2. Methodでトラッキングの解析方法を選択
3. Analyzeで解析を実行
4. View Resultで解析結果を確認
5. Exo Typeで出力方法を選択
6. Save EXOでexoファイルとして保存
といった感じです。
トラッキングする
元動画です。歩く人物の顔をトラッキングしてみたいと思います。

Select Objectをクリックします。

新たにウィンドウが出てくるので、そこでトラッキングの選択範囲を指定します。

続いてMethodでトラッキングの解析方法を指定します。
1. MIL(Multi Instance Learning)
2. KCF(Kernelized Correlation Filter)
3. CSRT(Channel and Spatial Reliability Tracker)
デフォルトで使えるのは1-3までです。4-6は別途導入が必要になります。
1のMILはトラッキング精度、処理速度ともに低から中程度といった感じです。
2のKCFの特徴は高速な処理速度です。その分トラッキングの精度が落ちます。
3のCSRTの特徴は高精度なトラッキングです。その分処理速度が遅くなります。
トラッキングはターゲットの動きだけでなく、周囲との色や形、遮蔽物の有り無しなど素材動画によるところが大きいです。なので、複数のMethodで解析してみると良いと思います。

選択範囲と解析方法を指定したらAnalyzeで解析を実行します。

途中で(応答なし)になることもありますが、そのまま待つことで解析は完了します。
但し、実行後は中止することができないので、誤って長時間の動画を解析すると完了するまで何もできないので注意してください。

完了すると小さなウィンドウで表示されます。

View Resultにチェックを入れると解析結果を確認することができます。
プレビューで確認します。

これでいいと思う解析結果になったら、Exo Typeで出力する種類を選択します。
1. 四角形(図形)+リサイズ
2. 部分フィルタ+単色化
3. 座標[メディアオブジェクト]+リサイズ
Save EXOをクリックして保存します。

出力されたexoファイルはタイムラインにドラッグ&ドロップすることで読み込むことができます。

1の四角形(図形)と3の座標[メディアオブジェクト]ではリサイズが追加されています。座標のみのトラッキングでいい場合はチェックを外します。

2の部分フィルタには単色化が追加されています。
画像やテキストを利用するなら3の座標[メディアオブジェクト]、モザイクやぼかしをかけたいなら2の部分フィルタがおすすめです。
顔を画像で隠す。
顔にモザイクをかける。
その他の設定

Clear Resultをクリックすると選択範囲と解析結果をクリアします。

Rect HueはSelect Objectで選択範囲を指定する際や、View Resultで解析結果を見る際などで表示される図形の色を変えます。

デフォルトの緑色が周囲と重なって区別がつきにくい場合に、Rect Hueで色を変えると見やすくなると思います。

Invert Positionでは座標が反転し、トラッキングした座標が常に中央になります。
Exo Type3でexo出力してみます。
こんな感じです。

Ignore Aspect Ratioのチェックを外してexo出力すると、Select Objectで指定した選択範囲の縦横比を維持したままになります。
デフォルトではチェックが入っていて、ターゲットが変形するとそれに合わせて選択範囲も変形します。解析によっては変形しないこともありますが。

Quick Blurにチェックを入れると選択範囲にぼかしがかかります。

exo出力せずともこれで十分なら、手軽で良いですね。

Easy Privacyは選択範囲の指定や解析の実行をせずに使用します。チェックを入れることで自動で顔を認識し、ぼかしをかけます。

通常では一人一人選択範囲を指定し、解析、exo出力しなければなりませんが、一度に複数のトラッキングが可能です。
ただ、トラッキングが外れやすく処理も重いです。
トラッキングの工夫
ターゲットが動画の途中から登場する場合。ナンバープレートにモザイクをかけたい。

動画出力の範囲を指定してトラッキングします。
ショートカットキーの”[“でここから、”]”でここまでとなっています。

トラッキングの選択範囲では、全部露出後に選択範囲を指定すると、登場してから全部露出するまでの間は手動でトラッキングする必要があります。

その場合は、ターゲットの一部が露出した段階で、小さな選択範囲をしていすると上手くいくことがあります。
こんな感じ。

後は出力したexoを読み込み、部分フィルタのサイズや縦横比を移動無しにして調整します。
Method4-6の導入


通常の導入ではMethodは1-3までしか使用できず、4-6を指定して解析しようとするとエラーがでます。
Method4-6を使用するには別途ファイルをダウンロードして指定フォルダにコピーする必要があります。
Method4 DaSiamRPN

Method4の導入。
GitHubのページから5-7行目にurlが記述されているので、個別に移動します。

こんな感じのページに移るので、ダウンロードボタンをクリックしてファイルをダウンロードします。
3つのurlから3つのファイルをダウンロードしてください。

dasiamrpn_kernel_cls1.onnx
dasiamrpn_kernel_r1.onnx
dasiamrpn_model.onnx
3つのファイルをMotionTracking_modelフォルダにコピーします。
Method5 Nano

Method5の導入。
GitHubのページからファイルのリンクをクリックします。

右側のダウンロードボタンをクリックしてファイルをダウンロードします。
もう一つの方も同じようにしてファイルをダウンロードします。

nanotrack_backbone_sim.onnx
nanotrack_head_sim.onnx
この二つのファイルをMotionTracking_modelフォルダにコピーします。
Method6 Vit

Method6の導入。
GitHubのページからダウンロードボタンをクリックしてファイルをダウンロードします。

vitTracker.onnxをMotionTracking_modelフォルダにコピーします。
以上でMethod4-6を使用するためのファイルの導入は完了です。
Method4-6の比較
Method4は処理速度は中程度、トラッキング精度も中程度です。
Method5は処理速度は高速です。その分トラッキング精度は落ちます。
Method6は処理速度は低速です。その分トラッキング精度が高いです。
ですが、やはり実際には素材となる動画によるところが大きいと思います。
性能比較
元動画です。

元動画ではターゲットである人物の顔が腕を上げることで一瞬隠れます。このときに各Methodのトラッキングがどうなるか検証してみました。
Method1は腕につられて最後は腕の方をトラッキングしてしまいました。
Method2は顔が腕で隠れた時点でトラッキングが外れて、以降はエラーになりました。こちらは処理が高速な分だけ精度が低い結果ですね。
Method3は顔が腕で隠れても比較的高い精度でトラッキングが続きました。流石のデフォルト設定です。
各Method荒ぶっていますね。
Method4は腕で顔が隠れたときに一瞬腕の方にトラッキングが移ってしまいました。
Method5は腕と顔が重なった瞬間に腕と顔を一体とみなしてトラッキングの範囲が広がりましたね。
Method6はもうわかりません。トラッキングの選択範囲を変えるとまた違うのかもしれません。
結果はこうなりましたが、素材動画や選択範囲の取り方などで解析結果は変わってくると思うので、いくつか試してみて一番いいやつを選んでみてください。
いかがだったでしょうか。
自動でのトラッキングは、激しい動きが少なく、遮蔽もないターゲットのシンプルな移動だったり、トラッキングによるブレが目立ちにくいモザイクをかける編集に向いていると思います。
また、一度に全部トラッキングすると思わずに、遮蔽物に隠れるまで、遮蔽物から出てきたところからとその都度分けてトラッキングすると上手くいくんじゃないかなと思います。
MotionTracking MK-Ⅱ Plus、機会があれば是非試してみてください。
