Source: https://master-spim.formation.univ-lorraine.fr/files/2015/01/SPIM2.pdf