0

我的kinect有点问题。当我尝试从事件中获取彩色图像时: Sensor_AllFramesReady 一切正常。例子:

using (ColorImageFrame colorFrame = e.OpenColorImageFrame()) {
    //save image for print
    if (colorFrame == null) {
        return;
    }
    byte[] colorData = new byte[colorFrame.PixelDataLength];
    colorFrame.CopyPixelDataTo(colorData);
    int averagedImage = colorFrame.Width * PixelFormats.Bgr32.BitsPerPixel / 8;
    int stride = colorFrame.Width * 4;
    pictureBitmap = BitmapSource.Create(colorFrame.Width, colorFrame.Height, 96, 96, PixelFormats.Bgr32, null, colorData, stride);
}

但是当我尝试在事件之外执行相同的代码时

using (ColorImageFrame Image = Sensor.ColorStream.OpenNextFrame(10)) {

}

我收到错误:“设置事件侦听器后无法调用此 API”

我尝试在调用此函数之前删除该事件,但这不会改变任何内容

4

1 回答 1

1

您必须选择事件处理程序或轮询方法。您可以使用该事件并保存最后一帧以在其他地方使用它。

于 2012-08-31T13:03:45.717 回答