5分もかからない拡張現実

2010年 05月 27日3:40 pm @ 友兼 亜樹彦

1


5分もかからない拡張現実

ReadWriteWebCode-Free Augmented Reality in Under 5 Minutes [VIDEO]という記事がしょうかいされていたので、やってみました。

使用する開発環境(とあえて言っておく)は、

です。

はじめる前に

まず、Quartz Composerにプラグインをインストールする必要があります。

http://y30.net/pg/plugins/qc/

上記、URLより以下のソースコードをダウンロードします。

  • SingleMarkerDetector
  • MatrixToParams

SingleMarkerDetectorは、ARToolKitを使ってカメラから取り込んだ映像からあるパターンの角度や位置座標を出力するオブジェクト。

MatrixToParamsは、SingleMarkerDetectorが出力するマトリクス情報を、XYZのアングルと位置に分解して出力してくれるオブジェクトです。

ダウンロードできるファイルはXcodeプロジェクトになっているので、Xcodeで開き、アクティブな構成をReleaseに、アクティブターゲットをBuild & Copyにしてビルドします。

ビルドの設定

これで、Quartz ComposerのPluginsフォルダにコピーされ使える状態になります。

さっそく拡張現実

準備が整ったので、さっそく拡張現実します。

Quartz Composerを開き、カメラの映像を取り込むVideo Inputと、それを表示するBillboardを配置し接続します。

次に、カメラから得られる情報からある図形をトラッキングするためにSingleMarkerDetectorを配置し、トラッキングした情報をQuartz Composerの3Dオブジェクトをコントロールするために都合の良い形に変換するMatrixToParamsを配置し接続します。

これでAngleXYZとTranslationXYZが得られるので、3D Transformationを配置し、それぞれ対応するインプットに接続します。

あとは、Quartz Composerの流儀にしたがって3Dオブジェクトを設定していくだけです。

やってみて

QuartzComposerは3Dのオブジェクトの扱いが非常に容易なので、一度実践してみると応用パターンがいろいろ思い浮かび、楽しいことが出来そうです。

SingleMarkerDetectorには、トラッキングできる画像パターンが2種類あります。(パターンについてはソースコードの中にPDFが入っています。)

二つのパターンを使い、それらの関連性を利用したもの(例えば2つのパターンの中間に揺れ動くオブジェクトを浮遊させるような)や、得られるパラメータを利用してパーティクルをコントロールするなど、ぱっとした思いつきでも夢が広がりました。

ReadWriteWebで紹介されているムービーはこちら

(via:http://www.readwriteweb.com/archives/code-free_augmented_reality_in_under_5_minutes_video.php)

Related posts:

  1. 最適化された世界 (後編)
  2. 先日のTwitterに投稿さけするスクリプトをbit.lyに対応させてみた。
  3. CUIのTwitterクライアントを作ってみた(効果的にTLを取得して、かつ呟いてみる)
  4. Max/MSP, Jitterでリアルタイムに映像と音声を加工してUstreamに流す方法(イントロダクション)
  5. Make Tokyo Meeting 05でギターシンセサイザーを展示

About the Author

友兼 亜樹彦 は 合同会社アライアンス・ポート、テクニカルディレクタ。