pixelnerve / blockopenni Goto Github PK
View Code? Open in Web Editor NEWA c++ wrapper for OpenNI.
A c++ wrapper for OpenNI.
Block OpenNI ------------ A C++ wrapper for OpenNI 2011-06-20: This block is going through heavy remake and so old code/methods are mixed with new methods for the moment. I will be changing the way things are handled at the moment when i'm finished. All for better support on multiple devices. Basic description ----------------- Support for several generators as Image, IR, Depth and User. Skeleton tracking is also supported. How to use ---------- You need to install the sensor drivers, OpenNI and NITE. Note! PrimeSense drivers do not work with the Kinect. So here's a step-by-step installationg guide: (The links you'll find here are the latest unstable at the time of writing) OpenNI 1.3.2.3 Nite 1.4.1.2 SensorKinect 5.0.3.4 Windows 32bit: -------------- Download/Install OpenNI: http://openni.org/downloadfiles/opennimodules/openni-binaries/latest-unstable/163-openni-unstable-build-for-windows-x86-32-bit-v1-3-2/download Download/Install Avin2's SensorKinect: https://github.com/avin2/SensorKinect/blob/unstable/Bin/SensorKinect-Win-OpenSource32-5.0.3.4.msi Download/Install NITE: http://openni.org/downloadfiles/opennimodules/openni-compliant-middleware-binaries/latest-unstable/177-primesense-nite-unstable-build-for-windows-x86-32-bit-v1-4-1/download At this moment you should now be able to run the samples in OpenNI. Go to OpenNI's folder and browse to /Samples/Bin/Release. Run NiViewer.exe. You should now be looking at a window with the RGB and Depth feed coming from the kinect MacOSX 32bit: ------------- 1) Download/Install MacPorts (Snow Leopard 10.6) https://distfiles.macports.org/MacPorts/MacPorts-2.0.0-10.5-Leopard.dmg (Lion 10.7) https://distfiles.macports.org/MacPorts/MacPorts-2.0.0-10.7-Lion.dmg 2) Open the terminal, install libtool/libusb. 2.1) Type and run: sudo port install libtool 2.2) Type and run: sudo port install libusb-devel +universal 3) Download/Untar OpenNI http://openni.org/downloadfiles/opennimodules/openni-binaries/latest-unstable/162-openni-unstable-build-for-macosx-10-6-universal-x86x64-3264-bit-v1-3-2/download 3.1) Open the terminal, goto openni's folder you just untar'ed. 3.2) Type and run: sudo ./install.sh 4) Download Avin2's SensorKinect https://github.com/avin2/SensorKinect/blob/unstable/Bin/SensorKinect-Bin-MacOSX-v5.0.3.4.tar.bz2 4.1) Open the terminal, goto SensorKinect's folder you just untar'ed. 4.2) Type and run: sudo ./install.sh 5) Download NITE http://openni.org/downloadfiles/opennimodules/openni-compliant-middleware-binaries/latest-unstable/176-primesense-nite-unstable-build-for-macosx-10-6-universal-x86x64-3264-bit-v1-4-1/download 4.1) Open the terminal, goto NITE's folder you just untar'ed. 4.2) Type and run: sudo ./install.sh At this moment you should now be able to run the samples in OpenNI. Go to OpenNI's folder and browse to /Samples/Bin/Release (use terminal). Run ./NiViewer. You should now be looking at a window with the RGB and Depth feed coming from the kinect Linux: Check Avin2's SensorKinect repo (@github) for more information.
While Trying to compile BlockOpenNISkeleton I run across the following errors:\
$(CINDER_PATH)/blocks/BlockOpenNI/src/VOpenNIDevice.cpp:1693: error: no matching function for call to 'xn::Context::CreateProductionTree(xn::NodeInfo)'
$(CINDER_PATH)/blocks/BlockOpenNI/include/OpenNI/XnCppWrapper.h:4811: note: candidates are: XnStatus xn::Context::CreateProductionTree(xn::NodeInfo&)
This error occurs on lines 1713, 1733, and 1753 as well.
Also, there is an error regarding std::exception::exception()
and not being able to pass a string to it.
$(CINDER_PATH)/blocks/BlockOpenNI/src/VOpenNIDevice.cpp:1782: error: no matching function for call to 'std::exception::exception(const char*)'
/Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/exception:59: note: candidates are: std::exception::exception()
/Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/exception:57: note: std::exception::exception(const std::exception&)
I don't know if these are because you moved to Xcode 4 but I am currently unable to run xcode 4 on my primary development environment.
Any help is appreciated.
These lines:
mColorTex.update( getColorImage() );
mDepthTex.update( getDepthImage24() ); // Histogram
Produce this error:
Call to member function "update" is ambiguous.
In the latest Cinder. Is it supposed to work against some older Cinder version only? It seems that Cinder's Textures do not accept ImageSourceRef in their update method anymore.
While running BlockOpenNISkeleton with XML file everything works fine, when I try to create device with
_device0 = _manager->createDevice( V::NODE_TYPE_IMAGE | V::NODE_TYPE_DEPTH | V::NODE_TYPE_USER );
I get runtime error (EXC_BAD_ACCESS) in gen->GetMapOutputMode( mode ); (in OpenNIDevice::setResolution)
so I've decided to use xml file for this example, but now I am trying to run MultipleKinects and I get the same error in GetMapOutputMode. I was trying to init kinects from XML files
mDevice0 = mManager->createDevice( "configIR1.xml", true );
mDevice1 = mManager->createDevice( "configIR2.xml", true );
and it seems first kinect is initializing properly but on second I get :
(Device) Error! XN_STATUS_USB_SET_INTERFACE_FAILED
[OpenNIDeviceManager] Couldn't create device from xml
[OpenNIDeviceManager] Device '1' is not available
any help on this one??
did you change the line on purpose?
old:
if( !_isUserOn && allocUserIfNoNode )
new (apr-05):
if( _isUserOn && allocUserIfNoNode )
after updating to your latest version i couldn't get user detection anymore
changed the line back & it worked again
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.