1. A non-transitory computer-readable storage medium storing computer program instructions which, when executed by a processor, cause the processor to process image data defining an image of a retina to determine a location of an anatomical feature of the retina in the image by: receiving the image data; calculating, for each pixel of a plurality of pixels of the received image data, a respective local orientation vector indicative of an orientation of any blood vessel present in the image at or adjacent the pixel; calculating a normalised local orientation vector for each pixel of the plurality of pixels by normalising the local orientation vector calculated for each pixel of the plurality of pixels so that a magnitude of the normalised local orientation vector at each pixel of the plurality of pixels takes a common predetermined value; operating on an array of accumulators, wherein each accumulator in the array is associated with a respective pixel of the received image data, by: for each pixel of the plurality of pixels, adding a respective value to an accumulator associated with a pixel of the received image data that is offset from the pixel of the plurality of pixels by the predetermined value in a predetermined direction relative to a direction of the local orientation vector at the pixel of the plurality of pixels; and smoothing the values in the accumulators; and determining the location of the anatomical feature in the image of the retina using a location of a pixel of the received image data which is associated with a respective accumulator having accumulated an accumulated value that is within a predetermined range of an extremum of the accumulated values in the accumulators.