Concept
Project mapping is a projection technique used to turn objects, often irregularly shaped into a display surface for video projection. What we tried to accomplish during Hardware course is creating a Video Projection system done by code in Processing, using the input from a Kinect and use that with OpenCV to create visual and interactive effects.
Process description:
Software workflow
Calibration
Once that the script work, we pass through the calibration of the Kinect/projector system: Once aligned the system we deform the projection for fit that to the kinect input through manual homography in Processing.
Documentation
Below here you can see the set of experiments for Kinect and Projector calibration first and the developing of the interactive graphics in Processing
1) Blobs from OpenCV
</p>
1.1) Blob Quality
2) Clean Outlines
</p>
3) Calibration Homography
</p>
3.1) Calibration through Spout and Resolume Arena
3.2) Speed Test
</p>
3.3) Delay Test
</p>
4) Clean Outlines Offsets
</p>
5) Physics Engine Implementation
</p>
Graphics Exploration
6) Vector Fields V1
6.1) Vector Fields V2
6.2) Vector Fields V3
6.3) Vector Fields V4
6.4) Vector Fields V5
6.5) Vector Fields V6
7) Vector Field Implementation
</p>
Requirements
Processing Libraries:
- opencv
- KinectPV2
- Sound
- g4p_controls
- spout*
- realSense*
*Optional functionality depending on available hardware
Electronics and Hardware
Input and Output
Kinect2 + Video Projector Casio xj-a242
PROJECTION MAPPING is a project of IaaC, Institute for Advanced Architecture of Catalonia developed at Masters of Robotics and Advanced Construction in 2019-2020 by Students: Anna Batalle, Matt Gordon, Lorenzo Masini, Roberto Vargas _ Faculty: Angel Muñoz & Lisa Fantini.