voir / prysm / countar

CountAR

Type, and Voir counts — screws on a workbench, almonds in a bowl, cells under a lens.

VoirLite / Counter · open-vocab YOLO + CountTracker

What it does

Type the noun. The camera draws a numbered halo over every instance of that noun in view. Move the camera, the halos follow. Walk to the next surface, the count resumes. The instrument tracks the same object across frames even as it leaves and re-enters the viewport.

4instances
Six brass screws1 on the workbench. Three more in the drawer, beside the dial gauge. The bench grinder needs two new screws2 to finish the guard. Cabinet shelves: eight screws3 per shelf, twenty-four total. Behind the wall a previous tenant left three screws4 sticking out at angles, embedded in plaster, never removed.

How it works

An open-vocabulary detector takes the noun as a prompt and returns bounding boxes. A tracker assigns persistent IDs to the boxes across frames using a simple IOU-based association — so a screw counted at frame 0 stays screw #4 at frame 60, even if you nudged the workbench.

What it's built on

YOLO-world for open-vocab detection. A small CountTracker actor for ID persistence. CoreML for on-device inference. The COCO class vocabulary as a fallback when the prompt doesn't have a matching open-vocab head.

live camera counting · open-vocab object detection per frame · count tracking across motion and occlusion · numbered halos rendered to your camera feed — happen on the device. the form above counts text. the mode counts the world.