// Start is called before the first frame update
 void Start()
 {
     Kinect       = KinectSensorManager.instance;
     KinectAction = GetComponent <KinectAction>();
     _bfReader    = Kinect.m_bfReader;
     _sensor      = Kinect.m_Sensor;
 }
 /// <summary>
 /// Initialize Kinect based services.
 /// </summary>
 /// <param name="kinectSensorManager"></param>
 /// <param name="sensor"></param>
 private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
 {
     // configure the color stream
     kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
     kinectSensorManager.ColorStreamEnabled = true;
     // configure the depth stream
     kinectSensorManager.DepthStreamEnabled        = true;
     kinectSensorManager.TransformSmoothParameters =
         new TransformSmoothParameters
     {
         // as the smoothing value is increased responsiveness to the raw data
         // decreases; therefore, increased smoothing leads to increased latency.
         Smoothing = 0.5f,
         // higher value corrects toward the raw data more quickly,
         // a lower value corrects more slowly and appears smoother.
         Correction = 0.5f,
         // number of frames to predict into the future.
         Prediction = 0.5f,
         // determines how aggressively to remove jitter from the raw data.
         JitterRadius = 0.05f,
         // maximum radius (in meters) that filtered positions can deviate from raw data.
         MaxDeviationRadius = 0.04f
     };
     // configure the skeleton stream
     kinectSensorManager.SkeletonStreamEnabled = true;
     // enable the sensor
     kinectSensorManager.KinectSensorEnabled = true;
 }
Exemple #3
0
        private void InitializeKinectServices(KinectSensorManager manager, KinectSensor sensor)
        {
            manager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            manager.ColorStreamEnabled = false;

            manager.DepthStreamEnabled = false;

            manager.SkeletonTransformSmoothParameters = new TransformSmoothParameters
            {
                Smoothing          = 0.5f,
                Correction         = 0.5f,
                Prediction         = 0.5f,
                JitterRadius       = 0.05f,
                MaxDeviationRadius = 0.04f
            };
            manager.SkeletonStreamEnabled = true;

            manager.KinectSensorEnabled = true;

            // skeleton
            sensor.AllFramesReady += OnKinectAllFramesReady;

            // audio
            sensor.AudioSource.AutomaticGainControlEnabled = false;
            sensor.AudioSource.Start();
            sensor.AudioSource.BeamAngleChanged        += OnAudioSourceBeamAngleChanged;
            sensor.AudioSource.SoundSourceAngleChanged += OnAudioSourceSoundSourceAngleChanged;
        }
        public ViewerTool()
        {
            InitializeComponent();

            var desktopWorkingArea = Screen.PrimaryScreen.WorkingArea;

            this.Left = desktopWorkingArea.Right - this.Width - 10;
            this.Top  = desktopWorkingArea.Bottom - this.Height - 10;

            DataContext = this;

            InitializeComponent();

            // initialize the Kinect sensor manager
            KinectSensorManager = new KinectSensorManager();
            KinectSensorManager.KinectSensorChanged += this.KinectSensorChanged;

            // locate an available sensor
            sensorChooser.Start();



            // bind chooser's sensor value to the local sensor manager
            var kinectSensorBinding = new System.Windows.Data.Binding("Kinect")
            {
                Source = this.sensorChooser
            };

            BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);

            // add timer for clearing last detected gesture
            _clearTimer = new System.Timers.Timer(2000);
            //_clearTimer.Elapsed += new ElapsedEventHandler(clearTimer_Elapsed);
        }
Exemple #5
0
        //int skCount = 0;
        public MainWindow()
        {
            ipAddress = LocalIPAddress();
            Console.WriteLine("IP Address: " + ipAddress);

            DataContext = this;

            InitializeComponent();

            // initialize the Kinect sensor manager
            KinectSensorManager = new KinectSensorManager();
            KinectSensorManager.KinectSensorChanged += this.KinectSensorChanged;

            // locate an available sensor
            sensorChooser.Start();

            // bind chooser's sensor value to the local sensor manager
            var kinectSensorBinding = new Binding("Kinect")
            {
                Source = this.sensorChooser
            };

            BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);
            //serialPort1 = new System.IO.Ports.SerialPort("COM6");
            //serialPort1.BaudRate = 9600;

            // HttpUpdateIp(ipAddress);
        }
        /// <summary>
        /// Kinect enabled apps should customize which Kinect services it initializes here.
        /// </summary>
        /// <param name="kinectSensorManager"></param>
        /// <param name="sensor"></param>
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Application should enable all streams first.

            // configure the color stream
            kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            kinectSensorManager.ColorStreamEnabled = true;

            // configure the depth stream
            kinectSensorManager.DepthStreamEnabled = true;
            kinectSensorManager.DepthRange         = DepthRange.Near;

            kinectSensorManager.TransformSmoothParameters =
                new TransformSmoothParameters
            {
                Smoothing          = 0.5f,
                Correction         = 0.5f,
                Prediction         = 0.5f,
                JitterRadius       = 0.05f,
                MaxDeviationRadius = 0.04f
            };

            // configure the skeleton stream
            sensor.SkeletonFrameReady += OnSkeletonFrameReady;
            kinectSensorManager.SkeletonStreamEnabled = true;


            kinectSensorManager.KinectSensorEnabled = true;

            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                // addition configuration, as needed
            }
        }
Exemple #7
0
        // Kinect enabled apps should customize which Kinect services it initializes here.
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Application should enable all streams first.
            kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            kinectSensorManager.ColorStreamEnabled = true;

            sensor.SkeletonFrameReady += this.SkeletonsReady;
            kinectSensorManager.TransformSmoothParameters = new TransformSmoothParameters
            {
                Smoothing          = 0.5f,
                Correction         = 0.5f,
                Prediction         = 0.5f,
                JitterRadius       = 0.05f,
                MaxDeviationRadius = 0.04f
            };
            kinectSensorManager.SkeletonStreamEnabled = true;
            kinectSensorManager.KinectSensorEnabled   = true;

            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                // Start speech recognizer after KinectSensor started successfully.
                this.mySpeechRecognizer = SpeechRecognizer.Create();

                if (null != this.mySpeechRecognizer)
                {
                    this.mySpeechRecognizer.SaidSomething += this.RecognizerSaidSomething;
                    this.mySpeechRecognizer.Start(sensor.AudioSource);
                }

                enableAec.Visibility = Visibility.Visible;
                this.UpdateEchoCancellation(this.enableAec);
            }
        }
Exemple #8
0
        public MainWindow()
        {
            DataContext = this;

            InitializeComponent();

            // initialize the Kinect sensor manager
            KinectSensorManager = new KinectSensorManager();
            KinectSensorManager.KinectSensorChanged += this.KinectSensorChanged;

            // locate an available sensor
            sensorChooser.Start();

            // bind chooser's sensor value to the local sensor manager
            var kinectSensorBinding = new Binding("Kinect")
            {
                Source = this.sensorChooser
            };

            BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);

            // add timer for clearing last detected gesture
            _clearTimer          = new Timer(2000);
            _clearTimer.Elapsed += new ElapsedEventHandler(clearTimer_Elapsed);
        }
Exemple #9
0
        /// <summary>
        /// Initializes a new instance of the KinectWindow class, which provides access to many KinectSensor settings
        /// and output visualization.
        /// </summary>
        public KinectWindow(int index)
        {
            this.Closed   += WindowClosed;
            this.viewModel = new KinectWindowViewModel();

            // The KinectSensorManager class is a wrapper for a KinectSensor that adds
            // state logic and property change/binding/etc support, and is the data model
            // for KinectDiagnosticViewer.
            KinectSensorManager kinectSensorManager = new KinectSensorManager();

            KinectSensorManager.postureIndex1 = index;
            //returnValue

            KinectSensorManager.OnChildReturnValueEventInKinectSessorManager
                += new KinectSensorManager.OnChildReturnValueInKinectSensorManager(cw_returnValueWithClose);

            this.viewModel.KinectSensorManager = kinectSensorManager;



            Binding sensorBinding = new Binding("KinectSensor");

            sensorBinding.Source = this;
            BindingOperations.SetBinding(this.viewModel.KinectSensorManager, KinectSensorManager.KinectSensorProperty, sensorBinding);

            // Attempt to turn on Skeleton Tracking for each Kinect Sensor
            this.viewModel.KinectSensorManager.SkeletonStreamEnabled = true;

            this.DataContext = this.viewModel;

            InitializeComponent();
        }
Exemple #10
0
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            kinectSensorManager.ColorFormat        = config.colorImageFormat;
            kinectSensorManager.ColorStreamEnabled = true;

            kinectSensorManager.DepthStreamEnabled = true;

            kinectSensorManager.TransformSmoothParameters = config.transformSmoothParameters;

            sensor.SkeletonFrameReady += OnSkeletonFrameReady;
            kinectSensorManager.SkeletonStreamEnabled = true;

            kinectSensorManager.KinectSensorEnabled = true;


            server = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
            server.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9999));//绑定端口号和IP


            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                gestureController = new GesturesController();
                gestureController.GestureRecognized += OnGestureRecognized;

                RegisterGestures();
            }
        }
        private void startKinectService(KinectSensorManager kinectSensorManager, Microsoft.Kinect.KinectSensor pluggedKinectSensor)
        {
            pluggedKinectSensor.SkeletonFrameReady += this.skeletonTracking;

            kinectSensorManager.SkeletonStreamEnabled = true;
            kinectSensorManager.KinectSensorEnabled   = true;
        }
 public MainWindow()
 {
     InitializeComponent();
     DataContext = this;
     if (DesignerProperties.GetIsInDesignMode(this))
     {
         // do something special, only for design mode
     }
     else
     {
         KinectSensorManager = new KinectSensorManager();
         KinectSensorManager.KinectSensorChanged += OnKinectSensorChanged;
         _sensorChooser.Start();
         if (_sensorChooser.Kinect == null)
         {
             MessageBox.Show("Unable to detect an available Kinect Sensor");
             Application.Current.Shutdown();
         }
         // Bind the KinectSensor from the sensorChooser to the KinectSensor on the KinectSensorManager
         var kinectSensorBinding = new Binding("Kinect")
         {
             Source = _sensorChooser
         };
         BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);
     }
 }
 void sensorManager_SensorDisconnected(KinectSensorManager obj)
 {
     if (SensorDisconnected != null)
     {
         SensorDisconnected.Invoke();
     }
     destroySpeechEngine();
 }
        /// <summary>
        /// Setup Kinect Services
        /// </summary>
        /// <param name="kinectSensorManager"></param>
        /// <param name="sensor"></param>
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Enable Streams that are being used
            kinectSensorManager.SkeletonStreamEnabled = true;
            kinectSensorManager.DepthStreamEnabled    = true;

            kinectSensorManager.DepthFormat = DepthImageFormat.Resolution640x480Fps30;
        }
Exemple #15
0
 /////////////////////////////
 //
 // 키넥트 초기화
 //
 void kinectInit()
 {
     kinect       = KinectSensorManager.instance;
     connectBody  = GetComponent <KinectConnectBody>();
     MaxBodyCount = kinect.m_Sensor.BodyFrameSource.BodyCount;
     if (BodyArray == null)
     {
         BodyArray = new Body[MaxBodyCount];
     }
 }
        public KinectVoiceRecognizer(String prefix, IEnumerable <Tuple <String, Action> > commands, double sensitivity)
        {
            this.prefix      = prefix + " {0}";
            this.commands    = commands;
            this.sensitivity = sensitivity;

            this.sensorManager                = new KinectMultiSensorManager();
            sensorManager.SensorConnected    += sensorManager_SensorConnected;
            sensorManager.SensorDisconnected += sensorManager_SensorDisconnected;
        }
Exemple #17
0
        private void App_OnStartup(object sender, StartupEventArgs e)
        {
            var kinectSensorChooser = new KinectSensorChooser();
            var kinectSensorManager = new KinectSensorManager();

            var gesturesWithKeys = GesturesRegistry.CreateGesturesWithKeys();

            var playerPreviewViewModel = new PlayerPreviewViewModel(kinectSensorChooser, kinectSensorManager);
            var mainWindowViewModel    = new MainViewModel(kinectSensorChooser, playerPreviewViewModel,
                                                           gesturesWithKeys, kinectSensorManager);

            mainWindow = new MainWindow(mainWindowViewModel);

            playerWindow = new PlayerPreviewWindow(playerPreviewViewModel)
            {
                Topmost            = true,
                WindowStyle        = WindowStyle.None,
                AllowsTransparency = true,
                ShowInTaskbar      = false,
            };

            imageWindow = new ImageWindow
            {
                Topmost            = true,
                WindowStyle        = WindowStyle.None,
                AllowsTransparency = true,
            };

            mainWindowViewModel.GestureRecognized += (_, args) =>
            {
                var imageSource = GetImageForGesture(args.GestureName);
                if (imageSource == null)
                {
                    return;
                }

                imageWindow.ShowImage(imageSource);
            };

            mainWindow.Closed += (_, __) =>
            {
                SaveConfig(gesturesWithKeys, playerPreviewViewModel);
                imageWindow.Close();
                playerWindow.Close();
            };
            mainWindow.Loaded          += (_, __) => SetWindowsOnMainWindowScreen();
            mainWindow.LocationChanged += (_, __) => SetWindowsOnMainWindowScreen();

            LoadConfig(gesturesWithKeys, playerPreviewViewModel);

            mainWindow.Show();
            playerWindow.Show();
        }
Exemple #18
0
        private void OnWindowLoaded(object sender, RoutedEventArgs e)
        {
            IntializeTcpConnection();

            _sensorManager = new KinectSensorManager();
            _sensorManager.KinectSensorChanged += OnKinectSensorChanged;

            _sensorChooser = new KinectSensorChooser();
            _sensorChooser.KinectSensorChanged += OnKinectSensorChoosen;
            _sensorChooser.PropertyChanged     += OnKinectSensorChooserPropertyChanged;
            _sensorChooser.Start();
        }
        void sensorManager_SensorConnected(KinectSensorManager sensorManager)
        {
            destroySpeechEngine();

            Console.WriteLine("{0} Found", sensorManager.Type);

            RecognizerInfo ri = GetKinectRecognizer();

            if (null != ri)
            {
                this.speechEngine = new SpeechRecognitionEngine(ri.Id);

                var choices = new Choices();

                foreach (var command in commands)
                {
                    //Ignore
                    choices.Add(new SemanticResultValue(command.Item1, "IGNORE"));
                    //Require prefix
                    speechActions.Add(command.Item1, command.Item2);
                    choices.Add(new SemanticResultValue(String.Format(prefix, command.Item1), command.Item1));
                }

                var gb = new GrammarBuilder {
                    Culture = ri.Culture
                };
                gb.Append(choices);

                var g = new Grammar(gb);

                speechEngine.LoadGrammar(g);

                speechEngine.SpeechRecognized          += speechEngine_SpeechRecognized;
                speechEngine.SpeechRecognitionRejected += speechEngine_SpeechRecognitionRejected;

                // For long recognition sessions (a few hours or more), it may be beneficial to turn off adaptation of the acoustic model.
                // This will prevent recognition accuracy from degrading over time.
                speechEngine.UpdateRecognizerSetting("AdaptationOn", 0);

                speechEngine.SetInputToAudioStream(sensorManager.startAudioSource(), new SpeechAudioFormatInfo(EncodingFormat.Pcm, 16000, 16, 1, 32000, 2, null));
                speechEngine.RecognizeAsync(RecognizeMode.Multiple);
            }
            else
            {
                //No recognizer
            }

            if (SensorConnected != null)
            {
                SensorConnected.Invoke();
            }
        }
Exemple #20
0
        private void UninitializeKinectServices(KinectSensorManager manager, KinectSensor sensor)
        {
            sensor.AudioSource.Stop();
            sensor.AudioSource.BeamAngleChanged        -= OnAudioSourceBeamAngleChanged;
            sensor.AudioSource.SoundSourceAngleChanged -= OnAudioSourceSoundSourceAngleChanged;

            sensor.AllFramesReady -= OnKinectAllFramesReady;

            manager.ColorStreamEnabled    = false;
            manager.DepthStreamEnabled    = false;
            manager.SkeletonStreamEnabled = false;
            manager.KinectSensorEnabled   = false;
        }
Exemple #21
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            this.cpe.Visibility             = Visibility.Hidden;
            this.flechaIzquierda.Visibility = Visibility.Hidden;

            kinectSensorChooser1.KinectSensorChanged += new DependencyPropertyChangedEventHandler(kinectSensorChooser1_KinectSensorChanged);

            KinectSensor        sensor  = KinectSensor.KinectSensors[0];
            KinectSensorManager manager = new KinectSensorManager();

            manager.KinectSensor = sensor;
            kinectColorViewer1.KinectSensorManager = manager;
        }
Exemple #22
0
 private void Manager_SensorConnected(KinectSensorManager obj)
 {
     lock (activeSensorLock)
     {
         if (activeSensor == null)
         {
             activeSensor = obj;
             if (SensorConnected != null)
             {
                 SensorConnected.Invoke(this);
             }
         }
     }
 }
Exemple #23
0
        /// <summary>
        /// Kinect enabled apps should customize which Kinect services it initializes here.
        /// </summary>
        /// <param name="kinectSensorManager"></param>
        /// <param name="sensor"></param>
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Application should enable all streams first.

            // configure the color stream
            kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            kinectSensorManager.ColorStreamEnabled = true;

            // configure the depth stream
            kinectSensorManager.DepthStreamEnabled = true;

            kinectSensorManager.TransformSmoothParameters =
                new TransformSmoothParameters
            {
                Smoothing          = 0.7f,     //.5
                Correction         = 0.3f,     //.5
                Prediction         = 1.0f,     //.5
                JitterRadius       = 0.05f,    //.5
                MaxDeviationRadius = 1.0f      //.4
            };

            // configure the skeleton stream
            //sensor.SkeletonStream.TrackingMode = SkeletonTrackingMode.Seated;
            sensor.SkeletonFrameReady += OnSkeletonFrameReady;
            kinectSensorManager.SkeletonStreamEnabled = true;

            audioStream  = sensor.AudioSource.Start();
            audioThread  = new Thread(audioReadingThread);
            audioReading = true;
            speechEngine.SpeechRecognized += speechEngine_SpeechRecognized;
            speechEngine.SpeechDetected   += speechEngine_SpeechDetected;
            loadDictionary();
            speechEngine.SetInputToAudioStream(audioStream, new SpeechAudioFormatInfo(EncodingFormat.Pcm, 16000, 16, 1, 32000, 2, null));
            speechEngine.RecognizeAsync(RecognizeMode.Multiple);

            kinectSensorManager.KinectSensorEnabled = true;

            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                // initialize the gesture recognizer
                gestureController = new GestureController();
                //gestureController.GestureRecognized += OnGestureRecognized;

                // register the gestures for this demo
                //RegisterGestures();
            }

            kinectSensorManager.ElevationAngle = (int)10;
        }
Exemple #24
0
    private void Awake()
    {
        instance = this;

        //키넥트센서, 리더 가져오기
        m_Sensor = KinectSensor.GetDefault();
        if (m_Sensor != null)
        {
            m_bfReader = m_Sensor.BodyFrameSource.OpenReader();
            if (!m_Sensor.IsOpen)
            {
                m_Sensor.Open();
            }
        }
    }
Exemple #25
0
        private void InitializeKinect()
        {
            // initialize the Kinect sensor manager
            KinectSensorManager = new KinectSensorManager();
            KinectSensorManager.KinectSensorChanged += this.KinectSensorChanged;

            // locate an available sensor
            sensorChooser.Start();

            // bind chooser's sensor value to the local sensor manager
            var kinectSensorBinding = new Binding("Kinect")
            {
                Source = this.sensorChooser
            };

            BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);
        }
Exemple #26
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            //隐藏道具
            hideFace();
            this.kinectSensorChooserUi.KinectSensorChooser = _kinectSensorChooser;
            sensorManager = new KinectSensorManager();
            _kinectSensorChooser.Start();
            sensorManager.KinectSensorChanged += SensorManager_KinectSensorChanged;
            sensorManager.KinectSensor         = _kinectSensorChooser.Kinect;
            if (sensorManager.KinectSensor != null)
            {
                Console.WriteLine("*** Kinect Ready! ***");
            }
            MessageBox.Show("当前连接的kinect个数:" + KinectSensor.KinectSensors.Count.ToString() + "\nkinctSensorChooser当前状态:" + _kinectSensorChooser.Status + "\nkinect当前状态:" + _kinectSensorChooser.Kinect.Status);

            _kinectSensorChooser.Start();
        }
Exemple #27
0
        // Kinect enabled apps should customize which Kinect services it initializes here.
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Application should enable all streams first.
            kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            kinectSensorManager.ColorStreamEnabled = true;

            sensor.SkeletonFrameReady += this.SkeletonsReady;
            kinectSensorManager.TransformSmoothParameters = new TransformSmoothParameters
            {
                Smoothing          = 0.5f,
                Correction         = 0.5f,
                Prediction         = 0.5f,
                JitterRadius       = 0.05f,
                MaxDeviationRadius = 0.04f
            };
            kinectSensorManager.SkeletonStreamEnabled = true;
            kinectSensorManager.KinectSensorEnabled   = true;

            foreach (var keyValuePair in gestureMap)
            {
                var gesture = keyValuePair.Key;
                var cmd     = keyValuePair.Value;
                gesture.AddListener((s, e) => SendCommand(cmd));
            }

            leftSwipeRight.AddListener((s, e) => swipeThrottle.Push(Swipe.lr));
            rightSwipeLeft.AddListener((s, e) => swipeThrottle.Push(Swipe.rl));
            rightSwipeRight.AddListener((s, e) => swipeThrottle.Push(Swipe.rr));
            leftSwipeLeft.AddListener((s, e) => swipeThrottle.Push(Swipe.ll));

            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                // Start speech recognizer after KinectSensor started successfully.
                this.mySpeechRecognizer = SpeechRecognizer.Create();

                if (null != this.mySpeechRecognizer)
                {
                    this.mySpeechRecognizer.SaidSomething += this.RecognizerSaidSomething;
                    this.mySpeechRecognizer.Start(sensor.AudioSource);
                }

                enableAec.Visibility = Visibility.Visible;
                this.UpdateEchoCancellation(this.enableAec);
            }
        }
        /// <summary>
        /// Kinect enabled apps should customize which Kinect services it initializes here.
        /// </summary>
        /// <param name="kinectSensorManager"></param>
        /// <param name="sensor"></param>
        private void InitializeKinectServices(KinectSensorManager kinectSensorManager, KinectSensor sensor)
        {
            // Application should enable all streams first.

            // configure the color stream
            kinectSensorManager.ColorFormat        = ColorImageFormat.RgbResolution640x480Fps30;
            kinectSensorManager.ColorStreamEnabled = true;

            // configure the depth stream
            kinectSensorManager.DepthStreamEnabled = true;

            kinectSensorManager.TransformSmoothParameters =
                new TransformSmoothParameters
            {
                Smoothing          = 0.7f,     //.5
                Correction         = 0.3f,     //.5
                Prediction         = 1.0f,     //.5
                JitterRadius       = 0.05f,    //.5
                MaxDeviationRadius = 1.0f      //.4
            };

            // configure the skeleton stream
            //sensor.SkeletonStream.TrackingMode = SkeletonTrackingMode.Seated;
            sensor.SkeletonFrameReady += OnSkeletonFrameReady;
            kinectSensorManager.SkeletonStreamEnabled = true;

            audioStream       = kinectSensorManager.KinectSensor.AudioSource.Start();
            this.audioReading = true;
            this.audioThread  = new Thread(AudioReadingThread);
            this.audioThread.Start();

            kinectSensorManager.KinectSensorEnabled = true;

            if (!kinectSensorManager.KinectSensorAppConflict)
            {
                // initialize the gesture recognizer
                gestureController = new GestureController();
                gestureController.GestureRecognized += OnGestureRecognized;

                // register the gestures for this demo
                RegisterGestures();
            }

            kinectSensorManager.ElevationAngle = (int)10;
        }
Exemple #29
0
        public MainWindow()
        {
            this.kinectSensorManager = new KinectSensorManager();
            this.kinectSensorManager.KinectSensorChanged += this.KinectSensorChanged;
            this.DataContext = this.kinectSensorManager;
            InitializeComponent();

            this.SensorChooserUI.KinectSensorChooser = sensorChooser;
            sensorChooser.Start();

            // Bind the KinectSensor from the sensorChooser to the KinectSensor on the KinectSensorManager
            var kinectSensorBinding = new Binding("Kinect")
            {
                Source = this.sensorChooser
            };

            BindingOperations.SetBinding(this.kinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);

            this.RestoreWindowState();
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            // initialize the Kinect sensor manager
            KinectSensorManager = new KinectSensorManager();
            KinectSensorManager.KinectSensorChanged += new EventHandler <KinectSensorManagerEventArgs <KinectSensor> >(KinectSensorManager_KinectSensorChanged);


            //this.SensorChooser.KinectChanged += new EventHandler<KinectChangedEventArgs>(SensorChooser_KinectChanged);

            // Starts the Kinect discovering process.
            this.SensorChooser.Start();

            // bind chooser's sensor value to the local sensor manager
            var kinectSensorBinding = new Binding("Kinect")
            {
                Source = this.SensorChooser
            };

            BindingOperations.SetBinding(this.KinectSensorManager, KinectSensorManager.KinectSensorProperty, kinectSensorBinding);
        }