Top > SpaceDrawing

Kinect

OpenNI

ということでKinectを買って,libfreenectを試してみました。

  • 参考: https://github.com/OpenKinect/libfreenect
  • コンパイル用のディレクトリを作ってそこをworking directoryにする。
  • libusb1.0 をダウンロードしてパッチをあててからmake,インストールする
  • cd libfreenect
    • cmake . ; make ; sudo make install
    • cd examples
    • cp ../include/* . (実は/usr/local/include/libfreenectに必要なインクルードファイルがコピーされているので,-I/usr/local/include/libfreenectをmakefileに追加してもいい)
    • cmake . ; make ; sudo make install
  • glview を走らせる。
    • usblibからアホほどデバッグメッセージが出るので,fprintf, vprintfを探してコメントアウトしました。 screenkinect.png

depthJS

  • https://github.com/doug/depthjs
  • OpenCV はインストールする。
  • 0MQの準備が要る。"$ sudo port install zmq" でよし
  • cv (Makefileを以下のようにして make )
    CC=g++
    CFLAGS=-c -Wall -I/opt/local/include -I/opt/local/include/opencv -I/usr/local/include/libusb-1.0 -I/usr/local/include/libfreenect 
    LDFLAGS=-L/usr/local/lib -lusb-1.0 -L/opt/local/lib -lzmq -lcxcore -lcv -lcvaux -lhighgui -lfreenect -lml
    SOURCES=ocv_freenect.cpp bg_fg_blobs.cpp
    OBJECTS=$(SOURCES:.cpp=.o)
    EXECUTABLE=ocv_freenect
    
    all: $(SOURCES) $(EXECUTABLE)
    
    $(EXECUTABLE): $(OBJECTS)
            $(CC) $(LDFLAGS) $(OBJECTS) -o $@
    
    .cpp.o:
            $(CC) $(CFLAGS) $< -o $@
    
    clean:
            @rm -rf $(EXECUTABLE)
            @rm -rf *.o
  • ocv_freenectを実行
  • screenocv.png
  • backend (pythonスクリプト)
    • 0MQ(zmq)のpython moduleのインストール
      • http://www.zeromq.org/bindings:python
      • pyzmq-2.0.10.tar.gz をダウンロードして展開
      • sudo easy_install cython
      • cd pyzmq-2.0.10
      • cp setup.cfg.template setup.cfg
      • setup.cfgを以下のように編集
        library_dirs = /opt/local/lib
        include_dirs = /opt/local/include
      • sudo python setup.py install
    • backendのディレクトリで python backend.pyを実行
  • chrome-extension
    • google chromeを立ち上げて,「ウィンドウ」>「拡張機能」>「パッケージ化されていない拡張機能を読み込みます」
    • chrome-extensionのフォルダを選択 screenchrome.png
    • 拡張機能が有効になると右上の"d"のアイコンを右クリックして Kinectに接続
    • コンテンツの左下の"d"アイコンを右クリックして要素を検証するとその時のポジションなどの要素を確認出来る screendoug.png
    • 大きな青い円形が認識の印。手のひらを開いて閉じる,急速に上下に移動するぐらい

添付ファイル: filescreendoug.png 40件 [詳細] filescreenchrome.png 37件 [詳細] filescreenocv.png 40件 [詳細] filescreenkinect.png 39件 [詳細]

リロード   新規 下位ページ作成 凍結解除 差分 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Fri, 17 Dec 2010 15:54:18 JST (2532d)