2016-01-19 144 views
7

我想用imagemagick command-line tools將灰度圖像轉換爲RGB。使用imagemagick將JPG圖像從灰度轉換爲RGB

據PNG圖像做工精細,使用:

convert image.png -define png:color-type=2 result.png 

(從答案"How to convert gray scale png image to RGB from comand line using image magick"拍攝)雖然與identify -format %r result.png檢查仍然會返回DirectClass灰色,我可以看到它的工作使用gdalinfo,因爲現在有列出的頻段/頻道:

gdalinfo [成功轉換PNG]:

Driver: PNG/Portable Network Graphics 
Files: result.png 
Size is 567, 479 
Coordinate System is `' 
Image Structure Metadata: 
    INTERLEAVE=PIXEL 
Corner Coordinates: 
Upper Left ( 0.0, 0.0) 
Lower Left ( 0.0, 479.0) 
Upper Right ( 567.0, 0.0) 
Lower Right ( 567.0, 479.0) 
Center  ( 283.5, 239.5) 
Band 1 Block=567x1 Type=Byte, ColorInterp=Red 
Band 2 Block=567x1 Type=Byte, ColorInterp=Green 
Band 3 Block=567x1 Type=Byte, ColorInterp=Blue 

然而,似乎-define option只工作了PNG圖像。

我的問題:如何才能達到相同的JPG圖像效果?

當我嘗試爲JPG上面的命令,這是行不通的:

convert image.jpg -define jpg:color-type=2 result.jpg 

gdalinfo [不成功轉換JPG]:

Driver: JPEG/JPEG JFIF 
Files: result.jpg 
Size is 1500, 1061 
Coordinate System is `' 
Metadata: 
    EXIF_ColorSpace=1 
    EXIF_PixelYDimension=2480 
    ... 
    EXIF_YCbCrPositioning=1 
    EXIF_YResolution=(300) 
Corner Coordinates: 
Upper Left ( 0.0, 0.0) 
Lower Left ( 0.0, 1061.0) 
Upper Right (1500.0, 0.0) 
Lower Right (1500.0, 1061.0) 
Center  ( 750.0, 530.5) 
Band 1 Block=1500x1 Type=Byte, ColorInterp=Gray 
    Overviews: 750x531, 375x266, 188x133 
    Image Structure Metadata: 
    COMPRESSION=JPEG 

回答

7

巴新彩種並不適用於JPEG圖像,所以你不能使用相同的技術。嘗試強制將色彩空間設置爲sRGB,並/或將其類型設置爲TrueColour,以便不會出現炫耀圖像:

convert input.jpg -colorspace sRGB -type truecolor result.jpg 
+0

非常感謝您的快速響應。 備案:'convert input.jpg -type truecolor result.jpg'工作正常。雖然添加'-colorspace sRGB'產生了相同的結果,但單獨使用它並不能完成工作。 – NotYanka