Skeleton Tracking SDK for Intel® RealSense™ Depth Cameras Buy Skeleton Tracking SDK by Cubemos The Skeleton Tracking SDK is designed to offer deep learning based 2D/3D full body tracking to applications for embedded and cost friendly hardware: Runs on Windows and Linux using C, C++, C#, Python and within Unity. Fast and highly accurate 2D and 3D human pose estimation with 18 joints. No dedicated GPU needed: Real-time performance for video streams on edge hardware. and more... Try for 30 days for free! Thank you! Your software is on its way!You will receive a download link along with a trial license key in your email. Try for free Easy start One single installer for all relevant dependencies. One license file for all applications to ensure convenient deployment. Try for 30 days for free! Thank you! Your software is on its way!You will receive a download link along with a trial license key in your email. Try for free → Cross-platform C, C++, C# and Python interfaces for both Windows and Linux applications are included. Unity wrapper is also provided. Getting started guide → Less than 30 minutes Use our quick installation guide to get you up and running with the skeletal tracking in less than 30 minutes. Quick installation → See it in action See it in action — Ready for C, C++, C#, Python or Unity application development — Sample application code included — Real-time on embedded and cost friendly hardware — No dedicated GPU needed to run deep learning model behind — Convenient deployment with the same license code for all your devices — Automatic license activation for your users and your headless devices Buy 18 points of tracking. Our Skeletal Tracking SDK allows tracking of 18 joints simultaneously. Thanks to our AI algorithms this tracking is available for up to 5 people in a scene. Demo Demo Tracking ON Off Right eye Right eye Left eye Left eye Left ear Left ear Right ear Right ear Nose Right shoulder Right shoulder Left shoulder Left shoulder Left elbow Left elbow Right elbow Right elbow Right wrist Right wrist Left wrist Left wrist Left hip Left hip Right hip Right hip Right knee Right knee Left knee Left knee Left ankle Left ankle Right ankle Right ankle Spine Spine Less than 10 lines of code to start. That's it. The Skeleton Tracking SDK provides for both Windows and Linux a C, C++, C# and Python API. Using the C‑API it is also possible to develop your own custom wrapper. Our APIs offer Skeleton Tracking implementation with less than 10 lines of code. Quick start guide C++ Code Sample C# Code Sample Python Code Sample C++ Code Sample // Read an RGB image of any size cv::Mat image = cv::imread("/path/to/some/image.jpg"); CM_Image img{ (void*)(image.data), CM_UINT8, image.cols, image.rows, image.channels(), (int)image.step[0], CM_HWC }; // Declare results container CM_SKEL_Buffer skeletonKeypoints; CM_SKEL_Handle* handle = nullptr; CM_TargetComputeDevice enInferenceMode = CM_TargetComputeDevice::CM_CPU; // Create cubemos API handle for Intel Inference Plugin and specify the valid cubemos license folder cm_skel_create_handle(&handle, default_license_dir().c_str()); // Load the CPU model std::string modelName = default_model_dir() + "/fp32/skeleton-tracking.cubemos"; cm_skel_load_model(handle, enInferenceMode, modelName.c_str()); // Send inference request and get the skeletons cm_skel_estimate_keypoints(handle, &img, /* network height*/ 128, &skeletonKeypoints); C# Code Sample // Read an RGB image of any size System.Drawing.Bitmap image = new System.Drawing.Bitmap(Common.DefaultResDir() + "\\images\\skeleton_estimation.jpg"); // Decalre results container System.Collections.Generic.List<Cubemos.SkeletonTracking.Api.SkeletonKeypoints> skeletonKeypoints; // Create cubemos API handle for Intel® Inference Plugin and specify the folder with the license key var skeletontrackingApi = new Cubemos.SkeletonTracking.Api(Common.DefaultLicenseDir()); // Load the CPU model skeletontrackingApi.LoadModel(Cubemos.TargetComputeDevice.CM_CPU, Common.DefaultModelDir() + "\\fp32\\skeleton-tracking.cubemos"); // Send inference request and get the poses skeletontrackingApi.RunSkeletonTracking(ref image, 128, out skeletonKeypoints); Python Code Sample #Read an RGB image of any size img = cv2.imread(args.image) #initialize the api with a valid license key in default_license_dir() api = Api(default_license_dir()) model_path = os.path.join( sdk_path, "models", "skeleton-tracking", "fp32", "skeleton-tracking.cubemos" ) api.load_model(CM_TargetComputeDevice.CM_CPU, model_path) #perform inference skeletons = api.estimate_keypoints(img, 192) Pricing 2D/3D Skeletal Tracking Full Functionality Linking to sensor Duration C / C++ / C# support Python support Unity wrapper Custom wrappers Custom features Support Dedicated manager Trial Free 2D/3D Skeletal Tracking + Full Functionality + Linking to sensor + Duration 30 Days C / C++ / C# support + Python support + Unity wrapper + Custom wrappers - Custom features - Support - Dedicated manager - Try Full $75 2D/3D Skeletal Tracking + Full Functionality + Linking to sensor + Duration Perpetual C / C++ / C# support + Python support + Unity wrapper + Custom wrappers - Custom features - Support + Dedicated manager - Buy now Enterprise Contact us 2D/3D Skeletal Tracking + Full Functionality + Linking to sensor + / Options Duration Perpetual / Options C / C++ / C# support + Python support + Unity wrapper + Custom wrappers + Custom features + Support + Dedicated manager + Contact us Frequently Asked Questions Does the Skeleton Tracking SDK work on Windows and Linux? The SDK supports Windows and Linux. For both a C/C++ and Python wrapper is included. For Windows a C# and Unity integration is provided. Does the Skeleton Tracking SDK work in real-time? Yes, we offer the most performant Skeleton Tracking for applications running on Intel® based devices. This enables real-time applications even on edge devices. How can I start using SDK with the Intel® RealSense™ depth cameras? Working sample applications and source code are included for C# and C++. Does the pose estimation work in 2D and 3D? Yes. The pose estimation works in 2D and 3D. 3D pose estimation requires 3D camera hardware. How many people can be tracked? Technically unlimited. However, for applications with more than 5 people, we suggest avoiding skeletons occluding each other. Why is the SDK fast enough to run realtime on edge devices? The underlying AI model is optimized to provide the best performance on Intel® CPUs and VPUs. This means the SDK is suitable for real-time applications even on edge devices. Is the license time-bound? No, you buy lifetime licenses. One license for each device you run the Skeleton Tracking SDK on. Do you have a Unity integration? Yes, Unity packages wrapping the SDK functionality are included and can be imported into Unity. Why do I get one license key, even If I purchased more than one? You will always get one license key. The number of licenses in the basket allows you to activate this amount of devices running the Skeleton Tracking SDK. This enables convenient automated deployment processes for applications running on numerous edge devices. Support Direct support for users of the Skeleton Tracking SDK is provided by our partner cubemos*. If you have a question or run into any issues, please reach out. Skeleton Tracking SDK Support by cubemos Please fill in the form below. Name* First Last Email* Order number*Question / Issue*File Drop files here or Accepted file types: jpg, png, gif. CAPTCHA Get support Get the latest computer vision news Country/Region * Afghanistan Aland Islands Albania Algeria American Samoa Andorra Angola Anguilla Antarctica Antigua and Barbuda Argentina Armenia Aruba Australia