Source: https://publications.polymtl.ca/2946/1/2017_MoustaphaAhmedBouh.pdf