c# Kinect 语音和手势识别不能一起工作

Posted

技术标签:

【中文标题】c# Kinect 语音和手势识别不能一起工作【英文标题】:c# Kinect speech and gesture recognition not working together 【发布时间】:2013-06-10 13:46:59 【问题描述】:

我正在编写一个同时使用语音和手势识别的代码。我使用 Kinect Dev 工具包浏览器中的代码进行语音和有关手势控制的博客 (http://dotneteers.net/blogs/vbandi/archive/2013/03/25/kinect-interactions-with-wpf-part-i-getting-started.aspx)。我遇到的问题是我认为初始化相互干扰。

private KinectSensor InitializeKinect()
    

        CurrentSensor = KinectSensor.KinectSensors.FirstOrDefault();
        speechRecognizer = CreateSpeechRecognizer();
        CurrentSensor.Start();
        Start();
        return CurrentSensor;
    

干扰

private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
    
        this.sensorChooser = new KinectSensorChooser();
        this.sensorChooser.KinectChanged += SensorChooserOnKinectChanged;       
        this.sensorChooserUi.KinectSensorChooser = this.sensorChooser;
        this.sensorChooser.Start();

不知何故。由于 KinectStatus 无法比较(== 不起作用),我已经稍微编辑了 InitializeKinect 函数。

如果我在 MainWindow() 中注释掉 OnLoaded 或 InitalizeKinect,另一个将起作用,如果两者都未注释掉,则只能使用 Speech。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

对 Kinect 一无所知,但是 - InitializeKinect 似乎正在寻找 Kinect 传感器初始化 SR 引擎(很可能使用一些 Kinect 信息)。我会删除 InitializeKinect 调用并添加

speechRecognizer = CreateSpeechRecognizer();

就在之前

this.sensorChooser.Start();

【讨论】:

以上是关于c# Kinect 语音和手势识别不能一起工作的主要内容,如果未能解决你的问题,请参考以下文章

Kinect 360 可以做手势识别吗?

Kinect 常用识别手势

Kinect for Unity3D开发 之 手势/姿势(Gesture)识别基础知识

Unity/Kinect手势识别Gesture

手势识别--手势基本概念和ChaLearn Gesture Challenge

Ubuntu 18.04/20.04 CV环境配置(下)--手势识别TRTpose+Kinect DK人体骨骼识别