SATCHが日本語情報出してくれたので、改めてD’Fusion Studioにチャレンジして顔認識コンテンツをWebで公開!

  • このエントリーをはてなブックマークに追加
  • 80

SATCH開発サイトは、相変わらずD’Fusion Studioに関する有益な日本語情報を出してくれる。
ということで俺は、SATCH開発サイトの情報から少し発展したことをブログに書こうと思う。

今日は、顔認識用ARコンテンツの作り方と、Webへの公開の方法。
基本的には、SATCH開発サイトの情報を参照しつつ、間に物を挟んでいく感じで。

とりあえず出来ました。このように、インタビューを受ける川田十夢氏の写真も
認識します(写真クリックで、コンテンツに飛びます)。

この記事ね↓。
「現実を拡張する技術」をもっと日常的なものに

ちなみに、今回の3Dのメガネは、D’Fusion StudioのMedia Libraryからゲットした。
メガネの人の写真を、メガネが出てくるコンテンツのサンプルに使うとか頭おかしい。
後、メガネのテクスチャ出てない気もするがまぁいい。

とにかく、これで画像認識と顔認識までは出来ることがわかったので、
D’Fusion Studio、ひいてはSATCHの最大の問題が3Dオブジェクトの作成が
3ds MAX、Mayaでしか出来ないということであるとわかってもらえると思う。
KDDIは早くTotal Immersionに圧力をかけて、フォーマットをオープン化させるべき。

めがね(3枚組) [DVD]

販売元:VAP,INC(VAP)(D)( 2008-03-19 )

定価:¥ 5,040 ( 中古価格 ¥ 1,800 より )

Amazon価格:¥ 4,010

時間:105 分

3 枚組 ( DVD )



AR三兄弟の企画書

著者/訳者:川田十夢

出版社:日経BP社( 2010-08-26 )

定価:

Amazon価格:¥ 1,512

単行本 ( 220 ページ )

ISBN-10 : 4822248240

ISBN-13 : 9784822248246



顔認識コンテンツ

D’Fusion Studioで顔認識コンテンツを作るには、まずSATCH開発サイトで、
「1.7 トラッキング・シナリオを作って、3Dオブジェクトをトラッカーに配置しましょう」の直前まで進める。
1.7.でトラッキングを実装する(認識用の設定を行う)わけだが、代わりに顔認識を設定する。

まず、「1.7.1. – “月”フライヤー用トラッキング・シナリオを作りましょう」の、
「4. “Scenario Manger”タブに切り替え、”作成(Create)”ボタンをクリックし、トラック用オブジェクトを生成します:」
まではやって、次の「5.”ターゲット種類(Target Type)”が”平面(Plane)”になっていることを確認します。」で、
「”ターゲット種類(Target Type)”」を「Face AutoInit」に設定する。

すると、こんな風になんか斜め線が出てる画面になる(中央はカメラ映像)。

で、真ん中クリックするとこの斜め線が小さくなり、お面みたいになる。
とりあえず小さくしといて、自分の顔に合わせた感じにしよう。

タブを「Tracking Manager」にして自分の顔を映すと、青っぽい感じで
顔が認識される。

ここまでで認識の設定が終わった。開発ガイドで言うと、
「14.”トラッキング・マネージャー(Tracking Manager)”タブに切り替え、ウェブカメラに画像を写し、正常にトラッキングするか確認します:」
まで出来てるので、続きの
「15.ニューバーより”ファイル(File) > 別名保存(Save as)…”を選択し、”tracker”フォルダに、シナリオを保存します(上書き):」
から開発ガイドになぞって進めよう。ファイルをtracker.xmlとして保存すると、
以降そのまま進めるだけで顔認識コンテンツが作られる。

Webで公開

ということで、開発ガイドに従って、1.7.を終わらせると、後はコンテンツのエクスポートだけだ。
ここで、Targetとしてmobileではなく「@Home」を、種類として「All Platform」を選択してエクスポートする。
エクスポートしたフォルダは、「Face_Exported」としよう。

で、次はエクスポートしたフォルダをWebで公開する準備をする。
Webで公開するには、D’Fusion @Home Webというのを使う。
これは、D’Fusion Studio Suiteのダウンロードページから入手できる。
D’Fusion @Home Web 3.2って奴。こいつをダウンロードする。
ちなみに、ここはログインしてないと見れない。
ダウンロードしたDFusionHomeWeb_2.zipを解凍すると、Webというフォルダの下に
localとonlineとtoolというフォルダがある。

Webで公開する方法はD’Fusion Studioのページにある、ドキュメントに書いてある。
ちょっとわかりづらいが、RESOURCES-Getting Started以下の、
@Home deploymentのところを見ると、
Webでの公開の仕方が書いてあるpdfをダウンロードできる。

このpdfによると、Webで公開するときは、エクスポートしたフォルダを
アップロード準備ツールにかけて、Webで公開できる形にする必要がある。
ちなみに、前回の記事でも書いたがWebで公開するとき、商用にするなら
D’Fusion StudioのPRO版が必要なので注意。無償版だと、D’Fusion Studioの
ロゴが画面内を縦横無尽に駆け回るバージョンのコンテンツが出来る。

さて、つうわけで公開を続行しよう。
D’Fusion Studioをインストールしたフォルダを見ると、
「<インストールフォルダ>\D’Fusion 3.20.20164\DFusionStudio\Deployment\Tools」
というフォルダの下に、「PrepareFolderForUpdate.exe」というプログラムがある。
(または、ダウンロードしたDFusionHomeWeb_2.zipの中の、toolsフォルダにもある。
コマンドプロンプトを立ち上げ、以下のように実行する。
あ、Web用フォルダは予め何処かに空フォルダを作っておくこと。

  1. > PrepareFolderForUpdate.exe -i Face_Exported(エクスポートしたフォルダ) -o <Web用フォルダ>
  2.  
  3. -iオプションは入力フォルダ(エクスポートしたフォルダ)、-oオプションは
  4. 出力するフォルダを指定する。

すると、Web用フォルダの方にコンテンツが一通り書き出される。
この書き出したフォルダを、「online」のフォルダに放り込もう。

次に、onlineの下にある「sampleAR2_Test.html」ってファイルをコピーして、適当な名前にしておく。
最終的にはこのファイルにアクセスしてもらうので、Webに公開してOKな名前にすること。
で、コピーしたファイルを今回のコンテンツ用に書き換えるために開く。

開くとこうなってるので、30行目を書き換える。

  1. <html>
  2.  
  3. <head>
  4. <title>D'Fusion @Home Web Player Sample</title>
  5. <script src="./plugin/totalimmersion_dfusion_web_plugin.js"></script>
  6. <script src="./plugin/totalimmersion_dfusion_web_pluginMac.js"></script>
  7. <script src="./js/javascript_browser_sniffer.js"></script>
  8. <script src="./js/totalimmersion_dfusion_web_config.js"></script>
  9. <script src="./js/totalimmersion_dfusion_web.js"></script>
  10. <script src="./js/totalimmersion_dfusion_web_custom.js"></script>
  11. </head>
  12.  
  13. <body>
  14.  
  15. <!-- div used to display the camera selection if necessary -->
  16. <!-- see ChooseCamera and CamSelected in totalimmersion_dfusion_web_custom.js -->
  17. <div id="InteractionCell" align="center"></div>
  18.  
  19. <!-- div which contains the plugin instance (and only the plugin instance). -->
  20. <!-- the div is updated by different fuctions from totalimmersion_dfusion_web.js and totalimmersion_dfusion_web_custom.js -->
  21. <!-- if you rename it plesase rename the variable g_tiDivPluginName from totalimmersion_dfusion_web_custom.js -->
  22. <div id="plugin_dfusion" align="center">
  23.  
  24.   <script language="JavaScript">
  25.     var player = tiMacOSXSupported()?"DFusionWebPlayerMacOSX/DFusionWebPlayer":"DFusionWebPlayer/DFusionWebPlayer";
  26.     tiGenerateDFusionWebHTML(
  27.         "plugin_dfusion_instance",
  28.         640,480,
  29.         player,
  30.         "<Web用フォルダ>/<プロジェクトファイル>.dpd",//←ここを書き換える
  31.         "ChooseCamera",
  32.         "ReadyToStart",
  33.         "true"
  34.     );
  35.   </script>
  36.  
  37. </div align="center">
  38.  
  39.  
  40. </body>
  41.    
  42.  
  43. </html>

これで準備完了。
online以下の、scenario_final、scenario_test、sampleAR2_Final.html、
sampleAR2_Test.htmlの4つはサンプルとしておかれてるファイル/フォルダなので、
これら以外を全部アップロードしよう。

ということで、ここに試しにコンテンツをアップしてみたので、確認してみてほしい。
なんか、IEだとActiveXコントロールを入れようとしたりしてたが、Firefoxの最新版だと、
普通に見れたと思う。

スポンサーリンク
スポンサーリンク
  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク