Human pose estimation has come a long way in the last five years, but surprisingly hasn’t surfaced in many applications just yet. This is because more focus has been placed on making pose models larger and more accurate, rather than doing the engineering work to make them fast and deployable everywhere.
To solve the problems, Google research launched their novel pose detection model, MoveNet, and its new pose-detection API as a javascript library in TensorFlow.js recently. The MoveNet is an ultra fast and accurate model that detects 17 keypoints of a body. MoveNet leverages the best estimation performance of state-of-the-art methods, while keeping inference times as low as possible. It delivers accurate keypoints across a wide variety of poses, environments, and hardware setups.
The model can be accessed by TF Hub which offers two variants: Lightning and Thunder. Lightning is intended for latency-critical applications where speed is essential and slightly lower accuracy is tolerant while Thunder is intended for applications that require high accuracy. Both models run faster than real time (30+ FPS) on most modern equipments including desktops, laptops, and phones.
It proves crucial for live fitness, sports, and health applications, which is achieved by running the model completely client-side, in the browser using TensorFlow.js with no server calls required after the initial page load and no dependencies to install.
Here is a live demo to try out.
A guide to enable MoveNet with TensorFlow.js on your webpage is here.
A tutorial on how to use the MoveNet model can be accessed here.