2017-02-20 123 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()