Difference between revisions of "PCL/OpenNI tutorial 1: Installing and testing"

From robotica.unileon.es
Jump to: navigation, search
(Página nueva: Microsoft Kinect device. This series of tutorials will explain the usage of a [http://www.microsoft.com/en-us/kinectforwindows/ Kinect] device ...)
 
Line 9: Line 9:
 
<span style="color:#606060">'''''NOTE: The tutorials are written for Linux platforms.'''''</span>
 
<span style="color:#606060">'''''NOTE: The tutorials are written for Linux platforms.'''''</span>
  
=Getting everything ready=
+
=Requirements=
  
 
You will need the following:
 
You will need the following:
  
* A common Kinect device, out of the box. You can buy it in your local electronics shop, or [http://www.amazon.co.uk/Kinect-Sensor-Adventures-Xbox-360/dp/B0036DDW2G/ref=sr_1_1?ie=UTF8&qid=1339672262&sr=8-1 online]. It includes an USB adapter and power supply.
+
* A common Kinect device, out of the box. You can buy it in your local electronics shop, or [http://www.amazon.co.uk/Kinect-Sensor-Adventures-Xbox-360/dp/B0036DDW2G/ref=sr_1_1?ie=UTF8&qid=1339672262&sr=8-1 online]. It also includes a free copy of ''Kinect Adventures'', which is useless if you don't own the console.
 
* A computer running Linux (Debian or Ubuntu preferably).
 
* A computer running Linux (Debian or Ubuntu preferably).
 
* A medium-sized room. Kinect has some limitations for depth measurement: 40cm minimum, 8m maximum (make it 6).
 
* A medium-sized room. Kinect has some limitations for depth measurement: 40cm minimum, 8m maximum (make it 6).
 +
 +
=Connecting everything=
 +
 +
Kinect does not work with a common USB port. Its power consumption is a bit higher because of the motor, so Microsoft came up with a connector that combines USB and power supply. Old Xbox 360 models needed a special adapter, new ones already have this new port. Luckily, Kinect comes with the official adapter out of the box (otherwise you will have to [http://www.amazon.co.uk/XBOX-KINECT-SENSOR-POWER-SUPPLY/dp/B004ULYCVS/ref=cm_cr_pr_product_top buy one]).
 +
 +
Just plug the adapter to any power socket, and the USB to your computer. Let's check typing this in a terminal:
 +
 +
<geshi lang=Bash lines=0>lsusb</geshi>
 +
 +
Output should contain the following lines:
 +
 +
<geshi lang=Bash lines=0>Bus 001 Device 005: ID 045e:02b0 Microsoft Corp. Xbox NUI Motor
 +
Bus 001 Device 006: ID 045e:02ad Microsoft Corp. Xbox NUI Audio
 +
Bus 001 Device 007: ID 045e:02ae Microsoft Corp. Xbox NUI Camera</geshi>

Revision as of 10:27, 18 June 2012

Microsoft Kinect device.

This series of tutorials will explain the usage of a Kinect device for "serious" researching purposes. As you may know, Kinect is in fact an affordable depth sensor, developed with technology from PrimeSense, based on infrarred Time-of-Flight (TOF) method. It also has a common camera (which makes it a RGB-D device), a microphone and a motorized pivot. Its use is not limited to playing with a Xbox360 console, you can plug it to a computer and use it like any other sensor. Many open-source drivers and frameworks are available.

Since its release on November 2010, it has gained a lot of popularity, specially among the scientific community. Many researches have procured themselves one because, despite the low cost (about 150 €), it has proven to be a powerful solution for depth sensing projects. Current investigations focus on real-time surface mapping, object recognition and tracking, and localization. Impressive results (like the KinectFusion project from Microsoft) are already possible.

I will explain the installation and usage of one of these Kinect devices with a common PC, and the possibilities it offers. I will do it in an easy to understand way, intended for students that have just acquired it and want to start from scratch.

NOTE: The tutorials are written for Linux platforms.

Requirements

You will need the following:

  • A common Kinect device, out of the box. You can buy it in your local electronics shop, or online. It also includes a free copy of Kinect Adventures, which is useless if you don't own the console.
  • A computer running Linux (Debian or Ubuntu preferably).
  • A medium-sized room. Kinect has some limitations for depth measurement: 40cm minimum, 8m maximum (make it 6).

Connecting everything

Kinect does not work with a common USB port. Its power consumption is a bit higher because of the motor, so Microsoft came up with a connector that combines USB and power supply. Old Xbox 360 models needed a special adapter, new ones already have this new port. Luckily, Kinect comes with the official adapter out of the box (otherwise you will have to buy one).

Just plug the adapter to any power socket, and the USB to your computer. Let's check typing this in a terminal:

<geshi lang=Bash lines=0>lsusb</geshi>

Output should contain the following lines:

<geshi lang=Bash lines=0>Bus 001 Device 005: ID 045e:02b0 Microsoft Corp. Xbox NUI Motor Bus 001 Device 006: ID 045e:02ad Microsoft Corp. Xbox NUI Audio Bus 001 Device 007: ID 045e:02ae Microsoft Corp. Xbox NUI Camera</geshi>