C#
Need help with Vitruvius?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.
LightBuzz

Description

A set of easy-to-use Kinect utilities that will speed-up the development of your projects.

218 Stars 82 Forks Apache License 2.0 174 Commits 6 Opened issues

Services available

Need anything else?

Vitruvius

Vitruvius is a set of easy-to-use Kinect utilities that will speed-up the development of your projects. Supports WPF and Windows Store. Requires Kinect 2.

Installation

Grab the package using NuGet

    PM> Install-Package lightbuzz-vitruvius

... and import Vitruvius in your project

    using LightBuzz.Vitruvius;

You'll also need to set the project configuration to Release and the target processor to x64 (preferred) or x86.

Academic & Premium Versions

vitruviuskinect.com

Features

Bitmap Generators

    var bitmap = colorFrame.ToBitmap();
    var bitmap = depthFrame.ToBitmap();
    var bitmap = infraredFrame.ToBitmap();

Bitmap Capture

    bitmap.Save("Capture.png");

Background Removal

    var bitmap = colorFrame.GreenScreen(depthFrame, bodyIndexFrame);

Closest Body

    var body = bodyFrame.Bodies().Closest();

Body Height

    double height = body.Height();

Body Visualization

    viewer.DrawBody(body);

Angles between joints

Angles

    double angle = elbow.Angle(shoulder, wrist);
    double angle = elbow.Angle(shoulder, wrist, Axis.Z);
    double radians = angle.ToRadians();
    double degrees = radians.ToDegrees();

Automatic Coordinate Mapping

    var point = joint.Position.ToPoint(Visualization.Color);

Gesture detection

    void GestureRecognized(object sender, GestureEventArgs e)
    {
       var gesture = e.GestureType;

   switch (gesture)
   {
       case (GestureType.JoinedHands): break;
       case (GestureType.Menu): break;
       case (GestureType.SwipeDown): break;
       case (GestureType.SwipeLeft): break;
       case (GestureType.SwipeRight): break;
       case (GestureType.SwipeUp): break;
       case (GestureType.WaveLeft): break;
       case (GestureType.WaveRight): break;
       case (GestureType.ZoomIn): break;
       case (GestureType.ZoomOut): break;
   }
}

XAML Controls

    KinectViewer        // Displays streams and skeletons.
    KinectAngle     // Displays an arc.
    KinectJointSelector // Allows you to select a joint visually.

Avateering (Academic & Premium Versions)

Avateering

    Avateering.Update(model, body);

Recording & Playback (Academic & Premium versions)

    // Recording
    recorder = new VitruviusRecorder(path);
    recorder.RecordFrame(imageFrame, frameEffect, bodyFrame, faceFrame);

// Playback
player = new VitruviusPlayer(this, StreamFromPlayback, path));
player.SeekFrame(seekDelta);

HD Face with properties (Academic & Premium Versions)

Face

    Face face = faceFrame.Face();
    var nose = face.Nose;
    var mouth = face.Mouth;
    var chin = face.Chin;
    var jaw = face.Jaw;
    var eyeLeft = face.EyeLeft;
    var eyeRight = face.EyeRight;
    var cheekLeft = face.CheekLeft;
    var cheekRight = face.CheekRight;
    var forehead = face.Forehead;

Contributors

License

You are free to use these libraries in personal and commercial projects by attributing the original creator of Vitruvius. Licensed under Apache v2 License.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.