UIColor CMYK y valores de laboratorio

Pregunta simple, más que probable respuesta compleja:

¿Cómo puedo obtener los valores de CMYK y Lab de un objeto UIColor (de los cuales conozco los valores RGB, si esto ayuda)?

He encontrado esto con respecto a obtener valores CMYK, pero no puedo obtener valores precisos, a pesar de estar en todas partes, he oído que no es un gran fragmento.

CGFloat rgbComponents[4];
    [color getRed:&rgbComponents[0] green:&rgbComponents[1] blue:&rgbComponents[2] alpha:&rgbComponents[3]];

    CGFloat k = MIN(1-rgbComponents[0], MIN(1-rgbComponents[1], 1-rgbComponents[2]));
    CGFloat c = (1-rgbComponents[0]-k)/(1-k);
    CGFloat m = (1-rgbComponents[1]-k)/(1-k);
    CGFloat y = (1-rgbComponents[2]-k)/(1-k);

Respuestas a la pregunta(2)

Su respuesta a la pregunta