An API for creating Multi-Surface Environments. This repository is used as server for location based calls. The RoomVisualizer project is used as a centralized place that displays all information that is currently known to the API
-
Install Kinect SDK 1.7
-
Install [Bonjour SDK] (https://developer.apple.com/bonjour/) (Must have Apple Developer Account)
-
Install [NuGet] (http://nuget.codeplex.com/)
-
Clone MSE API repository using
git clone git@github.com:ase-lab/MSEAPI.git --recursive
The
--recursive
ensures that all submodules get downloaded. If you forget, you can usegit submodule update --recursive --init
later. -
Open
MSEAPI.sln
in Visual Studio -
Set the
RoomVisualizer
project as the startup project -
Ensure it builds correctly
F6
-
Clone the KinectClient repository.
-
Make sure that the computer that is running the KinectClient is on the same network as the computer running the MSE API.(Note: You can run the MSE API and the KinectClient on the same computer.)
-
Run the KinectClient and then it should show up on the MSE API visualizer like below.
-
Drag and drop each Kinect on the visualizer canvas to match the location and orientation of the Kinects in the room.
If more than one Kinect is being used then they have to be calibrated. Calibration makes sure that the relative location of each Kinect in the visualizer matches the relative location of each Kinect in the room. It is recommended to have the the kinects' orientation at 0°, 90° , 180° or 270° since this allows for easier calibration and better tracking. Here is how to calibrate Kinects in MSE API:
-
One person should stand in the overlapping area between the Kinects that are to be calibrated like below. Since these Kinects are not yet calibrated, that person will appear twice (or more, depending on the number of Kinects being used) in the visualizer.
-
Click on those two persons in the visualizer and they will turn blue.
-
Simply click on the calibrate button on the sidebar. The person should leave the room and reenter and the Kinects will be calibrated like below.
There are essentially two ways to set up Kinects in a room:
-
One way is to have multiple kinects point towards the same area. This will allow for better tracking of the people in that small area.
-
Another way is to have each kinect point at a different area to increase the area of tracking. However, it is really important to have enough overlapping coverage between Kinects so that there is always at least one kinect tracking people who are moving across.
MSE API tracks the location of devices by tracking the people who are holding these devices. To do that, devices need to be "paired" with the person who is holding that device. Here is how to pair a device with a person:
-
Whenever an application that is running any of the MSE API client libraries is turned on, it will show up on the sidebar of the visualizer like below.
-
Simply drag and drop that device on a person in the visualiser to pair them.
-
If a device is not a hand held device (i.e a tabletop or a display), it can be dragged and dropped anywhere on the visualizer canvas.