1. A computer implemented method for estimating an illumination spectrum of an image, the image being comprised of points of wavelength indexed spectral data, the wavelength indexed spectral data defining an input spectrum for each point of the image, the method comprising: determining for each point of a first set of points of the image a measure of variation in relation to the input spectrum of that point by randomly selecting a second set of points of the image from the points of the image, the second set and the first set being disjoint, determining a projection of the input spectrum of each point of the first set onto a subspace spanned by the input spectra of the points of the second set, determining a third set of points of the image for each point of the first set based on the projection, and determining the measure of variation of the projection of the input spectra of the points of the third set onto the subspace spanned by the input spectra of the points of the second set; selecting one point from the first set based on the measure of variation for each point of the first set such that the variation in relation to the input spectrum of the selected one point of the first set is greater than the variation in relation to the input spectra of other points of the first set; determining a cluster of points of the image based on the input spectrum of the selected one point of the first set; and determining an estimate for the illumination spectrum based on the input spectra of points of the image in the cluster.