【OpenNI】Xtionのデバイス情報

下記、SensorInfoのdumpです。

PS1080は、PrimeSense社のSoCです。

 

[notice ] [1] PS1080 [PrimeSense] (1d27/0600@253/5)

 

[notice ] ==== IR SENSOR ====

[notice ] FPS=30,X=320 Y=240 PixcelFormat=Grayscale 16-bit

[notice ] FPS=30,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=60,X=320 Y=240 PixcelFormat=Grayscale 16-bit

[notice ] FPS=60,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=30,X=640 Y=480 PixcelFormat=Grayscale 16-bit

[notice ] FPS=30,X=640 Y=480 PixcelFormat=RGB 888

[notice ] FPS=30,X=1280 Y=1024 PixcelFormat=Grayscale 16-bit

[notice ] FPS=30,X=1280 Y=1024 PixcelFormat=RGB 888

[notice ] FPS=25,X=320 Y=240 PixcelFormat=Grayscale 16-bit

[notice ] FPS=25,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=25,X=640 Y=480 PixcelFormat=Grayscale 16-bit

[notice ] FPS=25,X=640 Y=480 PixcelFormat=RGB 888

[notice ] [1] PS1080 [PrimeSense] (1d27/0600@253/5)

 

[notice ] ==== COLOR SENSOR ====

[notice ] FPS=30,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=30,X=320 Y=240 PixcelFormat=YUV 422

[notice ] FPS=60,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=60,X=320 Y=240 PixcelFormat=YUV 422

[notice ] FPS=30,X=640 Y=480 PixcelFormat=RGB 888

[notice ] FPS=30,X=640 Y=480 PixcelFormat=YUV 422

[notice ] FPS=25,X=320 Y=240 PixcelFormat=RGB 888

[notice ] FPS=25,X=320 Y=240 PixcelFormat=YUV 422

[notice ] FPS=25,X=640 Y=480 PixcelFormat=RGB 888

[notice ] FPS=25,X=640 Y=480 PixcelFormat=YUV 422

[notice ] FPS=30,X=1280 Y=1024 PixcelFormat=RGB 888

[notice ] FPS=30,X=1280 Y=1024 PixcelFormat=Grayscale 8-bit

[notice ] [1] PS1080 [PrimeSense] (1d27/0600@253/5)

 

[notice ] ==== DEPTH SENSOR ====

[notice ] FPS=30,X=320 Y=240 PixcelFormat=1 mm

[notice ] FPS=30,X=320 Y=240 PixcelFormat=100 um

[notice ] FPS=60,X=320 Y=240 PixcelFormat=1 mm

[notice ] FPS=60,X=320 Y=240 PixcelFormat=100 um

[notice ] FPS=30,X=640 Y=480 PixcelFormat=1 mm

[notice ] FPS=30,X=640 Y=480 PixcelFormat=100 um

[notice ] FPS=25,X=320 Y=240 PixcelFormat=1 mm

[notice ] FPS=25,X=320 Y=240 PixcelFormat=100 um

[notice ] FPS=25,X=640 Y=480 PixcelFormat=1 mm

[notice ] FPS=25,X=640 Y=480 PixcelFormat=100 um

 

 

【OpenNI】OSX9 + NiTE2.2 + OpenNI 2.2 + OpenFrameworks 0.8 + Xtion

Open NIを大分使っていなかったのですが思い切って新しいのに切り替える事にします。

いつのまにかOpenNiもNiteも2になってました。

2用にライブラリも作ろう。

 

【preparation】

Open Ni2.2 / Nite2.2 / of0.8 /marvericで行いました。

※macport使います。brewでもOK。

 

まず、port installedでパッケージ確認

sudo port install libtool

sudo port install libusb +universal (もしエラーが出れば、sudo port selfupdateをしてみる)

 

NiTE-2.2のinstall

./install.shを実行すると下記が出来る。

NiTEDevEnvironment

Registフォルダ

 

・OpenNI-2.2のinstall

./install.shを実行すると下記が出来る。

OpenNIDevEnvironment

Registフォルダ

 

・OpenNIDevEnvironment、NiTEDevEnvironment のファイルの内容をユーザーhomeの.bashprofileに追記。

export OPENNI2_INCLUDE=/Users/jiropost/dev/OpenNI-2.2/Include

export OPENNI2_REDIST=/Users/jiropost/dev/OpenNI-2.2/Redist

export NITE2_INCLUDE=/Users/jiropost/dev/NiTE-2.2/Include

export NITE2_REDIST64=/Users/jiropost/dev/NiTE-2.2/Redist

 

 

・binにNiTE-2.2/Regist OpenNi2.2/Registからファイルをコピー

スクリーンショット 2014-01-30 9.55.43

 

 

 

 

 

 

・Targets > Build Settings のHeader Search Pathと、Library Pathに下記を追加。

NiTE-2.2/Regist

OpenNi2.2/Regist

 

・Targets > Build PhasesのLink Binary With Librariesに下記を追加

libNiTE2.dylib

libOpenNI2.dylib

 

・一度ビルドして、アプリケーションパッケージを右クリックして

パッケージを開くを選択する

Contents > MacOS以下に $(SRC_ROOT)/bin/以下のライブラリ等をコピーする。

ユーザートラッキングするときに./Nite2/s.datがないといわれて

しまいます。ビルド時の設定でなんとかできないんでしょうか。

nite::NiTE::initialize();

nite::UserTracker userTracker;

     userTracker.create()    ここでエラー

スクリーンショット 2014-01-30 18.09.16

 

 

・以下テストアプリ

 

#include “testApp.h”

#include <OpenNI.h>        <-  TARGETSのほうにincludeしたので#include “OpenNI.h”変えましょう。

//————————————————————–

void testApp::setup(){

openni::Status rc = openni::STATUS_OK;

openni::Device device;

openni::VideoStream depth, color;

const char* deviceURI = openni::ANY_DEVICE;

rc = openni::OpenNI::initialize();

printf(“After initialization:\n%s\n”, openni::OpenNI::getExtendedError());

rc = device.open(deviceURI);

if (rc != openni::STATUS_OK)

{

printf(“SimpleViewer: Device open failed:\n%s\n”, openni::OpenNI::getExtendedError());

openni::OpenNI::shutdown();

return 1;

}

 

ライブラリは又今度

good luck,

OS X 9 + ofxGstreamerを使う

Marveric + XCode5  + of0.8 + ofxGstreamerを使います。

 

・gstreamer インストール

https://github.com/arturoc/ofxGStreamerを参照し、このサイト(http://gstreamer.freedesktop.org/data/pkg/osx/)からをpkgをインストール。

 

gstreamer-1.0-1.2.2-universal.pkg 

gstreamer-1.0-devel-1.2.2-universal.pkg

gstreamer-1.0-1.2.1-universal-packages.dmg

 

/Library/Frameworks/GStreamer.framework以下に色々ファイルがインストールされます。

 

※ gstreamer-1.0-1.2.1-universal-packages.dmg のなかで下記のパッケージをインストール。

gstreamer-1.0-libav-1.0.8-universal.pkg
gstreamer-1.0-codecs-restricted-1.0.8-universal.pkg
gstreamer-1.0-net-restricted-1.0.8-universal.pkg

 

・openFrameworksワークスペースのHeaderSearch PathとFramework Pathを変更

header path

/Library/Frameworks/GStreamer.framework/Versions/Current/Headers

Framework path

/Library/Frameworks/GStreamer.framework

 

・new PGを使えば何もしなくてよいかもですが、私は手動でopenframeworksのプロジェクトにファイルをコピーしました。要するにaddon_config.mk相当の事が必要です。

スクリーンショット 2014-01-27 20.55.30

 

 

 

 

 

 

 

 

 

ofGstUtils.cpp/h

ofGstVideoGrabber.cpp/h

ofGstVideoPlayer.cpp/h

 

・Gstreamer.Frameworksをプロジェクトdrag&dropします。【※追記】

スクリーンショット 2014-01-29 10.37.57

 

 

 

 

 

 

 

 

・/Library/Frameworks/GStreamer/Headers/assert.hはリネームする【※追記】

ofxOpenCV等と一緒にビルドすると、エラーになりました。

こちらassert.h_等にリネームしておきます。

 

アプリは下記のようになります。

void testApp::setup(){

player.setPlayer(ofPtr<ofGstVideoPlayer>(new ofGstVideoPlayer));

player.loadMovie(“out.mp4”);

}

 

//————————————————————–

void testApp::update(){

    player.update();

}

 

//————————————————————–

void testApp::draw(){

    ofSetHexColor(0xFFFFFF);

    player.draw(0,0);

}

 

以上です。

good luck,

 

 

【Raspberry Pi】SDをバックアップする & SDへの書き出し

【OS X】

・SDカードをMACにさし、SDカードのマウントポイントをチェック

#mount

すると、/dev/disk1s1とかでマウントされている。

 

・丸ごとバックアップする為にunmountする

$sudo diskutil unmountDisk /dev/disk2

 

・SDカードをバックアップ

#sudo dd bs=1m if=/dev/disk2 of=./sf_1110.img

 

・SDにイメージを書き出し

#sudo dd bs=1m if=./sf_1110.img of=/dev/rdisk3

・書き出しが完了後RPiにカードを差し電源ONでboot.

good luck.

 

 

【Raspberry Pi + OF】shaderを使う時の注意点

OFでgl/shaderサンプルを動かしたら動かなかった。

下記を追加して動作OKでした。

good luck ,

 

・main.cppに追記

 

#include “ofMain.h”

#include “testApp.h”

#include “ofGLProgrammableRenderer.h”

//========================================================================

int main( ){

    ofGLProgrammableRenderer * renderer = new ofGLProgrammableRenderer();

    ofSetCurrentRenderer(ofPtr<ofBaseRenderer>(renderer));   // switch to GLES2 renderer.

ofSetupOpenGL(1280, 720, OF_WINDOW);// <——– setup the GL context

 

// this kicks off the running of my app

// can be OF_WINDOW or OF_FULLSCREEN

// pass in width and height too:

ofRunApp( new testApp());

}

 

 

【Raspberry Pi】openFrameworksのaddonを追加する

Raspberry PiでOFをaddonを追加する。

ここでは例として、ofxTrueTypeFontUCをインストールする。

#cd (YOUR_OF_PATH)/openFrameworks/addon

#git clone https://github.com/hironishihara/ofxTrueTypeFontUC.git

 

・空のプロジェクトを作成

#cp (YOUR_OF_PATH)/openFrameworks/apps/myApps/emptyExample  (YOUR_OF_PATH)/openFrameworks/apps/myApps/(NEW_APP)

#cd (NEW_APP)

#vi addons.make

————————————–

ofxOpenCv

ofxTrueTypeFontUC

————————————–

 

・画像データ/フォント(.ttf .otf)等がある場合は bin/dataへコピー

#cd (YOUR_OF_PATH)/openFrameworks/apps/myApps/(NEW_APP)/bin

#mkdir data

#cp ~/image.jpg data

 

・プロジェクトをビルド

#make

 

・実行して確認

#make run

 

good luck.