C++ skeleton viewer running slow RRS feed

  • General discussion

  • I'm only getting around 7 fps for the depth image. I tried unplugging everything from usb, & commented graphics out of the code. I'm using a 3.2GHz quad core AMD with 4 GB RAM. The kinect worked OK in this respect with OpenNI.

    Any suggestions appreciated.

    Thursday, June 23, 2011 4:42 PM

All replies

  • Does this happen no matter how close you are to the kinect camera? Try a scene where you have a large, empty, room and you stand about 2 meters from camera and your entire body fits within camera frame, with no objects nearby. Does that have better frame rate?

    Also, did you uninstall OpenNI drivers before installing Kinect SDK Beta? The two sets of drivers installed together may produce unpredictable results.

    Also, did you ever see good performance with these new drivers, which later degraded, or did you never see good performance?

    Hopefully one of these suggestions will help diagnose problem. Let me know what happens.

    I'm here to help
    Tuesday, June 28, 2011 8:50 PM

    Eddy thanks for the reply. To recap, for the prebuilt SkeletalViewer.exe

    fps jumps around between 4 & 15. The SkeletalViewers built from source

    (C++ & C#) show the same problem.

    Testing showed the lag is specific to the depth stream: the image stream runs at 30 fps.

    Re your questions:

    1) Camera is 3.5 m from the wall, I stand at the back and the skeleton appears.

    Frame rate is not improved. I don't think its related to skeletal processing:

    I tried code for depth & image only in my own app, & this showed no improvement, even for a test version that does nothing more than call NuiImageGetNextFrame()


    2) Initially I didn't remove the OpenNI drivers but, following SDK install, they disappear from device manager.

    Wednesday, June 29, 2011 11:17 PM
  • Forgot to say .... On a subsequent install I removed OpenNI drivers first. This didn't help.

    Also,  I never saw good performance with the new drivers

    Wednesday, June 29, 2011 11:23 PM
  • Hmm, is there some other application in your system taking up a bunch of CPU or memory? Also, have you tried running your app as the only app after a fresh reboot? processing the depth stream does take more memory and CPU than processing the color video stream, which is just a simple memory copy procedure, so this difference in performance between depth and color video could indicate that your machine is running out of resources. I'm not sure why, though, because machine specs you described seem alright, but if running as single application on system works better, then at least we might be on to something.


    I'm here to help
    Thursday, June 30, 2011 4:59 AM
  • Try this,

    With kinect connected, sleep your computer and wake it up again

    This works for me.


    Thursday, June 30, 2011 1:14 PM
  • I reboot and look at task manager. It says cpu is running at around 0%, memory usage around 1GB. Then I launch skeletonViewer.exe and it reports cpu running at 10 -20% & little change re memory. Next, I tested USB speed with "advanced usb port monitor". It reported 667 MB input over 30 seconds. All these figures are similar to those for the minimal OpenNI app.

    Thursday, June 30, 2011 4:53 PM
  • Tried that, didn't help, thanks anyway 
    Thursday, June 30, 2011 4:54 PM