Particles were imaged 20 µm below their focal plane, to maximise the effective range over which their 3D motion could be tracked. The XY positions of the particles were localised using the MATLAB implementation of the Hough circle transform, while the vertical positions were localised as described above using ML. Spurious trajectories, defined as those with a standard deviation of displacements in Z noisier than that expected by Brownian diffusion, were filtered out before analysis of the population dynamics.