Kinect on Ubuntu 10.10 Maverick (for SSE2 CPU)

That's how I got the Kinect working on my Ubuntu 10.10 (tested again with a fresh installation of Ubuntu). This is based on an article by trtg at keyboardmods.com. I had to supply SSE_GENERATION=2 flags multiple times because my CPU does not support the SSE3 extension but only SSE2 used by default. If your CPU is newer than mine, then see the next post.

First install the necessary packages:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git-core build-essential libusb-1.0.0-dev libglut3-dev doxygen graphviz

Download and install the OpenNI drivers:

cd ~/kinect
git clone https://github.com/OpenNI/OpenNI.git
cd OpenNI/Platform/Linux-x86/Build
make SSE_GENERATION=2
sudo make install

Download and install the Kinect specific part of the OpenNI driver:

cd ~/kinect
git clone https://github.com/boilerbots/Sensor.git
cd Sensor
git checkout kinect
cd Platform/Linux-x86/Build
make SSE_GENERATION=2
sudo make install

Download and untar the NITE framework:

cd ~/kinect
wget http://www.openni.org/downloadfiles/openni-compliant-middleware-binaries/stable/54-primesense-nite-beta-build-for-for-ubuntu-10-10-x86-32-bit-v1-3-0/download -O nite_ubuntu_x86.tar.bz2
tar xvjf nite_ubuntu_x86.tar.bz2

You have to modify a few files and add the Primesense key (which is free to use)

cd ~/kinect/Nite-1.3.0.17/Data

cp Sample-User.xml Sample-User.xml.BAK && chmod u+w Sample-User.xml && sed "s/insert key here/0KOIk2JeIBYClPWVnMoRKn5cdY4=/" Sample-User.xml.BAK | sed "s%xRes="[0-9]*" yRes="[0-9]*"%xRes="640" yRes="480"%" >Sample-User.xml
cp Sample-Scene.xml Sample-Scene.xml.BAK && chmod u+w Sample-Scene.xml && sed "s/insert key here/0KOIk2JeIBYClPWVnMoRKn5cdY4=/" Sample-Scene.xml.BAK | sed "s%xRes="[0-9]*" yRes="[0-9]*"%xRes="640" yRes="480"%" >Sample-Scene.xml
cp Sample-Tracking.xml Sample-Tracking.xml.BAK && chmod u+w Sample-Tracking.xml && sed "s/insert key here/0KOIk2JeIBYClPWVnMoRKn5cdY4=/" Sample-Tracking.xml.BAK | sed "s%xRes="[0-9]*" yRes="[0-9]*"%xRes="640" yRes="480"%" >Sample-Tracking.xml

sudo niLicense PrimeSense 0KOIk2JeIBYClPWVnMoRKn5cdY4=

We make a modified copy of the install script that compiles NITE for older CPUs supporting only SSE2 (default would be SSE3) and compile and install:

cd ~/kinect/Nite-1.3.0.17
sed "s/^make$/make SSE_GENERATION=2/" install.bash >install_sse2.bash
chmod 555 install_sse2.bash
sudo ./install_sse2.bash

You have to enter the key
0KOIk2JeIBYClPWVnMoRKn5cdY4=
again.

Now checkout the examples in the directory

cd /home/ubuntu/kinect/Nite-1.3.0.17/Samples/Bin/

2 thoughts on “Kinect on Ubuntu 10.10 Maverick (for SSE2 CPU)”

Leave a Reply