none
Trying to Integrate Kinect to netduino via .net framework or format properly for .net micro framework RRS feed

  • Question

  •  

    Hello,

    I am working on a project where I plan (and hope) to import visual studios C# code onto a microprocessor, and to be able to embed the kinect sensor strait to the microprocessor (No PC used during operation).

    My project will require a board that I can plug the Kinect into and the board will run the C# code and output the code to pins. I would really appreciate any solutions (other then using OpenNI Kinect and preferably using visual studios C#) that can achieve this.

    I have tried to take an approach of using a netduino board to run the code, unfortunately the Kinect driver uses .Net framework, and the netduino uses .Net micro framework. When I place the Microsoft.Research.Kinect into the references of my soon to be imported netduino code, a warning appears during compile that states:

     

    Warning: Could not resolve this reference. Could not locate the assembly "Microsoft.Research.Kinect". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors

    I do not fully understand why I am getting this error, I know that the micro framework has more files other then just .dll for each driver and the framework has only .dll Maybe this is why I am getting the warning, but I do not know how to fix it.

    If there is no way around this .net micro framework warning, any solution to my goal would be appreciated (using a different board other then netduino, downloading some other software that will aid me, even just a good person to consult)

    Thank you

     


    Wednesday, February 1, 2012 11:39 PM

Answers

  • It will mostly likely not be possible to use the Kinect for Windows SDK with the .NET Micro Framework.

    Even it you could get it all to compile (and check out the v1.0 release available today -- assembly is now Microsoft.Kinect.dll) the netduino would not be powerful enough to read the data in real time from the Kinect. Check the minimum specs: http://www.microsoft.com/en-us/kinectforwindows/develop/overview.aspx It can work on lower specs but it can max out the CPU and also not deliver at 30 fps, but only on supported OSes (Win7, Win7 embedded, or Win8).

    Some people have Kinect working with higher end microcontrollers using openni or libfreenect but the framerate is really low and you don't get skeleton tracking like the Kinect SDK provides you.


    -- Joshua Blake
    Microsoft Surface MVP
    OpenKinect Community Founder
    Technical Director, InfoStrat Advanced Technology Group
    Blog: http://nui.joshland.org
    Twitter: http://twitter.com/joshblake
    Natural User Interfaces in .NET Book: http://manning.com/blake
    Thursday, February 2, 2012 2:07 AM
  • Microsoft.Kinect.dll requires .NET Framework 4.0. It will not work on .NET Micro Framework, even the latest version. When you install the Kinect for Windows SDK, you get the Windows driver for the Kinect, the native runtime, and the managed runtime. There is no driver to use the Kinect from a netduino.
    Saturday, February 4, 2012 5:32 AM

All replies

  • Hello,

    I am working on a project where I plan (and hope) to import visual studios C# code onto a microprocessor, and to be able to embed the kinect sensor strait to the microprocessor (No PC used during operation).

    My project will require a board that I can plug the Kinect into and the board will run the C# code and output the code to pins. I would really appreciate any solutions (other then using OpenNI Kinect and preferably using visual studios C#) that can achieve this.

    I have tried to take an approach of using a netduino board to run the code, unfortunately the Kinect driver uses .Net framework, and the netduino uses .Net micro framework. When I place the Microsoft.Research.Kinect into the references of my soon to be imported netduino code, a warning appears during compile that states:

     

    Warning: Could not resolve this reference. Could not locate the assembly "Microsoft.Research.Kinect". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors

    I do not fully understand why I am getting this error, I know that the micro framework has more files other then just .dll for each driver and the framework has only .dll Maybe this is why I am getting the warning, but I do not know how to fix it.

    If there is no way around this .net micro framework warning, any solution to my goal would be appreciated (using a different board other then netduino, downloading some other software that will aid me, even just a good person to consult)

    Thank you

     


    • Merged by Lie You Friday, February 3, 2012 5:26 AM Merge them to keep into the same topic for good discussion
    Wednesday, February 1, 2012 11:40 PM
  • It will mostly likely not be possible to use the Kinect for Windows SDK with the .NET Micro Framework.

    Even it you could get it all to compile (and check out the v1.0 release available today -- assembly is now Microsoft.Kinect.dll) the netduino would not be powerful enough to read the data in real time from the Kinect. Check the minimum specs: http://www.microsoft.com/en-us/kinectforwindows/develop/overview.aspx It can work on lower specs but it can max out the CPU and also not deliver at 30 fps, but only on supported OSes (Win7, Win7 embedded, or Win8).

    Some people have Kinect working with higher end microcontrollers using openni or libfreenect but the framerate is really low and you don't get skeleton tracking like the Kinect SDK provides you.


    -- Joshua Blake
    Microsoft Surface MVP
    OpenKinect Community Founder
    Technical Director, InfoStrat Advanced Technology Group
    Blog: http://nui.joshland.org
    Twitter: http://twitter.com/joshblake
    Natural User Interfaces in .NET Book: http://manning.com/blake
    Thursday, February 2, 2012 2:07 AM
  • Microsoft.Kinect.dll requires .NET Framework 4.0. It will not work on .NET Micro Framework, even the latest version. When you install the Kinect for Windows SDK, you get the Windows driver for the Kinect, the native runtime, and the managed runtime. There is no driver to use the Kinect from a netduino.
    Saturday, February 4, 2012 5:32 AM