Bagaimana saya bisa tahu apakah gambar saya CMYK dari baris perintah Linux?

17

Saya mengonversi gambar dari RGB ke CMYK. Bagaimana saya bisa tahu kalau gambar saya CMYK dari baris perintah Linux?

Eric Johnson
sumber

Jawaban:

21

Cara sederhana untuk mendapatkan info ini adalah dengan menggunakan identifyperintah dari Paket ImageMagick , coba:

$ identify -format '%[colorspace]' image.jpg
Ielton
sumber
Kutipan 'tunggal' tidak diperlukan dan bagi saya itu bekerja lebih baik tanpa mereka
isapir
8

identifyadalah bagian dari toolset ImageMagick .

$ identify -verbose foo.jpg | grep Colorspace
  Colorspace: CMYK
$ identify -verbose foo.jpg
Image: foo.jpg
  Format: JPEG (Joint Photographic Experts Group JFIF format)
  Class: DirectClass
  Geometry: 3872x2592+0+0
  Resolution: 72x72
  Print size: 53.7778x36
  Units: PixelsPerInch
  Type: ColorSeparation
  Endianess: Undefined
  Colorspace: CMYK
  Depth: 8-bit
  Channel depth:
    cyan: 8-bit
    magenta: 8-bit
    yellow: 8-bit
    black: 8-bit
  Channel statistics:
    Cyan:
      min: 0 (0)
      max: 255 (1)
      mean: 65.169 (0.255565)
      standard deviation: 57.6369 (0.226027)
      kurtosis: 0.308901
      skewness: 1.17232
    Magenta:
      min: 0 (0)
      max: 255 (1)
      mean: 67.0774 (0.263049)
      standard deviation: 47.216 (0.185161)
      kurtosis: 1.37996
      skewness: 0.914289
    Yellow:
      min: 0 (0)
      max: 255 (1)
      mean: 117.456 (0.46061)
      standard deviation: 70.6394 (0.277017)
      kurtosis: -1.07218
      skewness: -0.180885
    Black:
      min: 0 (0)
      max: 239 (0.937255)
      mean: 40.826 (0.160102)
      standard deviation: 49.258 (0.193168)
      kurtosis: 1.56001
      skewness: 1.50352
  Image statistics:
    Overall:
      min: 0 (0)
      max: 255 (1)
      mean: 58.1056 (0.227865)
      standard deviation: 63.7107 (0.249846)
      kurtosis: 0.0487218
      skewness: 1.03517
  Total ink density: 331%
  Rendering intent: Undefined
  Interlace: None
  Background color: white
  Border color: cmyk(223,223,223,0)
  Matte color: grey74
  Transparent color: black
  Compose: Over
  Page geometry: 3872x2592+0+0
  Dispose: Undefined
  Iterations: 0
  Compression: JPEG
  Quality: 80
  Orientation: Undefined
  Properties:
    date:create: 2011-12-23T13:00:23+00:00
    date:modify: 2011-12-23T13:00:23+00:00
    jpeg:colorspace: 4
    jpeg:sampling-factor: 2x2,1x1,1x1,1x1
    signature: 972c47bd4a83e6561f2ddd65c2a5ca217ea06955814815bfb9d35ccd6b83fec2
  Profiles:
    Profile-icc: 1829040 bytes
      ISO Coated v2 (ECI)
  Artifacts:
    verbose: true
  Tainted: False
  Filesize: 3.968MB
  Number pixels: 10.04MB
  Pixels per second: 21.35MB
  User time: 0.460u
  Elapsed time: 0:01.469
  Version: ImageMagick 6.6.0-4 2010-10-20 Q16 http://www.imagemagick.org
Eric Johnson
sumber
1
+1 Karena metode ini memberikan kesan kepada pengguna baru, informasi apa yang mungkin dikenali oleh informasi lain.
matematika
5

Di Mac OS X, Anda dapat menggunakan

sips -g space <filename>

Contoh:

$ sips -g space file.jpg 
/path/to/file.jpg
  space: RGB

Atau, hanya cetak informasi yang relevan:

$ sips -g space file.jpg | tail -n1 | awk '{print $2}'
RGB
Daniel Beck
sumber
Terima kasih! Saya di Ubuntu. Saya tidak melihat teguk di repositori apt.
Eric Johnson
@EricJohnson Ubuntu bukan Unix. Mac OS X adalah. Saya akan terus menjawab ini, mungkin bisa membantu orang lain.
Daniel Beck
Hanya untuk mencegah downvotes: Ketika saya awalnya memposting jawaban ini, pertanyaannya sangat berbeda dan jawaban ini tepat.
Daniel Beck
2

Saya dapat melakukannya dengan Perl :: Image perpustakaan Info . Inilah liner yang saya gunakan pada baris perintah:

perl -MImage::Info -E 'say Image::Info::image_info("foo.jpg")->{color_type};'

(Jelas ini mengharuskan Anda sudah menginstal perpustakaan.)

Eric Johnson
sumber