C++
Xcode
openFrameworks
ofxFaceTraker
More than 1 year has passed since last update.

研究でopenFrameworksのFaceTrackerを使ってみようと思い
自分のMacBookに環境構築した際の備忘録です。

MacにXcodeがインストールされている前提で話を進めますがopenFrameworksの公式ガイドに従ってインストールすれば問題ないと思います。
ちなみにわたしはOS 10.11.6、Xcode 7.3.1 を使用しています。

これから導入するもの

  • openFrameworks 0.9.8
  • FaceTrackerを使用するのに必要なアドオン2種類
    • ofxCv
    • ofxFaceTracker

openFrameworksのインストール

公式HPのガイドに従ってインストールします。
新規プロジェクトの生成までできたらOKです。

ここでopenFrameworksをインストールしたディレクトリをOF_ROOTとしておきます。

アドオンの導入

下記のリンクからダウンロードできます。

ofxCv
ダウンロードしたフォルダの名前を「ofxCv」に変更して、OF_ROOT/addons/に移動。
※OF0.9.8をインストールした場合、必ず「stable」という方をDLしないとサンプルをコンパイルするときにエラーが出てしまいます。

ofxFaceTracker
同様にダウンロードしたフォルダをOF_ROOT/addons/に移動。

サンプルプログラムを動かす

これから、OF_ROOT/addons/ofxFaceTracker/ にあるサンプル example-** を動かしてみます。

新規プロジェクトの作成
projectGeneratorで新規プロジェクトを作成します。
プロジェクトの作成時にアドオンを適宜追加するのですが
必要なアドオンがサンプルによって多少異なります。
何を追加すればよいかは example-**/addons.make に書いてあるので参照してください。

たとえばexample-extractionを動かすときには

  • ofxCv
  • ofxOpenCv
  • ofxFaceTracker
  • ofxGui

の4つが必要になります。

ソースのコピー
example-**/src を、先ほど作成したプロジェクトフォルダにコピーします。
すでにsrcというフォルダが存在するはずなので、置き換えてください。

モデルデータの追加
OF_ROOT/addons/ofxFaceTracker/libs/FaceTracker/model にあるすべてのファイルを、
新規プロジェクトのbin/data/modelにコピーします(フォルダが存在しなければ新規作成)。

サンプルのコンパイル
これでプロジェクトの設定が全て完了したので、Xcodeでプロジェクトを開いてコンパイルします。
はじめは少し時間がかかると思いますが待っていれば実行できると思います。

おわりに

example-extractionなどは、Macの内蔵カメラの映像をリアルタイムにトラッキングしてくれるものです。
わたしがサンプルを動かしたときは画面が真っ暗で何も起こらなかったのですが、内蔵カメラに問題があったようで、PCを再起動することで正しく動作しました。

あらかじめ録画した映像を使いたいときは、example-non-realtimeを参考にするといいと思います。これは、内蔵カメラの映像のかわりに bin/data/**.mov を使用するサンプルです。

FaceTrackerでは顔の特徴点を60箇所くらい検出してくれるみたいなのですが
ピンポイントで「鼻だけ」とか取りたい場合はどうすればいいか、また投稿したいと思います。