ฉันจะรู้ได้อย่างไรว่าภาพของฉันคือ CMYK จากบรรทัดคำสั่ง Linux?


คำตอบ:


21

วิธีที่ง่ายที่สุดในการรับข้อมูลนี้คือการใช้identifyคำสั่งของImageMagick Package ลอง:

$ identify -format '%[colorspace]' image.jpg

ไม่จำเป็นต้องใช้เครื่องหมายคำพูด 'เดี่ยว' และสำหรับฉันมันทำงานได้ดีขึ้นหากไม่มีพวกเขา
isapir

8

identifyเป็นส่วนหนึ่งของชุดเครื่องมือ 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

1
+1 เนื่องจากวิธีนี้ช่วยให้ผู้ใช้ใหม่ได้รับความประทับใจในสิ่งที่อาจมีการสอบถามข้อมูลอื่น ๆ
คณิตศาสตร์

5

ใน Mac OS X คุณสามารถใช้

sips -g space <filename>

ตัวอย่าง:

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

หรือพิมพ์เฉพาะข้อมูลที่เกี่ยวข้อง:

$ sips -g space file.jpg | tail -n1 | awk '{print $2}'
RGB

ขอบคุณ! ฉันใช้ Ubuntu ฉันไม่เห็นจิบในที่เก็บ apt
Eric Johnson

@EricJohnson Ubuntu ไม่ใช่ Unix แม้ว่า Mac OS X นั้นเป็นอย่างไร ฉันจะตอบคำถามนี้ต่อไปมันอาจช่วยคนอื่นได้
Daniel Beck

เพื่อเอาไว้ใช้ downvotes: เมื่อฉันโพสต์คำตอบนี้ครั้งแรกคำถามนั้นแตกต่างกันมากและคำตอบนี้เหมาะสม
Daniel Beck

2

ฉันสามารถทำได้ด้วยไลบรารีรูปภาพ :: Infoของ Perl นี่คือหนึ่งซับฉันใช้ในบรรทัดคำสั่ง:

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

(เห็นได้ชัดว่าสิ่งนี้ต้องการให้คุณติดตั้งไลบรารีไว้แล้ว)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.