Each SLO video consisted of 30 to 100 frames. Videos were postprocessed to generate the final cone density value, using custom software, as follows: abnormally dim frames, normally caused by participant blinks during recording, were automatically removed. A frame from each video, with no eye movement artifacts, was manually selected. A strip registration algorithm
14 was used to register the remaining frames to this key-frame. After frame registration, three to eight frames with the greatest correlation to the key frame were averaged together to form a final image for cone counting. Cone counting was performed only on images where the cone photoreceptor mosaic was visible in at least part of the image (
Fig. 2). Cone counting was performed using custom software based on the Mahotas image processing library.
15 A region, no smaller than 0.2° × 0.2° in size,
16 of each registered image with high quality visualization of the cone photoreceptor mosaic was sampled. Care was taken to avoid large blood vessels when selecting the sampled areas. The selected sample was processed with a two-dimensional Gaussian filter and an intensity threshold calculated using the Otsu method.
17 The number of regions exceeding the threshold was counted and divided by the size of the sampled region (measured in degrees of visual field). This value is reported as the angular cone density. The cone counting algorithm was validated against counts obtained using the graph theory and dynamic programming algorithm proposed by Chiu et al.
18 with data from Garrioch et al.
19 (mean difference = −5%, 95% limits of agreement = −12% to 3%). Cone density calculated as cones per millimeters squared were also calculated based on individual participant axial length measurements. In cases where axial length was not measured, axial length was estimated using a linear model relating refractive error to axial length based on participant data where both measures were available.