User Tools

Site Tools


kinect3dscanning

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

kinect3dscanning [2015-10-05 15:55] (current)
Line 1: Line 1:
 +<​code>​
 +Date: Sat, 6 Apr 2013 14:09:05 +0100
 +From: Martin Ling <​[email protected]>​
 +Reply-To: [email protected]
 +To: "​[email protected]"​ <​[email protected]>​
 +Subject: [hacklab-discuss] Notes on the state of 3D scanning with a Kinect
  
 +Hi all,
 +
 +Wren & I have just spent a while trying to scan ourselves with the lab's
 +Kinect, with the aim of getting models that would be useful for sizing &
 +designing clothes. For the benefit of anyone else trying to do something
 +similar, here are some notes on how it works and what the state of
 +available software is.
 +
 +Hardware:
 +
 +- The lab's Kinect is the version designed for the Xbox 360, and came
 +  with a weird Xbox-specific connector that carries 12V + USB. I have
 +  now modded this to have a standard USB connector and a 12V mains
 +  supply, so you can plug it into a PC. You can still use it with an
 +  Xbox 360 if you want to.
 +
 +- The Kinect lives in the lab store room.
 +
 +Drivers / SDK:
 +
 +- The official software is Microsoft'​s Kinect for Windows SDK, which you
 +  can get from:
 +  http://​www.microsoft.com/​en-us/​kinectforwindows/​develop/​developer-downloads.aspx
 +
 +  Note that although this SDK is marketed as being for the "​Kinect for
 +  Windows"​ hardware, it works fine with the Xbox Kinects. The only
 +  apparent difference in the more expensive "​Kinect for Windows"​ model
 +  is a firmware that enables "near mode" operation down to ~40cm, rather
 +  than the ~80cm limit of the original models.
 +  ​
 +  As of version 1.7 released two weeks ago, the SDK includes the Kinect
 +  Fusion code which was developed at Microsoft Research. This can build
 +  3D models on the fly from the Kinect data stream, but you need a high
 +  spec GPU to do the processing. Unsurprisingly I couldn'​t run this on
 +  my laptop. Perhaps a GPU with this sort of capability would be a good
 +  addition to a lab workstation.
 +
 +- The open source alternative stack is OpenNI: http://​www.openni.org/​
 +  This is a framework for working with all sorts of Kinect-like devices.
 +  There is a Kinect driver for it that works with Windows, Mac and Linux:
 +  https://​github.com/​avin2/​SensorKinect
 +
 +- You can have both drivers installed at the same time on Windows, but
 +  you need to select which is used for the Kinect through Device Manager
 +  before starting software that depends on one driver or the other.
 +
 +Scanning Software:
 +
 +- The best thing seems to be ReconstructMe:​ http://​reconstructme.net/​
 +  This runs on Windows and works with both OpenNI and the Kinect for
 +  Windows drivers.
 +
 +  The GUI version for this is very simple - one button to record and
 +  reconstruct a mesh on the fly - but I you'd need a fast GPU for this
 +  to work. Also they charge for a non-crippled version.
 +
 +  The console version (not crippled, but for non-commercial use only)
 +  allows recording and offline processing. It also has a stitcher that
 +  will join up multiple scans, although this doesn'​t do fusion between
 +  them, just simple stitching.
 +
 +  There are essentially no options or manual adjustments in this
 +  software - it's just data in, model out.
 +
 +  Without a GPU the processing is very, very slow, but it works well.
 +  You have to make sure to move the sensor very slowly.
 +
 +  It doesn'​t output coloured models, but it does go all the way to a
 +  mesh, rather than just a point cloud. It outputs .obj files. If you
 +  need to post-process or convert these to something else, I recommend
 +  MeshLab: http://​meshlab.sourceforge.net/​
 +
 +- The other software we tried was SCENECT:
 +  http://​3d-app-center.faro.com/​index.php/​stand-alone-apps-faro-scenect
 +  It runs on Windows and uses OpenNI and the driver from the link above,
 +  which it installs for you.
 +
 +  This is a modified version of the SCENE LT laser scanning software
 +  which uses the Kinect as a data source instead of a laser scanner.
 +  So it already has lots of features for visualіsing,​ processing and
 +  exporting the data.
 +
 +  It does on-the-fly point cloud reconstruction,​ although we found it
 +  easier to just record the data stream and process it offline.
 +
 +  This almost worked for us. The problem is that the tracking between
 +  frames often jumps, leaving mismatches in the data. To try and
 +  get round this we ran multiple shorter, slow-moving scans from
 +  different angles, and tried to match them up afterwards. The software
 +  has an automatic matching feature for this, but it didn't like our data.
 +
 +  It's possible that with more effort we could get this to work. It
 +  runs faster and offers a lot more control than ReconstructMe,​ and also
 +  outputs colour data.
 +
 +Hope this is useful to someone!
 +
 +
 +Martin
 +</​code>​
kinect3dscanning.txt · Last modified: 2015-10-05 15:55 (external edit)