← The Lab
// The Lab

Ishihara number recognizer

Reads the number hidden in a colour blindness test plate, using image processing and a small convolutional neural network.

Pythoncomputer visionCNN

Upload a photo of an Ishihara plate and it tells you the number on it.

It works in two steps. First, image processing pulls the digits out of the dots: it filters the plate by hue to separate the number’s colours from the background’s, thresholds the result to black and white, and keeps the largest connected shapes. It works for one and two digit numbers. Then a convolutional neural network I trained on 1,400 preprocessed plates recognises each digit.

Hover over the plate above to see roughly what the model sees.

Big thanks to the creator of the Ishihara blind test cards dataset used for training.

Try it with your own plate

Upload a photo or screenshot of an Ishihara plate with a one or two digit number.