如何在Java中设置icc颜色配置文件并更改颜色空间

Pat*_*h24 3 java icc jai color-space jmagick

首先,我想说我不是图像处理专家.

我想将图像颜色空间从一个转换为另一个,并同时更改icc颜色配置文件.我设法使用JMagick(ImageMagick Java端口),但纯Java(甚至使用JAI)没办法.

abl*_*eul 5

使用ColorConvertOp,这将进行色彩空间转换.您有几个选项来设置icc颜色配置文件.您可以使用getInstance正确的颜色空间常量来使用预定义的配置文件,也可以指定包含配置文件的文件.这是一个例子:

ICC_Profile ip = ICC_Profile.getInstance( ColorSpace.CS_sRGB );
ICC_ColorSpace ics = new ICC_ColorSpace( ip );
ColorConvertOp cco = new ColorConvertOp( ics, null );
BufferedImage result = cco.filter( sourceImage, null );
Run Code Online (Sandbox Code Playgroud)

result将包含与图像sRGB的色彩空间.