About Pose Estimator
This pose estimator is free, needs no sign-up and runs in your browser, so your photos and camera frames are never uploaded. Add a picture of a person, or start your webcam, and it finds 33 body landmarks, draws the skeleton on top, and lists every landmark in a table below.
It uses the MediaPipe Pose Landmarker with the BlazePose lite model, from Google, released under Apache-2.0. It tracks 33 landmarks joined by 35 bones: the face points, shoulders, elbows, wrists, hands, hips, knees, ankles and feet. The lite model file is about 5.8 MB and the MediaPipe runtime adds about 13 MB, so the card shows about 19 MB in total. The runtime is served by tool.ulkaa.com itself and only the model file comes from Google model storage, once, and your browser may cache both.
The table gives each landmark a name, an x and y position as a fraction of the picture (0 at the left or top, 1 at the right or bottom), a depth value z, and a visibility score that says how sure the model is that the joint is in view. Joints that are hidden or cut off by the frame are left out of the drawing. You can copy the table as CSV.
The lite model follows one person, the most prominent one in the frame. It is a good fit for demonstrations, exercise form checks and learning how pose estimation works. It is not a medical or sports measurement tool, and a flat picture cannot give true joint angles.
How to use Pose Estimator
- Choose Image or Webcam as the source.
- The small model starts loading in the background when the page opens, unless Data Saver is on, and the card shows its progress and tells you when you can start.
- Add a picture of a person by dropping it, tapping the box, pasting it or using the phone camera, or press Start camera.
- Read the skeleton drawn on the picture. Green lines are bones and yellow dots are joints.
- Open the landmark table underneath for names, positions and visibility. Press the copy button for CSV.
- Lower Minimum confidence if no person is found, then press Download PNG to save the picture with the skeleton.
Features
- 33 body landmarks with bones drawn between them.
- A landmark table with name, x, y, depth and visibility, copyable as CSV.
- Image input by drop, file choice, paste or phone camera, plus a live webcam mode.
- The webcam loop draws straight to the canvas, so the page is not re-rendered for every frame. The table updates about four times a second.
- An adjustable minimum confidence.
- Joints with low visibility are not drawn, so the skeleton does not guess through hidden limbs.
- Download of the picture with the skeleton as a PNG.
- Nothing is uploaded: the models are the only downloads.
Worked examples
Landmarks and bones in the model gives 33 landmarks, 35 bones
Landmark 0 is the nose, 11 and 12 are the shoulders, 23 and 24 are the hips and 31 and 32 are the foot tips.
Two landmarks as CSV gives 0,nose,0.5000,0.2000,-0.1000,0.990 / 1,left eye (inner),0.5200,0.1800,-0.1200,0.970
The header row is: index,name,x,y,z,visibility. x and y are fractions of the picture.
A person standing with one arm raised gives A 33-point skeleton with the raised arm drawn upward
Illustrative. Check the picture you add for the real result.
Good to know
What the numbers mean
x and y are normalised: x runs from 0 at the left edge to 1 at the right, y from 0 at the top to 1 at the bottom. Multiply by the picture width and height to get pixels. z is a relative depth with the hips as the origin, where smaller values are closer to the camera. It is an estimate from a single flat picture, not a measurement.
Visibility is the model confidence that a landmark is in frame and not hidden. A low value means the position is a guess.
Limits of the lite model
The lite model trades accuracy for speed so that it runs well on a phone. It can wobble on fast movement, lose joints that are hidden behind the body, and mistake clothing or furniture for limbs. It tracks one person only.
Privacy: how it works
- Pictures and camera frames are processed in your browser and are never uploaded. The camera stream is not recorded or stored and stops when you press Stop camera or leave the page.
- Two downloads are needed: the BlazePose lite model (about 5.8 MB) from Google model storage, and the MediaPipe runtime (about 13 MB) from tool.ulkaa.com itself. Neither request contains your pictures.
Tips
- Stand so your whole body is in the frame, with some space around you.
- Good, even light and a plain background give the steadiest skeleton.
- A side view hides one arm and one leg. Face the camera if you want all four limbs.
- Copy the CSV into a spreadsheet to plot or compare poses.
Frequently asked questions
Is it really free?
Yes. There is no price, no trial and no credit card. Ulkaa Tool does the work with your own device, so there is no server bill to pass on to you.
Do I need an account?
No. There is no sign-up and no login. Open the page and use it. An Ulkaa account is not needed for anything on this tool.
Does it run in my browser?
Yes. Your pictures and camera frames are processed by code running in your browser tab, on your own device.
Is my data uploaded?
No. Your pictures and camera frames are never sent to Ulkaa or to anyone else. You can check this yourself by watching the Network tab in your browser developer tools while you use the tool.
How many landmarks does it find?
33 body landmarks, joined by 35 bones in the drawing.
Which model does it use?
MediaPipe Pose Landmarker with the BlazePose lite model, from Google, under Apache-2.0.
Can it track more than one person?
This page tracks one person, the most prominent in the frame.
Can I use the result for exercise or medical advice?
No. It is a demonstration of pose estimation. A flat picture cannot give reliable joint angles, so it is not a substitute for a coach or a clinician.
What is downloaded, and from where?
The 5.8 MB model comes from Google model storage, and the 13 MB MediaPipe runtime is served by tool.ulkaa.com itself. Your pictures are never part of those requests.
Why is a joint missing from the skeleton?
Joints with a visibility score under 30 percent are not drawn, because the model is not sure they are in view.