Resources · Interactive tool

COCO keypoint visualizer: pose, check, export.

The 17 COCO person keypoints as a live skeleton. Drag points, flip visibility flags, paste an annotation to see it rendered with every format mistake named, and copy a valid annotation back out. Runs in your browser; nothing is uploaded.

Need the reference instead? The COCO keypoint format lists the order, skeleton and flags.

How it works

Four things you can do here

Drag a point

Every circle is one of the 17 COCO person keypoints, numbered with its 1-based skeleton id. Drag it and the skeleton edges follow; the export on the right updates as you move.

Click to set visibility

Select a point and choose v = 2 (visible), 1 (labeled but occluded) or 0 (not labeled). Occluded points draw in blue with dashed edges; unlabeled points are hollow and export as 0, 0, 0.

Paste an annotation

Drop in a single annotation, a whole COCO JSON file, or a bare array of 51 numbers. The figure re-poses to match and every format problem is named by index: wrong length, a bad visibility flag, a mismatched num_keypoints, a category whose keypoint names are out of order, a 0-based skeleton.

Copy the export

The right-hand panel is a valid COCO annotation for the pose on screen, with num_keypoints and bbox computed. Useful for unit-test fixtures, seeding a dataset, or checking what a correct file looks like.

Array index is 0-based (keypoints[0..16]); skeleton ids are 1-based (1..17). The figure shows ids, the inspector shows both.

Questions

Common questions#

Does this upload my data anywhere?

No. Parsing, rendering and export all run in your browser. Nothing is sent to a server.

Why does my left shoulder show on the right?

COCO sides are the subject’s, not the viewer’s. In a front-facing image the subject’s left shoulder is on the viewer’s right. The checker warns when the shoulders look swapped, since mirrored exports are a common bug.

Which errors does the checker catch?

Wrong keypoints length (not 51), non-numeric values, visibility flags other than 0, 1 or 2, unlabeled points with non-zero coordinates, num_keypoints that does not match the count of v > 0, category keypoint names out of the standard order, and a skeleton that uses 0-based ids.

Can it show more than one person, or another category?

Not yet. It renders the first annotation in a file that has keypoints, and it knows the 17-point person schema only. For real multi-person, multi-category work use the DataTorch annotator, which reads and writes the same format.

On real images

Want to annotate real images this way?

The DataTorch annotator does this on your photos: define the keypoints and skeleton on a label, place points in order with a live overlay, mark occlusion, and import or export COCO keypoints unchanged.

Open the keypoint toolStart free

Tools and community for image annotation: label, review, and share datasets, from everyday photos to the imagery only specialists can read.

Platform

PlatformImaging labsExplore datasetsEnterprisePricing

© 2026 DataTorch. All rights reserved.