TinyML‑DigitRecognizer

Train in Python · Infer in C · Run on constrained devices

Try the 8×8 Samples

Select a digit to load its 8×8 bitmap (from samples/<digit>.txt) and render it below.

Bitmap Grid

Raw Text


        

This page renders the 8×8 sample files directly from your repository.
Inference here is not executed in the browser; run the C demo locally:

make && ./build/demo samples/3.txt

About

This project demonstrates a minimal end‑to‑end pipeline for TinyML:

Project Structure

  • Training: notebooks/MicroProcessor.ipynb
  • Raw weights: weights_raw/
  • C arrays: weights/weights.c, weights/weights.h
  • Inference code: src/, include/
  • Samples: samples/

How It Works

  1. Prepare 8×8 digit samples (samples/<digit>.txt)
  2. Run the training notebook in Colab to generate weights
  3. Transform weights into C arrays
  4. Compile and run inference on device

This approach highlights how machine learning models can be distilled into minimal forms that fit on constrained devices.