Reducing Kinect Record/Replay storage memory RRS feed

  • Question

  • hi,

        i have to store kinect data streams  like color,depth, skeleton data for more than one hour into to local system drive.

    but it takes 1gb memory for 1 minutes color data alone. How i compress the colorimageFrame pixel resolution into low

    resolution that is (640 *480)  to (320*240) or low. and reducing memory storage size. 

    how can i do? 

    please anyone help

    Thanx in advance


    Thursday, January 9, 2014 12:45 PM


All replies

  • That is not a simple task. You may be able to get away with compressing the video into some H.264 or WMV3 codec, but the depth and skeletal data will have to employ some type of lossless compression. Additionally, you can try to use KinectStudio, but those get pretty large as well. Why are you recording for such long periods?

    Keep in mind how much data is getting generated from the Kinect. For one frame out of 30 frames per second you get:

    640x480x4 bytes per pixel = ~1,228,800 bytes == color
    320x240x2 byte per pixel = ~153,600 bytes == depth
    sizeof(NUI_SKELETON_FRAME) * 6 = ~15984 bytes == skeleton

    ~1.5Mbits of data +/- 10% for overhead

    Carmine Sirignano - MSFT

    Thursday, January 9, 2014 7:44 PM
  • Thanks Carmine 

                Now my doubts are cleared, Because kinect gives raw VGA values .So we have to compress those into particular codec. do u know any best compression methods for kinect data streams. I have to replay frame by frame values.


    • Edited by KrupaKine Friday, January 10, 2014 5:57 AM
    Friday, January 10, 2014 5:53 AM
  • I am not aware of anything in particular, but you might want to check what are available on Wikipedia. Depending if you are taking the full short(2 bytes) value or just the depth value you can eek out a bit more.

    Carmine Sirignano - MSFT

    Saturday, January 11, 2014 1:12 AM
  • Hello,KrupaKine。The same problem has appeared in my project.Now i just write the rgb/depth/skeleton data by binarywriter in c#,but it takes too much memory.Have you solved this problem?
    Monday, May 19, 2014 12:09 PM