LoginSignup
8
8

More than 5 years have passed since last update.

JavaでAR.Droneを動かす

Posted at

調べた限り、AR.Drone2.0にも対応しているライブラリではjavadroneが良さそう。New BSDライセンス。

Java用APIとAndroidでAR.Droneを動かすサンプルが入っている。

動かすためには以下のものをインストールして

後は、

mvn install
mvn eclipse:eclipse

をし、Eclipse用プロジェクトファイルを作成。
Eclipseで生成したProjectを開き、ControlTowerクラスを実行するとサンプルプログラムが動く。

この時、ビルド用にM2_REPO=~/.m2/repositoryとパスを設定する必要がある。

参考: https://code.google.com/p/javadrone/wiki/BuildInstructions

OpenCVとともに使う

まずはOpenCVをインストールして、それをJava用にWrapしてくれているJavaCVを使う。

ちなみにJavaCVはOpenCVだけでなく、FFmpeg, libdc1394, PGR FlyCapture, OpenKinect, videoInput, ARToolKitPlusのラップもしてくれるので、これらを使いたい人は各ライブラリをインストールした状態であればJavaから使えるようになる。

参考:FaceDetectionして、顔を追わせるサンプル

補足:何でJava?

まず、C++のSDKそのままは使うの苦労しすぎる。

SDKを少し使いやすくしたC++用ライブラリも複数あるのだが、Visual C++を前提にしていてMacでどうするよ?となったり、makeしてもインストール出来なく、ユーザーも少ないせいで簡単には解決法が見つからないということが起きる。

ちょっと飛ばすだけなら、Processing(ARDroneForP5)が簡単だが、ProcessingはOpenCVのラッパが基本的な部分だけしかラップされてないのでOpenCV連携がきつい。

Python(python-ardrone)もホントに飛ばすことしか出来ない。しかも依存しているライブラリが結構古く、pipなどで入らなくてめんどくさい。

などなど色々試しているうちにJavaに落ち着いた。特に、複数人で開発するなら、皆がある程度の労力で動かせるところまで持ってけるっていうのはとても大切だと思う。

8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8