Back to home

PersonAnalysis

Recognize people with face and body cues

Detect people, match registered identities with face features first, and use body re-identification as a fallback when face matching is unavailable. Evaluate locally with the Python SDK.

Non-commercial academic research only. Commercial use requires a license.

  • Python SDK
  • CPU / CUDA
  • Cheetah S / L
Workflow illustrationPersonAnalysis

01Registered reference

02Face match

03Body fallback

Illustration of the same identity in different frames. This is a workflow diagram, not a live demo or a performance result.
No matchperson_id = None

Core capabilities

Three capabilities in one analysis workflow

01

Detect people

Locate people in each image and associate detected faces with their bodies for subsequent identity matching.

02

Match faces first

Compare face features against registered references. Face matching takes priority when a suitable match is available.

03

Use body cues as a fallback

Compare body appearance with stored references when face matching is unavailable. Clothing, viewpoint and occlusion can affect the result.

Identity matching

Register, match and update references

Your application supplies identities and reference images. PersonAnalysis compares detections against the gallery held by the current instance.

  1. Register a reference

    Add a reference image with an identity label to the in-memory gallery.

  2. Analyze and match

    Run get() on an image, then match() to compare detections with registered identities.

  3. Update the gallery

    After a reliable face match and a clear association between face and body, use update() to add a body reference.

Cheetah model packs

Choose a model pack for your evaluation

Two public packs combine person detection, face recognition and body ReID. Both support local inference with CPU or CUDA.

Cheetah S

CPU / CUDA

27.1 MBDownload size

Compact pack for local evaluation.

Person detector
pp_det_small_320.onnx
Face recognition
MobileFaceNet
Body ReID
reid_0265 · 256D

Cheetah L

CPU / CUDA

211.5 MBDownload size

Larger person detection and face recognition models.

Person detector
pp_det_med.onnx
Face recognition
ResNet50
Body ReID
reid_0265 · 256D

Both packs share reid_0265 with 256-dimensional body features. Public model weights are for non-commercial academic research only; commercial use requires a separate model license.

Local integration

Start with the Python SDK

PersonAnalysis is available in insightface 2.1 on PyPI. Use CPU or CUDA inference and connect the results to your application's own identity and storage logic.

python -m pip install --upgrade "insightface==2.1"
Read the setup guide

A multilingual desktop tool also supports local video, cameras and RTSP streams.

Python quick start

person_analysis.py
1import cv2
2from insightface.app import PersonAnalysis
3
4with PersonAnalysis(name="cheetah_s") as app:
5 registration = app.register("person_001", "reference.jpg")
6 if registration.accepted == 0:
7 raise ValueError(registration.rejected)
8
9 image = cv2.imread("scene.jpg")
10 if image is None:
11 raise FileNotFoundError("scene.jpg")
12
13 matches = app.match(app.get(image))
14 for result in matches:
15 print(result.person_id, result.matched_by)

Current scope

  • No continuous tracking, anonymous IDs or historical event records are provided.

  • The reference gallery lives in the current instance's memory. A persistent identity database must be managed by your application.

  • Body ReID depends on appearance; changes in clothing, occlusion and camera viewpoint can affect matching.

Before you integrate

How does it differ from face analysis?

PersonAnalysis adds person detection and body ReID to face-based identity matching. It associates faces with bodies and prioritizes face matches against your registered references.

Does it track people across a video?

It analyzes images and matches registered identities. Continuous tracking, anonymous track IDs and event history are outside the current scope.

Can I use the public models commercially?

The code is MIT-licensed. Public Cheetah model weights are for non-commercial academic research only. Commercial use requires a separate model license; contact us to discuss licensing and deployment terms.

What should I evaluate on my data?

Check detection and matching under your camera angles, face visibility, clothing changes and occlusion. Calibrate thresholds on representative inputs and measure processing speed on your target hardware.

Evaluate Person Analysis for your application

Share your input sources, deployment environment and commercial requirements to discuss model licensing and integration.