Hi!
Yesterday the Windows Team announced the preview version of Windows Vision Skills. So today I was browsing the samples in Github and I’ve created a simplified version of the Skeleton tracker using a live feed from a webcam.

Here are some notes about my GitHub sample
- The UWP App must be Windows 10 version 1809
- I added the NuGet packages [Microsoft.AI.Skills.Vision.SkeletalDetectorPreview] and [Microsoft.Toolkit.Uwp.UI.Controls]

- The MainView uses the CameraPreview control from the [Microsoft.Toolkit.Uwp.UI.Controls] toolkit.
- Each frame is processed and I use a SkeletalBinding to detect Skeletons / bodies
- The core detection is performed here
private async Task RunSkillAsync(VideoFrame frame, bool isStream)
{
m_evalPerfStopwatch.Restart();
// Update input image and run the skill against it
await m_skeletalDetectorBinding.SetInputImageAsync(frame);
await m_skeletalDetectorSkill.EvaluateAsync(m_skeletalDetectorBinding);
m_evalPerfStopwatch.Stop();
m_skeletalDetectionRunTime = m_evalPerfStopwatch.ElapsedMilliseconds;
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
m_bodyRenderer.Update(m_skeletalDetectorBinding.Bodies, !isStream);
m_bodyRenderer.IsVisible = true;
UISkillOutputDetails.Text = $"Found {m_skeletalDetectorBinding.Bodies.Count} bodies (took {m_skeletalDetectionRunTime} ms)";
});
}
- There is also a BodyRenderer.cs class used to draw the skeletons on top of the CameraPreview Image control. It draws lines in an empty canvas.
You can download the sample code from here https://github.com/elbruno/Blog/tree/master/20190501%20VisionSkills%20Skeleton%20Sample
Greetings @ Burlington
El Bruno
References
- Windows Blogs, Announcing Windows Vision Skills (Preview) https://blogs.windows.com/buildingapps/2019/04/30/announcing-windows-vision-skills-preview
- GitHub, Windows Vision Skills Preview https://github.com/Microsoft/WindowsVisionSkillsPreview