Project members: Tara Julia Hamilton, Jonathan Tapson, Greg Cohen

The Ripple Pond Network (RPN), is a simply connected spiking neural network that, operating together with the SKIM network enables rapid, unsupervised, scale and rotation invariant object recognition using efficient spatio-temporal spike coding. In this project we implemented the recently submitted (published on arXiv - attached) with the recently published SKIM algorithm to demonstrate rotation invariant recognition of the MNIST handwriting recognition database using a simple jpeg camera and a small, low-power, mircocontroller - the mbed.


The image below summarises the operation of the RPN. For more information on how it works, see the attached pre-print from arXiv.

In this project we used the mbed and a simple jpeg camera to capture an image and process it on the static disc. The jpeg image was converted into a 24-bit bitmap image with resolution 40 px by 40 px. This is very small but we were limited by the amount of flash memory on the mbed and the need to convert the jpeg image to a bmp image used a lot of memory. This 40 x 40 image was converted to a monochrome image using averaging across RGB. This is not the most effective method of generating monochrome bitmaps but it is the most computationally efficient. The black and white bitmap is then remapped to the static disc (the points on the spiral arms in the image above map to pixels in the image. This remapping is performed by a look-up table. The black pixels are "on" and are stepped out to the edge of the disc and added to create a temporal pattern (TP) (see image above). This TP is rotationally invariant. Using normalization, we can also make the TP scale invariant, however, due to time and hardware constraints this was not demonstrated here.


SKIM is a network that can be trained to learn spatio-temporal patterns. More details on the operation of SKIM are given on the dendritic group main project page. The SKIM was trained with rescaled images (rescaled from 28px x 28px to 40px x 40px) from the MNIST database. Due to time constraints, hardware memory constraints and the time taken to rescale the images we trained the SKIM with a limited dataset of 7s and 4s. Two example, rescaled MNIST images are shown below.