2012年1月23日月曜日

AR.Drone + NyARToolkit for Processing (その1)

AR.Droneから取得したカメラ画像を,NyARToolkit for Processingを使って,3Dモデルをオーバーレイ表示する方法について

今回は,AR.Droneというおもちゃを使って,3DモデルをAR表示してみたので,その手順を書く.

AR.Droneとは,フランスのParrot社が開発したリモコンヘリのおもちゃである.

値段は3万くらいと,おもちゃにしてはそれなりの額だが,できることは多い.

特徴は,

  • iPhone, iPad, iPod nano で操縦できる
  • AR表示ができる
といったところ.

みんながみんなAppleの商品を持っているわけではないので,今回は普通のPCでやることを想定.

Wi-Fiを使用したアドホック通信なので,無線LANが内蔵しているノートPCなどでも操作が可能.

詳しいことは,工学ナビさんなどを見ると良いと思う.非常にわかりやすく解説している.


今回はこのAR.Droneを使ってみようという試み.

しかし,普通にAR.Droneのコードを使うと難しいようなので,今回は,AR.DroneをProcessingで制御することにした.

Processingだと,比較的簡単にソースコードが書けるらしい.また,Processingが動く環境であれば,どこでも実行できるというメリットもある.


主に準備するのは,以下のもの
  •   ARDroneForP5(AR.Droneを制御するためのProcessing用のライブラリ)
  • NyARToolkit for Processing(AR表示するためのツールキット)
  • Processing
  • 3Dモデル(今回は,obj形式のモデルを使用した)
  • マーカー(ARでおなじみのマーカー.いくつか用意しておくと楽.)
実行環境は,Windows7搭載のノートPC.

ネットを調べても,断片的な情報しかでてこないので,もうちょっと具体的に記述していこうと思う.

  1. Processingのインストール
  2. NyARToolkit for Processingのインストール(以前書いた,NyARToolkitの項を参照)
  3. ARDroneForP5のインストール(ただ単に落としてきたフォルダをスケッチフォルダに突っ込むだけ)
  4. Processing用のobjローダをダウンロード,所定の位置にファイルを配置

おおざっぱな流れはこんな感じ.

どのソースコードをメインにしていくかは任意だが,今回はNyARToolkitに付属のサンプルの中にある,"simpleLight"をベースに作っていくことにした.

この"simpleLight"に,制御のプログラムARDroneForP5を突っ込む.Codeフォルダに.jarファイルをつっこみ,あとはソースコードに追加の記述をするだけ.

追加に使用したARDroneForP5のソースコードはサンプルにあった,"ARDroneForP5_Sample"のコード.

この統合が終わったら,最後にobjローダの記述を追加して,3Dモデルを表示できるようにしておく.

詳しいソースコードなどは,また次回.

今回はここまでで.











0 件のコメント:

コメントを投稿