動く物体を追跡するためにテンプレートマッチングをやりたいのですが、なかなか完璧な方法というものが見つかりません。今まで、いろいろやってきてムービーの90%程度のフレームに関しては追跡可能であっても、物体の動きが急すぎてピントがぼけてブレたようになったフレームがあったりすると、うまくいかなくなります。
完全なものを模索中です。
FAsT-Match: Fast Affine Template Matching https://www.eng.tau.ac.il/~simonk/FastMatch/
というものを見かけました。よさげに見えます。MATLABコードが公開されていました。
FastMatch_demo.mをさっそく実行してみるとエラーになりました。
ADDING PATHS (2 subfolders to path)…
COMPILING MEX FILES…
==> compiling ‘Configs2Affine_mex.cpp’ (1 out of 3)
次を使用中のエラー: mex
サポートされているコンパイラが検出されません。無償提供されている MinGW-w64 C/C++ コンパイラをインストールできます。「Install MinGW-w64 Compiler」を参照してください。その他のオプションについては、https://www.mathworks.com/support/compilers を参照してください。エラー: CompileMex (行 6)
mex Configs2Affine_mex.cppエラー: FastMatch_demo (行 13)
CompileMex6 mex Configs2Affine_mex.cpp
K>>
コンパイラが必要らしい。
MinGW-w64 コンパイラのインストール
コンパイラをインストールするには、[アドオン] メニューを使用します。
- MATLAB[ホーム]タブの[環境]セクションで、[アドオン]、[アドオンの入手]をクリックします。
- MinGW を検索するか、[機能]から選択します。
MATLABのメニューから探してみました。
MATLAB Support for MinGW-w64 C/C++/Fortran Compiler
というのをインストールしてみます。ダウンロードにはMathworksへのログインが必要でした。パスワードを完全に忘れていましたが、メモが見つかってよかった。無事、デモファイルが実行できました。