1. A computer-implemented method for converting a first color space to a second color space, comprising: generating a look-up table (LUT) using a non-square transformation matrix and a numerical solver, wherein the LUT comprises a target value in the first color space and an optimal value in the second color space; defining a predetermined number of steps in respective axes of the first color space and calculating an index to the LUT based on the predetermined number of steps defined in the respective axes of the first color space, wherein the index includes a plurality of target values in the first color space; and converting the first color space to the second color space using the LUT, wherein the numerical solver is configured to: receive each target value in the first color space and a predefined value in the second color space; perform calculations in discrete steps of a predetermined distance along respective axes in the second color space away from the predefined value in the second color space; determine which direction results in a color that is closer to the target value in the first color space; repeat the calculations and direction determination for a series of iterations, so as to determine a local minimum corresponding to the optimal value in the second color space; and store, in the LUT, the optimal value in the second color space for each target value in the first color space.