微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Kinect CLNU驱动程序数据为EmguCV C#IImage格式

如何解决Kinect CLNU驱动程序数据为EmguCV C#IImage格式

| 我想使用emguCV C#与kinect交互。 我正在使用CLNU驱动程序。 我无法将CLNUDevice.getCameraColorFrameRGB32()输出IntPtr转换为任何可用格式。我尝试了新图像(宽度= 480,高= 640,步幅= 480 * 3,IntPtr) 任何帮助表示赞赏。我确实相信这是此处给出的代码的C#版本。 http://codelaboratories.com/forums/viewthread/518/     

解决方法

这为我工作:
IntPtr rgb32 = CLNUIDevice.getCameraColorFrameRGB32();
MIplImage rgb32Image = new MIplImage();
rgb32Image = (MIplImage)Marshal.PtrToStructure(rgb32,typeof(MIplImage));
当然,哪里需要rgb32Image。我不确定如何与此一起使用Image <>类,尽管我确定MIplImage和Image <>之间存在某种转换。 希望这可以帮助。     ,好吧,我意识到库dll包含一些将数据转换为位图的函数。所以现在我有一个emgucv Image <>。 所以基本上,您只需要在需要的地方将其添加到NUIImage.cs中即可。 返回新的图像(新的System.Drawing.Bitmap(640、480、640 * 4,System.Drawing.Imaging.PixelFormat.Format32bppRgb,depthImage.ImageData)); 您也可以使用相同的代码来获取位图。 这是一个简单的琐碎技巧。我希望有人可以解释wat正在进行的事情。 虽然很快。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。