V1 — public lab. SignalLab: raw metrics, not a score yet.

The Lab

AI Research & Engineering Lab

lab

A measurable vision baseline from a data seat

Do data questions (provenance, split, baseline, metric) hold on pixels, before any VLM / VLA story?

Hypothesis: A public dataset, a reproducible split and two baselines are enough to make error visible. ROS2 is not the first deliverable.

Setup

Dataset: UCI Optical Recognition of Handwritten Digits, 1,797 8×8 images, 10 classes, values 0–16. Versioned fixture: data/labeval/uci-digits-8x8.json.

Stratified 80/20 split, seed 20260911 — 1,438 train, 359 test. Classes roughly balanced (139–146 in train).

Two baselines, no neural net:

  • Majority — most frequent train class (digit 1).
  • Centroid — per-class mean pixel vector, nearest Euclidean neighbour.

Metric: test accuracy. Reproduce: python -m labeval --run vision-digits.

Result

Run vision-digits.v1 above. Majority: 10.03% (36/359). Centroid: 92.48% (332/359).

Pixels read as a wide CSV. Provenance, split and baseline come before VLM or ROS2.

Failure / limit

8×8 digits is an easy problem. This is not a VLM, not a VLA, not a robot policy, not PhotoMind. No perception-action loop.

Next

Keep this run as a floor. A later vision lab should change dataset or task, not replay 92% on UCI digits.