У меня OpenNI работает с официальными связями Java OpenCV. Мне пришлось перекомпилировать и включить WITH_OPEN_NI, как указано в документации OpenCV, чтобы заставить Kinect работать. Тогда проблема заключалась в том, чтобы получить константы для OpenNI. Кажется, что, как вы сказали, CV_CAP_OPENNI не определен в привязке Java. код выглядит следующим образом:
int CV_CAP_OPENNI = 900;
VideoCapture capture = new VideoCapture(CV_CAP_OPENNI);
capture.grab();
Mat depthMap = new Mat();
int CV_CAP_OPENNI_DEPTH_MAP = 0;
capture.retrieve(depthMap, CV_CAP_OPENNI_DEPTH_MAP);
Mat show = new Mat();
depthMap.convertTo(show,CvType.CV_8UC1, 0.05f);
постоянные значения были извлечены из D: \ OpenCV \ модули \ highgui \ включают \ opencv2 \ highgui \ highgui_c.h Я считаю, что лучший способ сделать это - проверить скрипты python, которые генерируют Java-классы, и включить их в эти константы для создания jar.

Спасибо. И как я могу скомпилировать новый .jar-файл для моего проекта java? Если я сделаю cmake, он произведет файл в jar? –
вы запустили cmake-gui для создания make-файлов/проектов, выберите BUILD_opencv_java, -jar файл будет построен с другими двоичными файлами – berak
Я могу построить с любым компилятором? –