モーションキャプチャデータ公開のためのFlashを利用した3Dビューアの開発
6
0
0
全文
(2) Vol.2009-DD-72 No.13 2009/7/31. 情報処理学会研究報告 IPSJ SIG Technical Report HIERARCHY. Segment: Hip. (a). Frames: 2274. ROOT root_name {. Frame Time: 0.033333 XTRAN YTRAN ZTRAN XROT YROT ZROT XSCALE YSCALE ZSCALE. OFFSET 0 0 0. INCHES INCHES INCHES DEGREES DEGREES DEGREES PERCENT PERCENT PERCENT. CHANNELS 6 Xposition Yposition Zposition Xrotation Yrotation Zrotation. 0.617621 14.371656 1.429377 159.670102 2.513770 167.903763 100.000000 100.000000 100.000000. JOINT joint1. 0.596250 14.339758 1.390180 159.464782 2.598235 167.884958 100.000000 100.000000 100.000000. {. 0.569262 14.307372 1.357113 159.194274 2.748916 167.866268 100.000000 100.000000 100. 000000. OFFSET 0 10 0. 0.535942 14.259733 1.256107 159.211172 2.734622 167.870359 100.000000 100.000000 100.000000. CHANNELS 3 Xrotation Yrotation Zrotation. 0.498080 14.199757 1.139531 159.182159 2.742376 167.868972 100.000000 100.000000 100.000000. End Site. :. (b). (c). {. (d). OFFSET 0 10 0. Segment: Body }. Frames: 2274 }. Frame Time: 0.033333 XTRAN YTRAN ZTRAN XROT YROT ZROT XSCALE YSCALE ZSCALE. }. INCHES INCHES INCHES DEGREES DEGREES DEGREES PERCENT PERCENT PERCENT. MOTION. 1.255497 17.930058 2.674189 -179.808572 4.586962 178.743489 100.000000 100.000000 100.000000. Frames:. 1.217297 17.869421 2.559495 -179.827609 4.576087 178.766621 100.000000 100.000000 100.000000. Frame Time:. 1.185569 17.822482 2.483007 -179.818551 4.585926 178.742691 100.000000 100.000000 100.000000. 000000000. 1.167133 17.807767 2.438977 -179.875827 4.651139 178.680823 100.000000 100.000000 100.000000. 200000000. 1.139513 17.775747 2.461292 -179.801358 4.614414 178.660115 100.000000 100.000000 100.000000. 400000000. 1.152974 17.801909 2.501854 -179.822237 4.621141 178.663783 100.000000 100.000000 100.000000. 600000000. :. 5 0.033333. 800000000. 図 1 BVA 形式. 図 2 BVH 形式. することにした.これら 2 種類のファイルフォーマットを読み込むことができ, MoCap データの選択機能,正確に動作を閲覧するための,視点移動や,アニメーショ ンの制御機能などを持った 3D ビューアを目指す.. タは,トランスミッタから磁気センサまでの距離(x, y, z)および,トランスミッタに対 する磁気センサの相対角度(Azimuth, Elevation, Roll)の 6 自由度の時系列情報である. MoCap データの記録には,Alias 社の MotionBuilder を使用しており,FBX 形式にてファ イル保存される.本 3D ビューアに使用する MoCap データは,MotionBuilder の Export 機能を用いて,FBX 形式から BVA 形式や BVH 形式にファイルフォーマットの変換を 行う. 2.2 BVA 形式 BVA 形式は,アスキー形式となっており,例を図 1 に示す.センサ毎にセグメント 名,総フレーム数,1 フレームあたりの時間(a),および 3 次元の各フレームのセグメ ントの位置(b),角度(c),スケール(d)から構成される.角度はオイラー角形式で記述す る.スケールは特別な設定を必要としないため,等倍である 100 となる.このファイ. 2. MoCap データ 2.1 MoCap システム. MoCap システムは代表的な方式として,光学式,機械式,磁気式などがある[11]. 本研究では,弊社スタジオにて採用している磁気式の MoCap システムを使用する.磁 気式 MoCap システムは,磁界を発生させるトランスミッタ,身体に装着する磁気セン サ,磁気センサの情報を変換する MoCap サーバなどから構成される.記録されるデー. 2. ⓒ2009 Information Processing Society of Japan.
(3) Vol.2009-DD-72 No.13 2009/7/31. 情報処理学会研究報告 IPSJ SIG Technical Report. ルフォーマットでは,磁気センサそのものの情報を記述,再現するのに適している. 2.3 BVH 形式 BVH 形式は,BVA 形式同様アスキー形式となっている.図 2 に,BVH 形式の例を 示 す . 骨 格 モ デ ル の 階 層 記 述 部 で あ る HIERARCHY 部 と , 動 き の 記 述 部 で あ る MOTION 部の 2 部構成となっている. HIERARCHY 部では,骨格モデルを ROOT,JOINT,End の各ノードを用いて階層 構造で表現する.ROOT は階層構造の始点となるノードで JOINT は骨格モデルの関節 を表すノード,End は骨格の終点を表すノードである.それぞれのノードの位置は OFFSET で記述されており,このときの OFFSET の値は上位ノードからの相対座標で 記述されている. MOTION 部では総フレーム数と 1 フレームあたりの時間をそれぞれ記述した後,次 の行より,ROOT の 3 次元位置と回転角,各 JOINT の回転角を HIERARCHY 部の CHANNELS に記述されている順序で記載する.回転角はオイラー角形式で,上位ノー ドからの相対的な角度で表している.また角度は HIERARCHY 部で定義した骨格モデ ルが基準となっている. このファイルフォーマットでは骨格モデルを使用しているため,3D ビューアで再生 する際に,人の動きを直感的にイメージしやすい利点がある.. 3.3 MXML. MXML は,Flex アプリケーションのユーザインターフェイスを定義するための XML ベースの GUI 記述言語である.MXML 上で記述されるタグはある機能を持つ単位で あるコンポーネントで,タグの属性は各コンポーネントのプロパティとして定義され る. 3.4 Away3D Away3D は,ActionScript で提供される 3D 描画のためのライブラリである.Away3D により,Flash での 3DCG を実現させる.3DCG は,仮想的な 3 次元空間内に配置され た物体を,同じく配置されたカメラから撮影することにより出力された 2 次元画像の ことをいう.仮想 3 次元空間上に存在するものはすべて数値データで表され,被写体 の回転,拡大・縮小なども,すべて計算により行われる.また,最終的なカメラから 見える画像を出力することをレンダリングという. Away3D には,これら仮想 3 次元空間を構築するための Scene3D クラス,カメラを 作成するための Camera3D クラス,レンダリングを行うための View3D クラスなど, 3DCG を作成するための様々な機能を持ったクラスが含まれている. 以下,本研究で使用したライブラリ内のクラスについて説明する. ・3DCG を作るための基本的な機能を提供するクラス 1. View3D クラス レンダリングなどの機能を提供するクラス.仮想 3 次元空間の作成も行う. 2. Scene3D クラス 仮想 3 次元空間内に配置されている物体を管理するクラス.仮想 3 次元空間に物 体を配置する場合はこのクラスに物体を登録する. 3. Camera3D クラス カメラの機能を持ったクラス. Away3D で 3DCG を作成するとき,これら 3 つのクラスは必ず使用される.. 3. 開発環境 3D ビューアの表示,再生環境として,Flash Player を使用するが,Flash の 3D 描画 のための開発環境として,Adobe Flex[12]と Away3D[13]を使用した. 3.1 Adobe Flex Adobe Flex は,Adobe System 社が提供している RIA(Rich Internet Applications)を 構築するための Web アプリケーション開発フレームワークの名称である.Adobe Flex によって開発された Web アプリケーションは同社の開発した Flash を再生させるため の Web ブラウザのプラグインである Flash Player により動作する.画面レイアウトに は XML に準拠した独自の言語である MXML が使用されており,内部での動作は Flash で使用されているオブジェクト指向プログラミング言語である ActionScript[14]が使用 されている. 3.2 ActionScript ActionScript は,Flex による Web アプリケーション開発で用いられるスクリプト言 語である.ActionScript は ECMAScript を拡張した言語であり,同様に ECMAScript を 拡張した言語である JavaScript と互換性がある.また,Java などと同様,クラスベー スのオブジェクト指向がサポートされており,それにより本格的なプログラミングも 可能となっている.. ・仮想 3 次元空間に配置する物体を作成するためのクラス 4. Cube クラス 仮想 3 次元空間に,立方体を配置することができるクラス. 5. LineSegment クラス 仮想 3 次元空間に,直線を配置することができるクラス. 6. Trident クラス 仮想 3 次元空間に,x, y, z それぞれの方向に伸びる直線を配置することができる クラス.. 3. ⓒ2009 Information Processing Society of Japan.
(4) Vol.2009-DD-72 No.13 2009/7/31. 情報処理学会研究報告 IPSJ SIG Technical Report. Away3D には基本的な図形を配置することができるクラスがいくつかあるが,本研 究では BVA 形式の MoCap データの各セグメントを表すために,Cube クラスを使用し, BVH 形式の骨格構造を表すために LineSegment クラスを使用した.また,どの角度か ら見ているかを示すために Trident クラスを使用した.. 4.2 ビューア初期化. ビューア初期化では画面の作成と MoCap データリストの読み込み,ライブラリの初 期化が行われる. 4.2.1 画面の作成 3D ビューアの画面は,図 4 に示すように,MoCap データ選択エリア,アニメーショ ン表示エリア,アニメーション制御エリアから構成されている.MoCap データ選択エ リアには,MoCap データリストの内容を表示し,MoCap データを選択するためのコン ボボックスを作成する.アニメーション表示エリアには,可視化された MoCap データ が表示される.アニメーション制御エリアには,アニメーションの再生,一時停止な どの操作を行うボタンなどを配置する. 4.2.2 MoCap データリストの読み込み MoCap データリストのファイルは,1 行に 1 つの MoCap データファイルのファイル パスをアスキー形式で記述する.読み込まれた MoCap データリストは改行で分割され, MoCap データ選択エリアのコンボボックスに配置し,選択できるようにする.コンボ ボックスの表示を,図 4 に示す. 4.2.3 ライブラリの初期化 ライブラリの初期化では Away3D の View3D クラス,Scene3D クラス,Camera3D ク ラスにより,3DCG を表示するための仮想 3 次元空間の作成,カメラの配置,などを 行う.またこのとき,視点の移動機能の作成も行う.視点の移動は仮想 3 次元空間に 配置したカメラの平行移動と仮想 3 次元空間に配置する物体の回転により行う.. 4. 3D ビューア 4.1 処理の流れ. 本 3D ビューアの処理の流れを,図 3 に示す.はじめに,本 3D ビューアが起動する と,ビューアの初期化が行われる.ここでは,画面の作成と,MoCap データリストの 読み込み,ライブラリの初期化などが行われる.MoCap データリストには,保持して いる MoCap データのファイルパスが記載されており,そのリストファイルを読み込む ことで MoCap データを選択できるようになる.次に,MoCap データが選択されると, MoCap データが解析される.MoCap データのファイルフォーマットに応じて,MoCap データの骨格の構造や,フレームデータの解析,可視化が行われ,3D ビューアでの再 生準備が行われる.MoCap データの可視化が完了すると,MoCap データの内容を再生 し,動作を閲覧することができるようになる.このとき,視点の変更や,早送りなど の再生制御を行うことができる. MoCap データリスト. 起動. ビューア 初期化 MoCap データ MoCap データ 選択エリア. MoCap データ選択. MoCap データ解析. アニメーション 表示エリア. 再生 視点変更 再生制御. アニメーション 制御エリア. 図 3 処理の流れ. 図 4 画面構成. 4. ⓒ2009 Information Processing Society of Japan.
(5) Vol.2009-DD-72 No.13 2009/7/31. 情報処理学会研究報告 IPSJ SIG Technical Report 4.3 MoCap データ解析. 表 1 実験環境. MoCap データ解析では,ビューアの初期化が終了したあと,MoCap データリストの 読み込み,MoCap データの骨格の構造や,フレームデータの解析,アニメーション表 示の準備を行う. 4.3.1 BVA 形式 4.2.2 項において選択された MoCap データが BVA 形式の場合,MoCap データ内に記 載されたすべてのセグメントを立方体で表現する.1 フレーム目における各セグメン トの x, y, z の位置と回転のデータを用いて仮想 3 次元空間に配置する.立方体の作成 は,Away3D ライブラリの Cube クラスを使用する.立方体の色は,それぞれのセグメ ントを判別するために,別々の色を設定し,それぞれの色はランダムに決定する.す べての立方体の大きさは,もっとも距離の離れた立方体の間に,ほかのすべての立方 体を表示することができる大きさに設定する. 4.3.2 BVH 形式 4.2.2 項において選択された MoCap データが BVH 形式の場合,HIERARCHY 部に記 載されている階層構造の通り,仮想 3 次元空間に直線を引く.直線の作成は,Away3D ライブラリの LineSegment クラスを使用する.このときの直線の位置,長さ,向きは, その階層の OFFSET の位置と,ひとつ上の階層の OFFSET の位置により決定する.直 線の色は,骨格を判別するためにランダムに決定する. 4.4 再生 MoCap データの読み込みが終了すると,MoCap データの動作を閲覧するためのアニ メーション表示を行う.アニメーションの表示は,現在の時刻の更新をし,MoCap デー タのその時刻の位置や角度データを用いて,空間内に配置された立方体や直線を移動, 回転させる.レンダリングにより,カメラから見た画像をアニメーション表示エリア に表示する.この処理を繰り返すことにより,アニメーション表示を行う. アニメーションの制御の再生,一時停止は上記の繰り返す処理を操作することによ り行う.任意の時刻への移動は現在時刻の更新時にその時の時刻を変化させることに より行う.. Web サーバ. クライアント PC. 要件. 詳細. OS. Mac OS X バーション 10.5.6. プロセッサ. 2x2.66GHz Dual-Core Intel Xeon. メモリ. 3GB 667MHz DDR2. Web サーバソフトウェア. Apache 2.2.9. OS. Windows XP Professional ServicePack3. プロセッサ. Pentium 4 CPU 3.20GHz. メモリ. 0.99GB. Web ブラウザ. Mozilla Firefox. Flash Player. Flash Player10. はじめに,本 3D ビューアの機能である,MoCap データの読み込み,視点の移動, アニメーションの制御などの操作を行うことができるか確認するため,MoCap データ を読み込み,機能の動作チェックを行った. 次に,MoCap データの内容が本 3D ビューアで表現することができているか確認す るために,磁気式 MoCap により収録されたデータを,BVA 形式,BVH 形式それぞれ に変換し,その時撮影された映像と差異がないか目視により比較する.実験データと して,ラジオ体操を行っている MoCap データを BVA 形式,BVH 形式にそれぞれ変換 したファイルを使用する. 5.3 実験結果および考察 実験の結果,MoCap データの読み込み機能,視点の回転,平行移動,拡大・縮小な どの視点の移動機能,アニメーションの再生,任意フレームへの移動などのアニメー ション制御機能を実装されていることを確認することができた.図 5 に,Web ブラウ ザ上に MoCap データを表示したスクリーンショットを示す. これにより,視点の回転操作により,現在の視点では見えづらい動きでも,視点を 変えて,より見やすい視点で見ることができるようになる.また視点の平行移動,拡 大・縮小により,動きが大きく,表示が画面からはみ出てしまった場合でも,動作を 見ることができる.また,特定の部位を注目して見るなどの操作も行うことができる. 特定のフレームの動作を繰り返し閲覧したいときなどは,アニメーションの制御機能 により行うことができる.これらの機能により,MoCap データの行っている動きを正 確に確認することができる. また,図 6 のように,実際に MoCap データを収録したときの映像と並べて比較する と,BVA 形式の表示では,立方体の位置が体の各部位と同じ場所に配置されている磁 気センサと合わせて同じように動いていることを確認できた.また,首を傾けたとき. 5. 動作実験および考察 5.1 実験環境. 開発した 3D ビューア,MoCap データリスト,MoCap データを Web サーバにアップ ロードし,LAN 上につながるクライアント PC の Web ブラウザより MoCap データの 再生閲覧を行う.表 1 に,Web サーバとクライアント PC の環境を示す. 5.2 実験方法 実験は,3D ビューアの機能動作実験と,MoCap データのアニメーション確認実験 の 2 種類を行った. 5. ⓒ2009 Information Processing Society of Japan.
(6) Vol.2009-DD-72 No.13 2009/7/31. 情報処理学会研究報告 IPSJ SIG Technical Report. 収録時映像. BVA 形式. BVH 形式. 図 6 ラジオ体操. 図 5 Web ブラウザでの表示 などにその部分に対応している立方体も傾いていることから,それぞれの部位の傾き も表現できている.同様に,BVH 形式の表示では,直線により同様のポーズをとって いることを確認することができ,アニメーションによってそれぞれの直線が映像と同 様に動いていることを確認することができた. これにより,BVA 形式,BVH 形式それぞれの形式のデータがどのような動きをし ているのか再生し,確認することができた.. 参考文献 1) 吉村ミツ, 酒井由美子, 甲斐民子, 吉村功: 日本舞踊の「振り」部分抽出とその特性の定量 化の試み, 電子情報通信学会論文誌 D-II, Vol.J84-DII, No.12, pp.2644-2653 (2001). 2) 三浦武, 水戸部一孝, 湯川崇, 海賀孝明, 谷口敏幸, 吉村昇: 舞踊動作データの因子分析に よる基本動作の抽出, 情報処理学会論文誌, Vol.49, No.9, pp.3302-3315 (2008). 3) 八村 広三郎: モーションキャプチャによる舞踊のデジタルアーカイブ, 情報処理学会研究 報告コンピュータビジョンとイメージメディア, CVIM-157-1, pp.1-8 (2007). 4) 湯川崇, 海賀孝明, 長瀬一男, 玉本英夫: 舞踊符による身体動作記述システム, 情報処理学 会論文, Vol.41, No.10, pp.2873-2880 (2000). 5) 玉本英夫, 湯川崇, 海賀孝明, 水戸部一孝, 三浦武, 吉村昇: 産学連携による民俗芸能伝承 のためのディジタルコンテンツ制作技術の開発, 電子情報通信学会誌, Vol.91, No.4, pp.303-308 (2008). 6) CMU Graphics Lab Motion Capture Database, http://mocap.cs.cmu.edu/ 7) ToMoLoW: TOYOHASHI MOTION LIBRARY on Web, http://tomolow.val.ics.tut.ac.jp/ 8) Web3D Dance Research Project, http://wd.motionlab.jp/ 9) Biovision BVA, http://www.cs.wisc.edu/graphics/Courses/cs-838-1999/Jeff/BVA.html 10) Biovision BVH, http://www.cs.wisc.edu/graphics/Courses/cs-838-1999/Jeff/BVH.html 11) 小島一成: モーションキャプチャ技術, 月刊ディスプレイ, Vol.12, No.4, pp.37-42 (2006). 12) Adobe Flex, http://www.adobe.com/products/flex/ 13) Away3D, http://www.away3d.com/ 14) ActionScript Technology Center, http://www.adobe.com/devnet/actionscript/. 6. おわりに 本研究では,Web ブラウザ上で容易に MoCap データを閲覧することができる Flash を利用した 3D ビューアの開発を試みた.3D ビューアの開発環境として Adobe Flex を,3D 描画のライブラリに Away3D を使用した.本 3D ビューアによって,インター ネット上で容易に MoCap データを 3 次元表示,閲覧することができるようになった. 今後の課題として,音楽や映像との同期再生が挙げられる.特に伝統芸能の舞踊な どの MoCap データは音楽があることにより,より動作の内容を理解することができ, デジタルアーカイブに有用であると考えられるからである. 謝辞 本研究にあたり,秋田大学吉村昇学長,同大学水戸部一孝准教授,三浦武講 師,ノースアジア大学の湯川崇教授にお世話になった.ここに記して感謝の意を表し たい.なお,本研究の一部は,平成 21 年度科学研究費補助金奨励研究(21921018),平 成 20~21 年度科学研究費補助金基盤研究(C)(20500084),および平成 21 年度総務省戦 略的情報通信研究開発制度(SCOPE)の支援によって実施した.. 6. ⓒ2009 Information Processing Society of Japan.
(7)
図
関連したドキュメント
め測定点の座標を決めてある展開図の応用が可能であ
ステップ 2 アプリに [installer] としてログインし、 SmartLogger の画面上で [ その他 ] > [ システム保守
絡み目を平面に射影し,線が交差しているところに上下 の情報をつけたものを絡み目の 図式 という..
ライセンス管理画面とは、ご契約いただいている内容の確認や変更などの手続きがオンラインでできるシステムです。利用者の
6-4 LIFEの画面がInternet Exproler(IE)で開かれるが、Edgeで利用したい 6-5 Windows 7でLIFEを利用したい..
前回ご報告した際、これは昨年度の下半期ですけれども、このときは第1計画期間の
北区無電柱化推進計画の対象期間は、平成 31 年(2019 年)度を初年度 とし、2028 年度までの 10
※各事業所が提出した地球温暖化対策計画書の平成28年度の排出実績が第二計画