Video AI for Public Safety

PhD Candidate · HAVA Lab · VIS Lab

University of Amsterdam Vrije Universiteit Amsterdam VIS Lab, University of Amsterdam
HAVA

Ruthu

Master'sArtificial Intelligence
Bachelor'sArtificial Intelligence

Mapping tea plantations at scale to track human–elephant conflict as elephants migrate through farmers' tea plantations.

Migration
!
Conflict

HAVA Lab

MLMarie Lindegaard
Marie LindegaardCriminology, UvA
CSCees Snoek
Cees SnoekComputer Vision, UvA
CriminologyRuthuEthicsLawNeuroscienceSurgeryDentistryBusinessHumanAlignedVideo AI

What does it give?

What is a computer vision model?

A busy city street with motorcyclists, cars and apartment buildings
5951167135133143
6610862273878
816658292427
775671272029
435091612129
1257655204532
The red patch, as numbers (brightness 0–255). To a computer, an image is just numbers.

Photo from COCO val2017 (image 296649), via Flickr, CC BY-NC-ND 2.0. Shown unmodified.

f(x; θ)
0.70.21.2-2.01.2-1.3-1.31.2-2.02.1-2.0-2.00.20.20.70.7
-2.00.7-2.01.8-1.3-2.01.21.80.12.12.1-0.41.8-0.4-1.3-0.9
1.80.1-1.3-2.01.81.8-2.0-1.3-0.4-1.3-0.40.1-0.91.80.1-2.0
h1 = ReLU(W1x + b1)
h2 = ReLU(W2h1 + b2)
⋮
words = decode(hL)
θ = millions to billions of learned numbers
Output: text
People are walking and riding motorcycles on the street
One of five human-written captions for this photo.
The output could also be a number, a label, a box…

Collected from yesterday's talks and general listening in on social science conversations

Gaze-LLE demo: arrows from each person's head to where they look
Gazing · Gaze-LLEDemo from the project page
OpenPose demo: skeletons drawn on dancing people
Pose · OpenPoseDemo from the project page
DM-Count demo: a crowd photo turned into a density map and a people count
Counting people · DM-CountDemo from the project page

Exploring how to use these

SocialsciencesAI

Co-creating AI specifically for social sciences video analysis

Lisa project

Paulina Gastl, Dennis Koelma, Ruthu Rooparaghunath, Marie Lindegaard, Lasse Liebst

The dataset at a glance

420videos
18days
24cameras
108hours

Real CCTV footage is not displayed

to maintain data privacy.

Representative CCTV-like videos from the ShanghaiTech Campus dataset are used as proxies throughout, with the same models run on them.

Qwen3.8

Released August 2026

The best video model so far

Inter-coder reliability

Human–human

84%

Human–AI

80%
example numbers
From a real study: Marie’s CCTV social-distancing paper (Krippendorff’s α)
Human–humanHuman–AI
Counting people0.980.85
Spotting <1.5 m violations0.930.85 (0.84 on new frames)
The first AI version scored only 0.52 on violations, and rose to 0.85 after the distance estimate was improved. Krippendorff: α above 0.80 is reliable, 0.67–0.80 tentative.
Bernasco, Hoeben, Koelma, Liebst, Thomas, Appelman, Snoek & Lindegaard (2023), “Promise Into Practice”, Sociological Methods & Research 52(3): 1239–1287. Human–human: 221 double-coded still frames.

In context: who was unclear vs. clear (full-res labels)

unclear (U)man (M)woman (W)
L2 · 12 unclear
R4 · 1 man, 48 unclear
L1 · 2 unclear
L5 · 15 unclear
R3 · 3 man, 5 unclear
L6 · 13 unclear

How is data kept secure?

SECURE Secure room at the VU the data is stored on this computer sent to SNELLIUS SUPERCOMPUTER Inside the supercomputer: a GPU GPU Qwen downloaded . . Wiped within 2 s ✓ wiped
Wiped from the GPU within 2 seconds, as soon as it has been read.

Computer vision as a filter

Illustrative numbers: 1000 body-camera videos, but we only care about some of them.

1000 body-camera videos
340 remain
90 to review
More than one police officer
✗ 1 officer: out
✓ 2+ officers: kept
Crowds
✗ no crowd: out
✓ crowd: kept

Touch detection: asking Qwen where people touch

A man and a woman hugging in a restaurant
contact area
Photo: COCO val2017 #6763 via Flickr, CC BY-NC-SA 2.0 (unmodified; the box is drawn on top).
Qwen’s response (verbatim)
What is happening

A man and a woman are posing together for a photo, smiling at the camera. The man has his arm around the woman's shoulder, and they are both leaning in close to each other.

Where the touch is

The man's right hand is on the woman's left shoulder, and his left arm is wrapped around her back.

Box around the contact

[0.12, 0.32, 0.94, 0.61] as fractions of the image width and height; this is the highlighted area.

Teaching Qwen to find touch with GRPO

GRPO (Group Relative Policy Optimization): Qwen tries several answers, we score them against a human-marked touch area, and it learns from which answers beat the group.

human-marked touch area Qwen’s 6 answers (boxes) 1Ask
Where do these people touch? Give a box.
2Sample
Qwen writes a group of 6 answers
3Reward
Overlap with the human-marked area
4Compare
Each answer vs. the group average
5Update
Make better-than-average answers likelier
Reward: overlap with the marked area123456group meanAdvantage vs. the group average123456 advantage = (reward − group mean) / group spread Training step 1: answers are scattered (mean reward 0.43)Training step 2: closer to the touch (mean reward 0.53)Training step 3: clustered on the touch (mean reward 0.78)

Illustration of the idea: the boxes and scores are simulated, not our trained results. Photo: COCO val2017 #6763 via Flickr, CC BY-NC-SA 2.0.

Final output: a segmentation of the touch

The photo with Qwen's box around the contact area
Before: a box around the contact area
The photo with the two touching hands cut out as a segmentation mask
Final: a mask on the two hands that touch

After training, the answer is a mask instead of a box: the exact pixels of the two people’s hands in contact. Illustration: the masks were made with SAM prompted at the hands, not by a GRPO-trained model. Photo: COCO val2017 #6763 via Flickr, CC BY-NC-SA 2.0.

Where and how AI can fail

Trained on

mostly clear, well-lit photos and video

GazeGazeFollowVideoAttentionTargetGaze360
GazeFollow: head box + where annotators say they look
GazeFollow
Pose (OpenPose)COCO KeypointsMPII Human Pose
COCO Keypoints: human-labelled joints
COCO Keypoints
Touch / contactHOT
HOT: human-marked contact area
HOT
Counting peopleShanghaiTechUCF-QNRFNWPU-Crowd
ShanghaiTech: true count 502
ShanghaiTech: true count 1175

Real samples from the datasets, with their own annotations drawn on top.

Ability transfer

Applied to

CCTV-like proxy clip: small, low-resolution people
CCTV: small, low-res peopleShanghaiTech Campus, proxy for our footage
Real first-person helmet-camera clip
Egocentric (first-person)helmet cam, CC BY 4.0, Wikimedia Commons
Real handheld shaky-cam clip: a walk down a London street
Shaky-cam (handheld)handheld walk, CC BY 3.0, Wikimedia Commons

In our CCTV footage the median person is only about 60 × 140 px.

Unfortunately…

$ REC
Let me do this crime in bright lighting so it’s easier for the computer to see!
Perfect lighting! 10/10 ★
What we train on $ REC
… person? bush? cat?
?? What really happens

People don’t say: Let me do this crime — or this intervention — in bright lighting so it’s easier for a computer to see or train on.

Pose and gaze, run on CCTV-like footage

pose skeleton (ViTPose)   head box   gaze target (Gaze-LLE)
ShanghaiTech 02_001
ShanghaiTech 08_0044
ShanghaiTech 01_001
ShanghaiTech 07_0005
ShanghaiTech 08_001
ShanghaiTech 10_001

Proxy footage: these are not our CCTV clips.

What’s hard for AI to do?

Sequentiality

Sequences of touch, sequences of other things: very interesting to explore.

Sequences of touch
Sequences of other things
looking
pointing
touching
intervening

Computer vision is moving towards this

EgoPolice — a dataset from Princeton’s computer vision team (Visual AI Lab) · released 7 July 2026

EgoPolice examples: easy (top) and hard (bottom) cases for four actions
Examples from EgoPolice: easy (top row) and hard (bottom row) cases. Figure from Saez-Diez et al., “EgoPolice: A Benchmark for Egocentric Video Understanding in High-Stakes Police Body-Worn Camera Footage”, arXiv:2607.06468 (2026).

Datasets

Released publicly by the computer vision community, with social-science aspects: non-human primate behaviour and “violence”

XD-Violence

XD-Violence sample frames: fighting, riot, shooting and car accident
4,754videos
217hours
6violence classes

Wu et al., ECCV 2020. Movies and YouTube, with audio. Frames from the dataset paper.

PanAf-SBR

PanAf-SBR sample frames of wild chimpanzees: social behaviours and locomotion
600videos
216kframes
283kdetections

Braszczok et al., arXiv:2607.17399 (July 2026). Wild chimpanzee camera traps; 7 social behaviours. Figure from the paper.

BossouChimpanzee

BossouChimpanzee example clip of chimpanzees in Bossou, Guinea
226videos
70hours
7.8Mframes

Schofield et al. incl. A. Zisserman, arXiv:2610.05293 (Oct 2026). Bossou, Guinea; 23 identified individuals; from a 1,200+ h archive. Clip from the project page.

Unique human insights

Reach out!

Excited to see how we can collaborate and apply it together.

nl.linkedin.com/in/ruthu-rooparaghunath
r.h.rooparaghunath@uva.nl
https://hulikalruthu.github.io