我正在嘗試對iPhone-X的屏幕截圖進行圖像處理,但是我遇到了麻煩,因為紅色通道未處于預期范圍內。問題是由于DCI-P3引入了圖像的色彩空間,而我們的大多數算法都是針對我們擁有的較舊iPhone和Android的標準sRGB色彩空間編寫的。在DCI-P3顏色空間中,出現問題的屏幕截圖區域的RGB值為r = 59,g = 125,b = 236。我們期望紅色通道小于30,并且通過Photoshop的“編輯->轉換為配置文件”選項足夠確定轉換圖像的結果是,特定像素的紅色值為22。我們正在Jax-RS Web服務上進行此圖像處理,因此我解決該問題的第一個嘗試是使用javax.imageio.ImageIO和好友。不幸的是,使用以下方法隱藏圖像色彩空間的典型建議不起作用(紅色值仍然過高):BufferedImage screenshotCopy = new BufferedImage(screenshot.getWidth(), screenshot.getHeight(), BufferedImage.TYPE_INT_ARGB);Graphics2D g2d = screenshotCopy.createGraphics();g2d.drawImage(screenshot, 0, 0, null);g2d.dispose();我也嘗試過使用Imagemagick,但是對于該工具來說,我只是獲得了一些成功。Imagemagick可以使用色彩空間進行轉換,但是當我嘗試使用它時,紅色通道的色度甚至更高,為70+。magick convert IMG_0812.PNG -profile ~/Desktop/srgb.icc IMG_0812_converted.PNG有人可以幫助我使用ImageIO(首選)或ImageMagick正確轉換這些色彩空間,這些色彩空間生成的圖像類似于Photoshop的“編輯->轉換為配置文件”工具嗎?
添加回答
舉報
0/150
提交
取消