(This post is a work in progress, sorry. I’ll write it up better a bit later, honest!)
After a weekend of hacking around, I got a 95% accuracy rate on the validation and testing sets for recognizing road signs. Here’s 5 random google images for ‘road sign photos’, and including one that fails:
My neural network got 4 out of 5 of the signs correct, incorrectly thinking the first image was 120 km/h instead of 20 km/h. But it gets it correct on its second guess.
This was done by just adapting the LeNet neural network for recognizing digits. I did add two dropout layers with a 50% probability, and increased the number of classes to 30 and input size to 32x32x3, and that was about it.
I had 35,000 training images, but increased this to 60,000 images by rotating and zooming the images. My network does overfit badly though (reaching 99% accuracy on the training set, after 10 epochs).