Source: https://sigproc.eng.cam.ac.uk/foswiki/pub/Main/4F8_2012/4F8_Master2016.pdf