Skip to main content

Convolution neural networks for microcontrollers and constrained hardware


Suitable for

MSc in Computer Science
MSc by Research
Computer Science, Part B
Mathematics and Computer Science, Part C
Computer Science and Philosophy, Part C
Computer Science, Part C


Convolution neural networks have made dramatic advances in recent years on many image and vision processing tasks. While training such networks is computationally expensive (typically requiring very large image datasets and exploiting GPU acceleration), they can often be deployed on much simpler hardware if simplifications such as integer or even binary weights are imposed on the network. This project will explore the deployment of trained convolution networks on microcontrollers (and possibly also FPGA-based hardware) with the intention of demonstrating useful image processing (perhaps recognising the presence of a face in the field of view of a low pixel camera) on low-power devices.

Prerequisites: Machine Learning & Computer Architecture useful but not essential.