Apr 22

Informatics Image Competition Submissions

Here is a gallery of the images that were submitted to the department of informatics image competition. Full details about the competition can be found at this link.

The KCLBOT 1
The KCLFlyBot
The KCLBOT 2
The KCLBOT 1
The KCLFlyBot
The KCLBOT 2
The KCLBOT 1
The KCLFlyBot
The KCLBOT 2
The KCLBOT 1
The KCLFlyBot
«   »

 

Apr 19

Tutorial: WPF C# Kinect SDK Skeleton Tracking

Tutorial on how to build a WPF application in Visual Studio 2010 using C# and the Microsoft Kinect SDK v1 to stream the RGB depth video source and the skeleton tracking source. The Kinect SDK can be found at the following link.

The following video tutorial shows how to implement wpf kinect skeleton tracking viewer.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using Microsoft.Kinect;

namespace WpfApplicationKinectSkeletonTracking
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            kinectSensorChooser1.KinectSensorChanged += new DependencyPropertyChangedEventHandler(kinectSensorChooser1_KinectSensorChanged);
        }

        void kinectSensorChooser1_KinectSensorChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            KinectSensor oldSensor = (KinectSensor)e.OldValue;
            StopKinect(oldSensor);

            KinectSensor newSensor = (KinectSensor)e.NewValue;

            newSensor.DepthStream.Enable();
            newSensor.SkeletonStream.Enable();

            try
            { newSensor.Start(); }
            catch (System.IO.IOException)
            { kinectSensorChooser1.AppConflictOccurred(); }
        }

        private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            StopKinect(kinectSensorChooser1.Kinect);
        }

        void StopKinect(KinectSensor sensor)
        {
            if (sensor != null)
            {
                sensor.Stop();
                sensor.AudioSource.Stop();
            }
        }
    }
}

The full source code (Kinect_SkeletonTracking)

The additional project required for building this applicationĀ KinectWpfViewers