Featured Project
pkr.img
Chip photo → payouts. A web app that tracks player stacks and generates a minimal settlement graph.
What it does
Tracks chip stacks and computes payouts automatically.
Why it matters
Removes end-of-night math + reduces payment transfers.
What I built
Full-stack MVP + CV pipeline in progress.
Computer Vision: SAM3 Fine-Tuning (Roboflow)
Training a segmentation model to automatically detect chip stacks from photos.
Pipeline
- Labeled chip instances in Roboflow (segmentation masks).
- Exported dataset + splits (train/val/test) for model training.
- Fine-tuned SAM3 as the base segmentation model for chip masks.
- Post-processing to compute chip counts and per-player totals.
Why SAM3?
Poker chip detection is challenging due to cluttered table scenes, overlapping chips, reflections, and variable lighting. Bounding-box detectors often fail to cleanly separate individual chips under occlusion.
SAM3’s segmentation-first approach produces cleaner chip boundaries in these cases. Fine-tuning the model on a Roboflow-labeled dataset allows it to adapt to chip colors and lighting while preserving strong generalization, enabling reliable downstream counting and valuation.
Architecture
Simple MVP stack — easy to extend.
- web/ Next.js UI + routing
- api/ FastAPI endpoints + SQLAlchemy models
- db SQLite (upgrade path to Postgres)
Next
What I’m improving.
Better counting + calibration
Map masks → chip values reliably across angles/occlusions.
Realtime host dashboard
Push updates instantly when players resubmit photos.