Kinect 开发 —— Hello,Kinect

时间:2023-03-10 05:03:03
Kinect 开发 —— Hello,Kinect

控制台输出深度数据:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Kinect; namespace HelloKinectMatrix
{ class Program
{
static void _kinect_DepthFrameReady(Object sender, DepthImageFrameReadyEventArgs e)
{
// 获取Kinect深度数据,并将深度值打印到控制台上
using(DepthImageFrame depthFrame=e.OpenDepthImageFrame())
{
if(depthFrame!=null)
{
short[] depthPixelData = new short[depthFrame.PixelDataLength];
depthFrame.CopyPixelDataTo(depthPixelData); foreach (short pixel in depthPixelData)
{
Console.Write(pixel);
}
}
}
}
static void Main(string[] args)
{ if (KinectSensor.KinectSensors.Count>)
{
// 设置控制台前景色
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Welcome to the Kinect Matrix ... "); // 默认选择第一个Kinect传感器
KinectSensor _kinect = KinectSensor.KinectSensors[]; _kinect.DepthStream.Enable();
_kinect.DepthFrameReady += new EventHandler<DepthImageFrameReadyEventArgs>(_kinect_DepthFrameReady);
_kinect.Start(); // 按回车键退出
while (Console.ReadKey().Key != ConsoleKey.Enter)
{
} // 关闭Kinect传感器
_kinect.Stop();
Console.WriteLine("Exit the Kinect Matrix ... ");
}
else
{
Console.WriteLine("Please check the kinect sensor ");
} }
}
}

还是对C#很不熟悉,知道每条代码的含义,但自己写不出来 —— 缺乏整体架构