Wednesday, August 26, 2009

Time-of-flight cameras and displacement maps

These days I've stumbled upon a very interesting topic: Time-of-flight cameras.

I heard that Microsoft is using them to capture 3d coordinates of players on the amazing Project Natal.

I'm on a project (hobby) that needs that. I don't want to have two cameras to capture users from front and side but instead a single front camera which would know the depth of stuff I need.

Time-of-flight cameras are useful in this matter since they locate points on 3d space according to the light analysis. For more information plaese refer to http://en.wikipedia.org/wiki/Time-of-flight_camera, or any other topic about that on the Internet.

When I was playing around with 3ds Max some time ago I verified a very interesting feature of it called: Displacement Maps.

Quickly, displacement maps provide a mechanism to create a surface where dark areas of the picture (map) will create valleys and brighter areas will represent the mountains. This is: the darker, the deeper and the brighter the higher.

I made some tests with a picture of me with some gloves I got and the result was exciting (check below). I expect to work on that and implement it on C# with AForge help and in future XNA.

See you next time,

1. Original picture


2. Original picture loaded on a plane.


3. Plane with Displacement applied (perspective view).

No comments:

Post a Comment