Cameras record three colour responses (RGB) which are device dependent i.e. different cameras will produce different RGB responses for the same scene. Moreover, the RGB responses do not correspond to the device-independent tristimulus values as defined by the CIE. The most common method
for mapping RGBs to XYZs is the simple 3×3 linear transform (usually derived through regression). While this mapping can work well it does sometimes map RGBs to XYZs with high error. On the plus side the linear transform is independent of camera exposure. An alternative and on the face
of it more powerful, method for colour correction is polynomial regression. Here, the RGB at a pixel is augmented by polynomial terms e.g up to second order RGB maps to the 9-vector (R,G,B,R^{2},G^{2},B^{2},RG,RB,GB). With respect to this polynomial expansion colour
correction is a 9×3 linear transform. For a given calibration set-up polynomial regression can work very well indeed and can reduce colorimetric error by more than 50%. However, unlike linear maps the polynomial fit depends on exposure: as exposure changes the vector of polynomial components
alters in a non linear way. In this paper we propose a new polynomial-type regression which we call ‘Root-Polynomial Colour Correction’. Our idea is to take each term in a polynomial expansion and take its kth root of each k-order term. For the 2nd order polynomial expansion the
corresponding independent root terms are R,G,B, √RG, √RB and √GB (6 independent terms instead of 9: the first roots of R, G and B equal the 2^{nd} roots of R^{2}, G^{2} and B^{2}). It is easy to show terms defined in this way scale with exposure
and so a 6×3 regression mapping can be used for colour correction. Encouragingly, our initial experiments demonstrate that root-polynomial colour correction enhances colour correction performance on real and synthetic data.