We've mentioned IllumiRoom and RoomAlive before, but at Build 2015 there was a dedicated session AND the release of the RoomAlive Toolkit too!
IllumiRoom (https://research.microsoft.com/en-us/projects/illumiroom/) demonstrated how projection mapping can enhance entertainment. RoomAlive (https://research.microsoft.com/en-us/projects/roomalive/) prototyped turning any room into an interactive, augmented experience. In this session, Andy Wilson (Microsoft Research) teaches the key concepts behind these projects including:
- Kinect and projector calibration
- Networking multiple Kinect sensors together
- Displaying dynamic AR objects in real-time.
Additionally, all tools and source code used in the session will be released on GitHub to enable you to make use of these techniques in your own projects.
Project Information URL: https://channel9.msdn.com/Events/Build/2015/3-87
RoomAlive Toolkit README
The RoomAlive Toolkit calibrates multiple projectors and cameras to enable immersive, dynamic projection mapping experiences such as RoomAlive. It also includes a simple projection mapping sample.
This document has a few things you should know about using the toolkit's projector/camera calibration, and gives a tutorial on how to calibrate one projector and Kinect sensor (AKA 'camera').
- Visual Studio 2013
- Kinect for Windows v2 SDK
The project uses SharpDX and Math.NET Numerics packages. These should be downloaded and installed automatically via NuGet when RoomAlive Toolkit is built.
Tutorial: Calibrating One Camera and One Projector
Calibrating Mutiple Cameras and Multiple Projectors
More Online Resources
- Channel9 pre-recorded talk introducing the RoomAlive Toolkit with Ben Lower and Andy Wilson
- video of 3 camera/3 projector calibration
- The resulting calibration set can be downloaded here. Try opening this in CalibrateEnsemble.exe.
- video of projection mapping sample, showing view dependent rendering of 3D object
- video of projection mapping sample, showing wobble effect
- RoomAlive video
Source Code URL: https://github.com/Kinect/RoomAliveToolkit