「やってみよう!kinectアプリ開発」の第四回目レビュー(最終回)を記載させていただきたいと思います。今回の課題は下記のようになっておりました。
第12回 FaceTracking(前編)
今回は、今までのモーションやポーズと違い、顔の動きを取得する方法についての説明となっていました。
そこでさっそく、いつものように、各講座で提供されているソースをプログラムに組み込み動作確認をしようとしたのですが、今回は予想外の所で躓いてしまいました。
今回、ソースを入力して何度もリビルドやデバッグを行っていたのですが、何度やっても正常に動作させることができませんでした。何度も講座に記載されているソースと自分のソースを見比べて間違ったところが無いかと確認したのですが、プロジェクト名が異なるだけで他には特に間違っている点は見当たりませんでした。
そこで、試しにソース中にソフト起動直後にアラートウィンドウを出すようにしてみたのですが、何故かそれも表示されませんでした。これはひょっとして、Visual Studio自体に不具合が発生しているのかも・・・と疑ってしまったほどです(^^;;
ひょっとして何かの設定かもしれない・・・とメニューを1つずつ確認していたところ、「ビルド」→「構成マネージャー」を開いた際に、気になる項目が・・・
こちらが、そのウィンドウなのですが、右側にある「ビルド」のチェックボックスで、何故かメインプログラムである「kinect rebiew1」のビルドチェックボックスが外れ、「Microsoft.Kinect.Toolkit.FaceTracking」にだけチェックが入っています。
ひょっとして・・・と思い、「kinect rebiew1」の「ビルド」にチェックを入れて通常はリビルドの必要のない「Microsoft.Kinect.Toolkit.FaceTracking」のチェックを外してみました。
このように設定を変更した後でリビルドして、デバッグを開始してみると・・・・
キタ━━━(゚∀゚)━( ゚∀)━( ゚)━( )━( )━(゚ )━(∀゚ )━(゚∀゚)━━━!!
って、あれだけ見直してたのにプログラムの打ち間違いじゃなかったのね(ノД`)シクシク
ということで、実行してみた結果がこちら♪
顔がわからないほどに、ちゃんとマークが入ってます^^
正面だけじゃわかりづらい点もありますので、参考までにぎりぎりまで横を向いた状態の画像はこちら。
正面だけではなくて、顔の横面にも何点かポイントがあるのがわかるかと思います。
第13回 FaceTracking(後編)
後編では、Face Tracking SDKに含まれている画面内の人物の顔を検出するAPIを通常はC#からは使えないようになっているのですが、それを無理矢理(笑)C#から使えるようにして動かしてやろうという趣旨のようです。
以前に、SDKはメーカーから開発キットとして提供されているプログラムだという説明をした事があったかと思います。この提供方法として、完全にブラックボックス(中の動きがわからない)としてコンパイル済みの状態で提供される事もあるのですが、今回のFace Tracking SDKについてはソースにて提供されているため、変更が可能だと言う事のようです。
さっそく、ソースを組み込んで実行してみました。
問題なく、顔の部分を検出して黒で塗りつぶした状態にすることが出来ました。
講座の中でも書いてありますが、こちらの処理についてはリアルタイムに画像処理をさせるには動作が重たすぎるとの事で、右下のボタンを押したタイミングでkinectから情報を取得し画像として処理しています。画像は次にボタンが押下するまで表示されたままとなります。
やっていることはかなり難しいレベルのような気がしますが、提供されたソースを入力して実行できるレベルにはなれたようです(^^;
さーて、、、、とりあえず、これで講座はすべて終了となりましたので、今まで教えていただいた内容を利用させていただいて、オリジナルソフトの開発に本腰を入れていこうと思います。
最後までご覧いただきありがとうございました。
ZIGSOWにログインするとコメントやこのアイテムを持っているユーザー全員に質問できます。