2
votes

I am interested in making a Kinect v2 program to communicate with an existing desktop Java app (made in Eclipse). The idea is simple, the data from the Kinect v2 app (color, depth, skeleton/joints, face states, hand states, voice, etc) can be sent to the Java app to trigger some events or effects in that Java app. I have done some research, here are some possibilities to move forward with:

Make the Kinect v2 app using:

  1. Native API & SDK (with Visual Studio)

  2. Unity 3D

  3. Processing (with the aid of KCB: Kinect Common Bridge)

  4. Java (make a new app, or add code to the said existing Java app), then use things like J4K (Java for Kinect) library, OpenKinect, or Jnect plugin (But I'm not sure if these support Kinect v2....just Kinect v1 maybe?)

Which one is the most promising choice? And how should the choice work with an existing Java app (e.g., weblinks or tutorials for making such setup)? (I would particularly prefer if we can go with choice 1 and/or 2).

Thanks!

1
Excellent question. Let me know if you are able to make some development16per9

1 Answers

0
votes

Don't know much about Kinect, Unity 3D and KCB but i think that these technologies aren't able to communicate with Java on its own at all. Maybe there exists already some kind of JavaKinect API. In this case i would suggest to use this API.

If not I would suggest to look at SWIG which enables you to create an approriate JNI Wrapper using an given generator. Swig takes some C++ Headers and leverage it to generate JNI C++/java proxy and wrapper classes. The generated classes can be used than by an Kinect, Unity3D or KCB application an of course by your Java application.

To summerize it: Use any of your proposed alternative Kinect API's, with SWIG and Java.

Additionally i would suggest to have a look at Java Native Interface (JNI) at all because this is not a trivial problem.