我正在尝试使用Kinect SDK在WPF中开发一个基本的照片捕获应用程序。在Kinect_ColorFrameReady事件处理程序中捕获帧看起来很容易,但是我要做的是当用户说“捕获”时捕获帧,这已经在我的Grammar.xml中定义了。然后,我想使用bmp,jpeg等图像扩展名保存它。在下面代码的注释行中,我应该怎么做:
private void speechRecognized(object sender, SpeechRecognizedEventArgs e)
{
recognizedWord = e.Result.Semantics.Value.ToString();
if (recognizedWord == "Capture")
{
// Capture rgb frame?
}
}
最佳答案
您可以使用WriteableBitmap
来显示存储为全局变量的图像。
WriteableBitmap image;
... //write/display bitmap
private void speechRecognized(object sender, SpeechRecognizedEventArgs e)
{
recognizedWord = e.Result.Semantics.Value.ToString();
if (recognizedWord == "Capture")
{
using (FileStream stream5 = new FileStream(filename, FileMode.Create))
{
JpgBitmapEncoder encoder5 = new JpgBitmapEncoder();
encoder5.Frames.Add(BitmapFrame.Create(image));
encoder5.Save(stream5);
stream5.Close();
}
}
}
关于wpf - 如何在SpeechRecognized事件处理程序中保存RGB帧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22194598/