2017-02-20 46 views
0

我有以下的,我使用的符合格式为JPEG格式转换图像格式的ImageJ

ImagePlus fitsImage = openImage(fitsImagePath); 
    final File out = new File(fullPath + fileNameNoExt + ".jpg");   
    BufferedImage jpgImage = fitsImage.getBufferedImage();   
    ImageIO.write(jpgImage, "jpg", out);  

实际的格式改变工作,我得到一个jpg文件,将图像转换代码,但问题是生成的文件是黑白的,我知道我使用的图像是彩色的。

所以问题是我该怎么做才能使结果图像着色。

欢呼声,

ES

回答

1

出于某种原因,getBufferedImage()函数仅在一个8位格式复制数据。由于我对拟合格式不熟悉,它具有哪种像素深度以及数据具有哪种像素深度?

如果您导入的是8位的错误颜色为红色,绿色或蓝色,那么当您导出时,它将保持其8位灰度级而不是假颜色。

如果您希望它保留其rgb,您必须在导出之前将其转换为rgb格式。

功能命令扁平化可能会帮助,因为它会在图片转换为RGB格式

fitsImage.flatten()