= 最初の目標は何か = やりたいこと:備忘録 * PCをつかって、USBカメラ画像取得 * AR マーカーを認識したときに何らかのモデルを表示 * 別に作成した 3D オブジェクトを表示 * 複数マーカーに対応 こんな順番か。 この後で * ハードウェアとの連携 * EPICS との連携 * 性能評価 あたりを追加していく。 = それを実現するのに必要なモノは? = 最初のソフトウェア選定は重要。途中で乗り換えることもできるが、この業界での流行がどうなっているのかを調査することからはじめて、 できれば流れに乗りたい。単なる流行というよりは、Webで得られる情報の多さ、コミュニティの活発さが重要。 * ハードウェア * 最初はノートPCと、付属のカメラで十分 * Kinect はいろいろできて面白そうだが、無くても良さそう * 大部分のカメラは 30 fps が最大。本当はもうちょっと欲しいが、今後の検討項目とする * 60 fps 対応の USB3.0/IEEE1394の製品とか、世の中にはあるけれどお値段が... * HDMIのキャプチャカード(デバイス)とか、いずれは検討する。ビデオカメラの 1980x1024 60i とか。PCの能力も必要になる * ソフトウェア * ARToolkit の状況 * フリー(GPL)版あり http://www.hitl.washington.edu/artoolkit/ * 有償版もあるが、今回は見送り * 検索した限りではこれをベースにしたものがデファクトのように思える * 画像処理、プログラミング環境 * ARToolkit+ OpenGL を使えば、自前でいろいろできる * 「とりあえず入門用」とするならば、これでは手間がかかりすぎる。OpenGLを直接いじるのは避けたほうが無難だろう。 * 現状では“Processing”が開発の活発さからみて良さそう。https://www.processing.org/ * NyARToolkit は各種言語対応していて APIも使いやすそうに思える。Processingにも対応している。http://nyatla.jp/nyartoolkit/wp/ * 今後を考えると OpenCV も考慮する * 3Dオブジェクト * 作成するソフトはいろいろある * Shade, Cinema4D, 6角大王, メタセコイア, Blender, Lightwave3D などなどなど(比較はgoogleで検索して自分に合ったものを選択) * ファイル形式もいろいろある * 3DS(Autodesk), OBJ (wavefront OBJ), VRML, X3D, DXF, STL などなどなど * で、どれが良いの? * 今回、独断と偏見 Processing + ARToolkitで取扱いがしやすい Wavefront OBJ を最初に使う。 * 参考 * [http://kougaku-navi.net/ 工学ナビ http://kougaku-navi.net/] * [http://www.atmarkit.co.jp/fjava/column/andoh/andoh49.html Java技術者も知っておきたい「AR(拡張現実)」]ちょっと前の記事