3D Scanning with the Kinect
June 9th, 2012 Jeremy Herrman jherrman.com @jherrm
What Makes the Kinect So Great?
1st consumer 3D depth camera < $150 Available everywhere Hackable
How does the Kinect Work?
How does the Kinect Work?
Infrared Laser "Starfield" Projector
How does the Kinect Work?
Infrared Laser "Starfield" Projector
Infrared Camera
How does the Kinect Work?
Infrared Laser "Starfield" Projector
Infrared Camera
RGB Color Camera
Demo
What can be scanned?
Large, non-reflective, opaque items People Rooms Issues Scanning in direct sunlight doesn't work Subject must stay still during multi-view capture
Tips for Creating Clean Scans
Handheld Kinect Don't shake - use smooth motions Always keep subject in frame Plan around the cord Have a buddy to press buttons Turntable Rotate table at a constant, slow pace While turning, hide hands/arms from sensor Limit sensor depth to minimum required to scan object
3D Scanning Software
Prerequisites
1. Kinect Sensor 2. USB/Power Adapter 3. Computer
a. Powerful graphics card = better scans b. Graphics Card Compatibility Spreadsheet
4. Enthusiasm
KinectToSTL
https://github.com/kylemcdonald/Makerbot/tree/master/KinectToStl
KinectToSTL
https://github.com/kylemcdonald/Makerbot/tree/master/KinectToStl
RGBDemo
http://labs.manctl.com/rgbdemo/
Skanect
http://manctl.com/products.html
ReconstructMe
http://reconstructme.net
3Dify
http://www.matherix.com/
3Dify
http://www.matherix.com/
Post-Scan Software Toolkit
Meshlab
http://meshlab.sourceforge.net Swiss army knife of mesh tools
Blender
http://www.blender.org General purpose meshing and cleanup
Meshmixer
http://meshmixer.com Clean up scan artifacts
Netfabb
http://www.netfabb.com/basic.php Primary focus is fabrication
Sharing Your Scans
SketchFab.com
Example: Baxter the cat (RGBDemo)
3Dfile.io
Example: Mac Plus (ReconstructMe) Uploads limited to 10MB
GrabCAD.com
Example: Mom (ReconstructMe) Meant for CAD, not scans
Thingiverse.com
Example: Pikachu (3Dify) Targeted at 3D printable models
p3d.in
Example: Thomas 1650 (ReconstructMe)
Roll Your Own Online Viewer
Three.js
https://github.com/mrdoob/three.js/ Javascript wrapper for 3D content Renders to WebGL, Canvas, and SVG
XB PointStream
http://zenit.senecac.on.ca/wiki/index. php/XB_PointStream
GLGE
http://www.glge.org
The Future
Kinect 2 Better resolution "Can read your lips" Kinect Fusion Augmented reality http://youtu.be/zzb_RQWrt6I Embedded Kinect Kinect-on-a-chip In your phone, tablet
The End
Questions?
Jeremy Herrman | jherrman.com | @jherrm