Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hairyfotr/lumen

Drawing in augmented reality. [Microsoft Kinect, Vuzix Wrap 920AR]
https://github.com/hairyfotr/lumen

art augmented-reality kinect vuzix

Last synced: about 2 months ago
JSON representation

Drawing in augmented reality. [Microsoft Kinect, Vuzix Wrap 920AR]

Awesome Lists containing this project

README

        

--------------------------------------
LUMEN - Drawing in augmented reality
--------------------------------------
by Dominik Mahnič and Matic Potočnik
produced by: LJUDMILA
coproduced by: Computer Vision Laboratory, FRI

Hardware used:
Microsoft Kinect sensor (probably anything OpenNI-compatible goes)
Vuzix Wrap 920AR 3D glasses (tracker code is pretty hacky and hardcoded)

Software used:
OpenNI, OpenCV, OpenGL, ...

How to build?
Install these (OpenCV, Boost threads, OpenNI prereqs):
sudo apt-get install libcv-dev libopencv-dev libboost-thread-dev
sudo apt-get install realpath g++ python libusb-1.0-0-dev freeglut3-dev

Download OpenNI, SensorKinect, NITE Middleware:
OpenNI and NITE:
http://openni.org/Downloads/OpenNIModules.aspx
SensorKinect:
https://github.com/avin2/SensorKinect/tree/unstable/Bin

Now extract these and run sudo ./install in all three

Move the extracted OpenNI folder to lib/OpenNI (check src/Makefile)

Check if $arch in the run script is the right one for your linux.

OK, it should now build and start with ./run

Now what?
The code is ugly, and there are a lot of magical numbers for
you to play with, but the first one you'll want to set is
the angle correction around line 1000 - glasses heading
goes towards North, but should go towards Kinect.

TODO:
Driver for Vuzix Wrap 920AR (check wrap920AR/)
Major cleanup and modularization
Automatic Kinect-Tracker calibration
Try it out on different hardware
Saving and screenshots
Better graphics (use a game engine perhaps)

License stuff:
Yeah, we should get this in proper order.
It's LGPL, like the DCM algorithm we used,
and the OpenNI example we built this upon.