Kinect v2 Point Cloud

Today's project from Edgar Maass shares one of the favorite things people like to do with the Kinect for Windows, create Point Clouds. His latest update upgrades the project for the Kinect for Windows v2 device and more...

Kinect v2 Point Cloud

The goal of this article is to extract a point cloud using the Microsoft Kinect v2 sensor, visualize it using the VTK toolkit, save it for printing or further work (e.g. using Meshlab)

image

Introduction, Quick Start

  1. Prerequisites:
    -A Kinect v2 sensor
    -The Microsoft Kinect V2 SDK version 2.0 installed
    -Visual Studio 2012 or higher
  2. Start the program KinectPointCloud.exe
  3. Check the checkbox "Save if depth frame ..."
  4. Click on „Capture“ – see below
  5. Hold still in front of the sensor while scanning.
    Capture will stop when the image quality is high – „Depth OK…“ is over 45% - see below
  6. Click on „Show Point Cloud“ to open the point cloud
  7. View the point cloud with or without color info
    image
  8. Open the point cloud for further editing in external tools like MeshLab (either the .ply file -contains color info - or the .xyz file)
    image

Other source code used

Different open source code is used within the project

-parts of the Microsoft Samples contained within the Kinect SDK

-The VTK library by means of the C# wrapper Activiz: Link

-parts of the code of Vangos Pternas from his Codeproject article: Article:Link

Coding

Grabbing the Data with Kinect

Extracting a point cloud from the Kinect by using the standard Microsoft sample code gives quite poor results – e.g. up to 30% of the depth frame points miss depth information. Either the depth is zero or there are artefacts on the depth image which occur from low depth precision

...

Improve depth quality

...

Remarks

The depth statistics is only valid if the target and the scanner do not move.

If large movements occur, the percentage values may not add to 100% total. The reason is that the depth points cut out of the image are different if the sensor or the scan target move.

Conclusion

A point cloud can be scanned with acceptable quality using the Microsoft Kinect v2 camera if one uses the procedures described in this article like image interpolation and saving the point cloud only if the depth precision is high.

Code Usage

The code and all information of this article may be used in any application as long as you cite this article in the acknowledgements.

Project Information URL: http://www.codeproject.com/Articles/824882/Kinect-v-Point-Cloud

Project Source URL: http://www.codeproject.com/Articles/824882/Kinect-v-Point-Cloud




Tags:

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
    Unsubscribing
    Subscribing

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.