MultiKinect is a system for collecting data using multiple Microsoft Kinect v2 cameras.
For instructions on using MultiKinect with single pixel sensors, refer to MultiKinect + SinglePixel.
NOTE: The camera can only be built and run on Windows, as the Kinect v2 SDK only supports Windows. Each Kinect runs from a separate computer, so to run multiple Kinects, make sure to run the camera program run on each computer.
The camera program runs on a Windows machine and serves as the interface between the Kinect and the controller. Requirements:
Instructions:
- Open
src/main/csharp/protos/protolib.sln
- Go to
Build > Rebuild Solution
to restore NuGet packages - Run
src/main/csharp/protos/build.bat
. This will generate all of the necessary protocol buffer files. - Close
src/main/csharp/protos/protolib.sln
- Open
src/main/csharp/camera/Camera.sln
- Build and start the project
NOTE: Building the Controller on Windows is not currently supported.
The controller program connects to each of the cameras and handles transforming the data into a common coordinate system.
To build the main controller, run:
bazel build //src/main/java/edu/bu/vip/multikinect/controller:main
For documentation, including usage instructions, see the docs.
The multikinect system supports adding plugins for collecting data from other types of systems. To write a plugin, all you have to do is implement the plugin interface and add it to the controller. You can find a full example of plugin usage here.
If you want to make changes to the controller, I highly recommend using IntelliJ with the bazel plugin.
To add bazel dependencies, you can generate the bazel code using these scripts in combination with this project.
TODO(doug)