¿Cómo convertir CMYK a RGB en Java correctamente?

Mi código Java para convertir un jpeg CMYK a RGB da como resultado que la imagen de salida sea demasiado clara - vea el código a continuación. ¿Alguien puede sugerir la forma correcta de hacer la conversión?

El siguiente código requiereJava Advanced Image IO para leer el JPEG yejemplo-cmyk.jpg

import java.awt.image.BufferedImage;
import java.awt.image.ColorConvertOp;
import java.io.File;

import javax.imageio.ImageIO;

public class TestCmykToRgb {

    public static void main(String[] args) throws Exception {
        BufferedImage cmykImage = ImageIO.read(new File(
                "j:\\temp\\example-cmyk.jpg"));


        BufferedImage rgbImage = new BufferedImage(cmykImage.getWidth(),
                cmykImage.getHeight(), BufferedImage.TYPE_INT_RGB);

        ColorConvertOp op = new ColorConvertOp(null);
        op.filter(cmykImage, rgbImage);

        ImageIO.write(rgbImage, "JPEG", new File("j:\\temp\\example-rgb.jpg"));

    }
}

Respuestas a la pregunta(6)

Su respuesta a la pregunta