在Java上运行NiTE和OpenNI - Handviewer Java Sample Crashes

时间:2013-06-17 14:48:09

标签: openni

我正在尝试运行Handviewer java示例项目。运行应用程序后(1-2秒)崩溃并触发以下异常!

请注意,我已成功运行UserViewers.java示例而没有任何问题。我在OSX 10.8.3,NiTE-MacOSX-x64-2.2,OpenNI-MacOSX-x64-2.2和华硕XtionPro Live上运行。

Exception in thread "Thread-17" java.util.NoSuchElementException: Unknown pixel format: 0
    at org.openni.PixelFormat.fromNative(PixelFormat.java:30)
    at org.openni.VideoMode.<init>(VideoMode.java:38)
    at com.primesense.nite.NativeMethods.niteReadHandTrackerFrame(Native Method)
    at com.primesense.nite.HandTracker.readFrame(HandTracker.java:139)
    at com.primesense.nite.Samples.HandViewer.HandViewer.onNewFrame(HandViewer.java:69)
    at com.primesense.nite.HandTracker.onFrameReady(HandTracker.java:360)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at com.primesense.nite.Samples.HandViewer.HandViewer.paint(HandViewer.java:55)
    at javax.swing.JComponent.paintChildren(JComponent.java:884)
    at javax.swing.JComponent.paint(JComponent.java:1046)
    at javax.swing.JComponent._paintImmediately(JComponent.java:5106)
    at javax.swing.JComponent.paintImmediately(JComponent.java:4890)
    at javax.swing.RepaintManager$3.run(RepaintManager.java:814)
    at javax.swing.RepaintManager$3.run(RepaintManager.java:802)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:802)
    at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:745)
    at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:725)
    at javax.swing.RepaintManager.access$1000(RepaintManager.java:46)
    at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1684)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:708)
    at java.awt.EventQueue.access$400(EventQueue.java:82)
    at java.awt.EventQueue$2.run(EventQueue.java:669)
    at java.awt.EventQueue$2.run(EventQueue.java:667)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:678)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

1 个答案:

答案 0 :(得分:0)

这可能对你没什么帮助,因为它已经有一段时间......但是我的Kinect遇到了类似的问题。我可以通过重新安装所有内容并切换到OpenNI 1.5.4来解决所有问题。之后一切都有效。祝你好运。