c# Распознавание речи и жестов Kinect не работает вместе

Я пишу код, который использует распознавание речи и жестов. Я использовал код из браузера Kinect Dev toolkit для речи и блога (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();

как-то. Я уже немного отредактировал функцию InitializeKinect из-за того, что KinectStatus не сопоставим (== не работает).

Если я закомментирую OnLoaded или InitalizeKinect в MainWindow(), другой будет работать, а если оба будут раскомментированы, будет работать только речь.

Спасибо за помощь!


person Ben Chang    schedule 10.06.2013    source источник


Ответы (1)


Я ничего не знаю о Kinect, но InitializeKinect похоже, что он находит датчик Kinect и инициализирует механизм SR (скорее всего, используя некоторую информацию о Kinect). Я бы удалил вызов InitializeKinect и добавил

speechRecognizer = CreateSpeechRecognizer();

как раз перед

this.sensorChooser.Start();

person Eric Brown    schedule 10.06.2013