microsoft / RoomAliveToolkit

Other
715 stars 191 forks source link

After calibration when u run the ProjectorMappingsample.exe it opens 2 projector screen & one user view on same machine but nothing is projected on 2nd projector #30

Open devhci opened 8 years ago

devhci commented 8 years ago

We have successfully calibrated 2 projector and one kinect but when we run the ProjectorMappingsample.exe it opens 2 projector windows and one user view but nothing is projected on the second projector... do we need to run the same sample on other machine connected to 2nd projector as well? or where r we going wrong. projector . userview

thundercarrot commented 8 years ago

The default settings on the projection mapping sample open windows on your main display. To put the graphics on the projector, change the following setting on the projection mapping sample. From the README:

FullScreenEnabled: Opens the rendered graphics window full screen on the projectors specified in calibration.xml. When false, the windows are instead opened in smaller windows with the main UI. This can be useful if you are away from your projector.

devhci commented 8 years ago

Hi @thundercarrot , I am attaching the video DEMO link (https://github.com/Gandhi-Sagar/InAirRendering_Without_Wearable_device ) of our work . we are able to see object on/near the projected surface but not in SPACE.... our projectors are kept in the same position as they were during the calibration. How should we arrange our two projectors so that we can see the object in space rather than on projected surface? I read your paper (dyadic Projected spatial Augmented realty)but could not understand this point .....pls help

thundercarrot commented 8 years ago

There are two things at play here. You need to have a good grasp of both. First is the 3D position of the model. You look in the sample code you can find the world coordinate transform created on line 270. This will be in the coordinate frame of your depth camera.

The second is the head position. From the video it looks like your head position is naturally in the right coordinate frame because it is using the same depth camera. Note that in the projection mapping sample as it is checked into GitHub, there is a transformation applied to the head position (line 213) that includes a 180 degree transformation about Y and a translation up Y-- this is for the setup in our lab where the body tracking camera is facing away from the projection surface (see the videos on youtube).

If you want the illusion of the 3D object hovering above the table, set its pose so that it is above the table, and configure your head tracking transformation appropriately (Identity, if you are using the same camera as you used in calibration). Consider turning the camera around 180 degrees during runtime so that you stand on the other side of the projectors, with the virtual object hovering between you and the projection surface.

I hope that helps.