Coder Social home page Coder Social logo

pyopenni's Introduction

PyOpenNI

Introduction

PyOpenNI is a project integrating the OpenNI computer vision library on Python.
It is based on onipy but adds many improvements to it:

  • Implemented more features.
    • Some capabilities are now exposed!
    • Polymorphism on production nodes is handled correctly.
  • Removed unnecessary OpenNI prefixes.
  • Uses CMake, the popular cross-platform buildsystem, to configure & compile the bindings.
    This way, it autodetects needed libraries and warns you if they're not found.
  • Code cleanup and formatted according to PEP 8 rules.
  • Directory structure simplified.
  • Errors are handled gracefully through the class OpenNIError.
  • Re-wrote wrapper's core to make it more robust and avoid crashes.
    • New! Access depth map efficiently! See the commit for details.
  • Callbacks are now completely supported!
  • Some exposed features are now documented in Python.

PyOpenNI is written with the Boost.Python libraries. PyOpenNI is released under the GNU LGPL version 3.

Note: Currently, not all features are being exposed to Python (see the status page). We are working to add more, but if you want to accelerate this process you're encouraged to collaborate. Contact me if you wish to help develop PyOpenNI. See the github page if you want to submit a bug or a feature request. Thanks!

Quick install

Things you'll need:

  • GIT to download
  • OpenNI and Python (obviously)
  • CMake
  • A compiler for your platform (GCC, XCode, VS, MinGW, ...)

Then, assuming Git and CMake are installed and in your PATH:

git clone https://github.com/jmendeth/PyOpenNI.git
mkdir PyOpenNI-build
cd PyOpenNI-build
cmake ../PyOpenNI
# Build with your compiler

That's it! The finished module is at lib/openni.<ext>; just copy it to your Python modules' directory.

Instructions for specific platforms can be found on the wiki.
Still in trouble? Signup on Github (it's free!) and ask for support.

Getting started

To import the module:

import openni

and, if you prefer, you can also

from openni import *

so you don't have to type this annonying openni. before the class names.
To get started, I suggest you to see the samples at the examples/ folder. And, to look at the documentation of PyOpenNI:

help(openni)              #Help about the whole module
help(openni.Context)      #Help about a specific class
help(openni.Context.init) #Help about a specific function

pyopenni's People

Contributors

andyli avatar aostanin avatar mildsunrise avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.