none
Running Kinect v2 on LattePanda RRS feed

  • Question

  • Hi 

    I managed to connect and capture data from Kinect v2 using LattePanda Single Board Computer.

    However I could have access to how data types of data; refresh rate is limited around 15 to 20 fps.

    Since there were no such a noticeable CPU and RAM load, I suspect on USB 3.0 limitation in LattePanda

    Therefore I tried to read only skeleton data but the data rate didn't pass 22 fps.

    Do know what could be possible bottle neck in this setup.

    Best Regards

    Reza


    Tuesday, October 25, 2016 7:15 AM

All replies

  • Perhaps the board is doing power saving things under the hood, thus limiting USB3. Generally Kinect is very greedy about its USB3.Somehow though I doubt it is the USB3 configuration.You wouldn't even get 22 FPS if that was the problem.

    Then again the specs for LattePanda don't come close to the required specs MS is asking for. Atom type cpu when i7 is the official requirement. Also Intel gpu doesn't seem up to the task either, even if DX11 compatible. If the gpu cannot perform all procesing quickly enough, then frame rate drops.

    Wednesday, October 26, 2016 10:25 PM
  • I test USB3.0 port to ensure about bus limitation and I found it is limited down to about 60MBps.


    And here is the CPU load while recording skeleton data

    Actually, I didn't notice that some of the processing is done in the host GPU even color image is disabled.

    However, the system GPU  supports DX12; it is not designed for any kind of advance processing.

    Therefore if MS Kinect v2 does some GPU processing in host computer, it have to look at gpu load.

    Thursday, October 27, 2016 10:01 AM
  • Actually Kinect v2 has no microprocessor,or whatever, for processing. It is limited to just producing the data and sending them in time to host pc. Host pc has a KinectService service which is in charge of grabbing data and then feeding them to GPU (hence the need for DX11 compatibility) in order to be processed. Kinect Data that pass from Kinect to pc, are RGB and IR frames. Depth and Body frames are calculated in the GPU from the IR frame. When calculation is over, all frames are then redirected to any Kinect client.Even if your GPU is DX12 compatible, if the driver is not good(Win10 are mostly DX12 but I think there are some problems when compiling DX11 apps in a DX11 pc and testing in a DX12 machine) or the GPU is not powerful enough to handle above calculations quickly, then your overall performance will suffer. Especially when calculations take nearly as much time as the refresh rate Kinect SDK promises when specs are met.

    Thursday, October 27, 2016 10:08 AM
  • Hi 

    I check GPU load while I am using Kinect v2 and I was the only reason of frame rate limitation.

    Thank you for future details, It was really helpful.

    Therefore, we can conclude, we just need a mid-range GPU processor for having proper data capture not a powerful CPU.

    Best Regards

    Reza

    Friday, October 28, 2016 10:43 AM
  • Yeah you need at least a medium range GPU.

    A powerful cpu is recommended though. Here is an official system requirements list.

    While people have said they've had it working on i5 cpus etc, I remember some posts here that MS engineers have said that the recommendation is i7(I guess some architecture thing is at play) and anything else is not 100% sure to work and I guess that shows from the fact that there's no minimum requirements list.

    Good luck to you.
    Friday, October 28, 2016 3:33 PM
  • Hi Reza,

    I was wondering how did you get kinect v2 to work on the lattepanda, I don't even get it to be detected by the usb3 port.

    Thanks!

    Marco

    Monday, April 24, 2017 9:57 AM