本文整理汇总了C#中Microsoft.Kinect.DepthImageFrame.ToDepthImagePixel方法的典型用法代码示例。如果您正苦于以下问题:C# DepthImageFrame.ToDepthImagePixel方法的具体用法?C# DepthImageFrame.ToDepthImagePixel怎么用?C# DepthImageFrame.ToDepthImagePixel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Kinect.DepthImageFrame
的用法示例。
在下文中一共展示了DepthImageFrame.ToDepthImagePixel方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ConvertDepthToColor
/// <summary>
/// 距離データをカラー画像に変換する
/// </summary>
/// <param name="depthFrame"></param>
/// <returns></returns>
private static byte[] ConvertDepthToColor( DepthImageFrame depthFrame, KinectSensor kinect )
{
// 距離カメラのピクセルごとのデータを取得する
short[] depthPixel = depthFrame.ToPixelData();
// 画像化データを作成する
byte[] depthColor = new byte[depthFrame.Width * depthFrame.Height * BytesPerPixel];
var colorPoints = new ColorImagePoint[kinect.ColorStream.FrameWidth * kinect.ColorStream.FrameHeight];
kinect.CoordinateMapper.MapDepthFrameToColorFrame(kinect.DepthStream.Format,
depthFrame.ToDepthImagePixel(), kinect.ColorStream.Format, colorPoints
);
// 画像化する
for ( int i = 0; i < depthPixel.Length; i++ ) {
// 距離カメラのデータから、距離とプレイヤーIDを取得する
int distance = depthPixel[i] >> DepthImageFrame.PlayerIndexBitmaskWidth;
int player = depthPixel[i] & DepthImageFrame.PlayerIndexBitmask;
// バイトインデックスを計算する
int index = (colorPoints[i].Y * kinect.ColorStream.FrameWidth + colorPoints[i].X) * BytesPerPixel;
byte gray = (byte)~(byte)KinectUtility.ScaleTo( distance, 0x0FFF, 0xFF );
depthColor[index + 0] = gray;
depthColor[index + 1] = gray;
depthColor[index + 2] = gray;
}
return depthColor;
}
开发者ID:NaturalSoftwareJP,项目名称:NaturalSoftware.Kinect.CSharp,代码行数:35,代码来源:DepthImageFrameExtensions.cs