AI Solutions / Demographics

Age and gender
estimation for Japanese faces,
entirely inside the camera.

Measuring signage advertising, analysing passengers on public transport, profiling store visitors. ailia provides its own model for turning "what kind of people came" into numbers. It keeps working when the subject wears a face mask, and because inference finishes on the device, camera images never have to leave it.

  • Handles Japanese faces
  • Works with masks on
  • 7.4 ms per face on CPU
  • Available only with the ailia SDK

Try it in your browser before you evaluate anything

The same model runs inside the browser through ailia.js. Load an image or connect a webcam and you see real estimates immediately — you can check accuracy against your own capture conditions before you scope a PoC.

Nothing is uploaded. Inference runs entirely in the browser via WebAssembly. The demo also overlays what the model is actually shown — the blacked-out background and mask — so you can see why a given estimate came out the way it did.

Open the live demo
DEMO

Image generated with Adobe Firefly

  • RuntimeBrowser (WebAssembly)
  • InputImage file / webcam
  • Frame rate~13 fps (1280×720, Chrome, CPU)
  • Image uploadNone — stays on the device

Three places that need to know what kind of people showed up

Demand for demographic estimation is growing across advertising, transport and retail.

01

Retail media and digital signage

Explain advertising performance in terms of who actually watched

Signage can already count passers-by, but not who they were or how long they looked — which is one of the reasons advertisers stay cautious about the channel. Adding demographic estimation to the camera under the display produces an age and gender breakdown per slot, which supports both rate-card justification and time-of-day creative rotation.

  • Audience demographics reported per advertising slot
  • Real-time creative selection driven by estimated attributes
  • In-store signage matched against POS data for attribution

Why this model fits A high-performance GPU is not available in a signage set-top box. 7.4 ms per face on CPU alone means demographic estimation can be added without replacing the enclosure. Not dropping mask wearers also matters directly to the numbers in markets where masks are common in store.

02

Passenger analysis for buses and rail

Replace manual boarding surveys with a measurement that does not drift

Boarding surveys have traditionally relied on surveyors judging age from appearance, which means the criteria shift from person to person. Automating the estimate from an on-board camera makes the criteria constant and lets every service on every day be measured continuously — usable as evidence for route planning and as media data for in-vehicle advertising.

  • Continuous boarding counts and demographic splits by stop and by hour
  • Lower survey labour cost, and consistent criteria
  • Media data for in-vehicle signage and transit advertising

Why this model fits Streaming video from a moving vehicle to the cloud is not viable on cost or reliability. The architecture has to finish inference inside the on-board unit and send only aggregates. The ailia SDK supports a wide range of environments, automotive SoCs included, so it drops into existing units.

03

Store visitor analysis

See the people the POS never records — the ones who did not buy

A POS records buyers only. People who walked in and left, or stopped at a shelf without picking anything up, leave no trace. Capturing visitor demographics at the entrance and in the aisles turns the gap between intended target and actual footfall, the shift in customer mix through the day, and the pulling power of each area into numbers you can work with.

  • Age and gender mix of entrants, and how it moves by hour
  • Detecting divergence between intended target and actual visitors
  • Comparing which areas and fixtures attract which segments

Why this model fits Across a chain, per-store hardware cost is the whole investment. A model that runs on a general-purpose CPU is an alternative to swapping every store over to dedicated AI cameras. We also supply the model for integration into system integrators' own solutions.

The gaps a general-purpose model leaves, closed by design

Most published age and gender models are trained mainly on Western faces and do not consider masks. Deployed as-is in Japan, two problems appear: ages are guessed too young, and accuracy drops sharply once a mask is on. This model treats both as design requirements.

Tuned for Japanese faces

Trained largely on Asian face imagery and validated against a Japanese evaluation set with true-age labels. The bias towards heavily underestimating older subjects — common in general-purpose models — is much smaller, and the per-decade error stays centred even above 60. The training data also includes Western face imagery.

Keeps working with masks on

It keeps working with a face mask on. Rather than discarding mask wearers as unmeasurable, the model still returns age and gender. Gender accuracy drops by only 1.0–3.3 points with a mask, against 10.5–18.5 points for a general-purpose model under the same conditions.

Minimal influence from the background

Only the face is used. The background region is removed inside the model before age and gender are estimated, so results hold up as location and lighting change.

Edge-only. Images never leave

Inference completes on the device, so camera images never need to reach the cloud. Because you can keep aggregates without retaining the source frames, it is straightforward to build a system in line with the principle set out in the Japanese government's Camera Image Utilisation Guidebook: discard the original image promptly once the necessary data has been derived from it.

Fast enough on CPU alone

7.4 ms per face on four CPU threads. Against a high-accuracy reference model (MiVOLO) measured under identical conditions, that is roughly 35× the speed — at equal accuracy without masks, and better accuracy with them. CPU alone is fast enough to drop into existing hardware, and where an NPU or GPU is present the ailia SDK uses it to go further.

Available only with the ailia SDK

Developed in-house and available only through the ailia SDK. The same API runs on Windows, Linux, macOS, iOS, Android, embedded Linux and the browser via ailia.js, so a configuration validated on a PC carries over to the production device unchanged.

Measured on a Japanese evaluation set

Measured on an evaluation set of 409 Japanese faces with true-age labels. None of the three models were trained on it. The same faces, the same synthetic masks and the same metrics were used, all measured in a single run.

Age MAE (mean absolute error in years, lower is better) and gender accuracy (measured by ailia)
Model Condition Age MAE Gender acc. ms / face
ailia (this model) No mask 6.89 95.35% 4.4
Masked 8.29 93.15%
MiVOLO No mask 7.30 94.87% 154.3
Masked 9.16 93.15%
age-gender-recognition-retail-0013 No mask 14.44 90.95% 0.9
Masked 18.03 75.55%

Accuracy depends heavily on capture conditions — camera placement, field of view, lighting and face resolution. For expected accuracy in a real deployment, talk to us with your installation details.

Technical specification

Pipeline

  1. Face detectionBlazeFace (back, 256px)
  2. AlignmentSimilarity transform from keypoints
  3. SegmentationBackground removed to improve generalisation
  4. EstimationAge, gender and mask presence output together

Model

Outputs
Age (continuous, 0–100), gender, mask presence
Age head
Expectation over a 101-bin distribution, one bin per year (DEX)
FLOPs
2.155 GFLOPs
Input
128 × 128 aligned crop
Format
Single ONNX graph, segmentation fused in
Availability
ailia SDK only

Environment

OS
Windows / Linux / macOS / iOS / Android / embedded Linux
Browser
ailia.js (WebAssembly)
Compute
Runs on CPU alone; GPU / NPU acceleration also supported
Languages
C++, C#, Python, JavaScript, Java, Rust and more

See the ailia SDK page for the full list of supported environments.

Start by testing it against your own footage

The browser demo runs immediately, with no sign-up. We are also happy to discuss accuracy validation for a specific installation, integration into a system integrator's own solution, and whether it is feasible on your existing cameras and enclosures.