Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | 51CTO学院 | CSDN程序员研修院 | OSChina 博客 | 腾讯云社区 | 阿里云栖社区 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏多维度架构

第 152 章 图像处理(Graphics)

目录

152.1. GraphicsMagick
152.1.1. 安装
152.1.2. 识别图像信息
152.1.3. mogrify
152.1.4. convert
152.1.5. montage
152.1.6. 截屏
152.1.7. 显示图像
152.2. ImageMagick
152.2.1. install
152.2.2. convert
152.2.3. 查看支持字体列表
152.3. Photivo
152.4. How to add metadata to digital pictures from the command line

152.1. GraphicsMagick

http://www.graphicsmagick.org/

152.1.1. 安装

152.1.1.1. CentOS 安装

			
yum install GraphicsMagick
			
			

152.1.1.2. 编译安装

			
tar zxf GraphicsMagick-1.3.12.tar.gz
cd GraphicsMagick-1.3.12
./configure --prefix=/srv/GraphicsMagick-1.3.12
make && make install
ln -s /srv/GraphicsMagick-1.3.12/ /srv/GraphicsMagick
			
			

152.1.1.3. Mac

			
neo@MacBook-Pro-Neo ~ % brew install graphicsmagick			
			
			

152.1.2. 识别图像信息

		
neo@MacBook-Pro-Neo ~/Downloads % gm identify NEO_2316.JPG 
NEO_2316.JPG JPEG 3840x5760+0+0 DirectClass 8-bit 5.2Mi 0.000u 0m:0.000009s		
		
		

		
neo@MacBook-Pro-Neo ~/Downloads % gm identify -verbose NEO_5362.JPG 
Image: NEO_5362.JPG
  Format: JPEG (Joint Photographic Experts Group JFIF format)
  Geometry: 5760x3840
  Class: DirectClass
  Type: true color
  Depth: 8 bits-per-pixel component
  Channel Depths:
    Red:      8 bits
    Green:    8 bits
    Blue:     8 bits
  Channel Statistics:
    Red:
      Minimum:                     0.00 (0.0000)
      Maximum:                 65535.00 (1.0000)
      Mean:                    12319.46 (0.1880)
      Standard Deviation:      19489.17 (0.2974)
    Green:
      Minimum:                     0.00 (0.0000)
      Maximum:                 65535.00 (1.0000)
      Mean:                     8423.60 (0.1285)
      Standard Deviation:      13587.66 (0.2073)
    Blue:
      Minimum:                     0.00 (0.0000)
      Maximum:                 65535.00 (1.0000)
      Mean:                     5959.95 (0.0909)
      Standard Deviation:      11360.14 (0.1733)
  Filesize: 3.7Mi
  Interlace: No
  Orientation: TopLeft
  Background Color: white
  Border Color: #DFDFDF
  Matte Color: #BDBDBD
  Page geometry: 5760x3840+0+0
  Compose: Over
  Dispose: Undefined
  Iterations: 0
  Compression: JPEG
  JPEG-Quality: 98
  JPEG-Colorspace: 2
  JPEG-Colorspace-Name: RGB
  JPEG-Sampling-factors: 2x1,1x1,1x1
  Signature: 15aa3e4dcdc193806559958f5c5575ffe3c9f38b9440ae6dc49a47666f135f25
  Profile-EXIF: 24238 bytes
    Make: Canon
    Model: Canon EOS 5D Mark III
    Orientation: 1
    X Resolution: 72/1
    Y Resolution: 72/1
    Resolution Unit: 2
    Date Time: 2017:01:07 19:20:33
    Artist: Neo Chan <neo.chan@live.com>
    Y Cb Cr Positioning: 2
    Copyright: http://netkiller.github.io
    Exif Offset: 360
    Exposure Time: 1/125
    F Number: 18/10
    Exposure Program: 3
    ISO Speed Ratings: 100
    0x8830: 2
    0x8832: 100
    Exif Version: 0230
    Date Time Original: 2017:01:07 19:20:33
    Date Time Digitized: 2017:01:07 19:20:33
    Components Configuration: \001\002\003\000
    Shutter Speed Value: 458752/65536
    Aperture Value: 106496/65536
    Exposure Bias Value: 0/1
    Metering Mode: 5
    Flash: 16
    Focal Length: 85/1
    Maker Note: (\000\001\000\003\0001\000\000\000t\005\000\000\002\000\003\000\004\000\000\000?\005\000\000\003\000\003\000\004\000\000\000?\005\000\000\004\000\003\000"\000\000\000?\005\000\000\006\000\002\000\026\000\000\000*\006\000\000\007\000\002\000\030\000\000\000J\006\000\000\011\000\002\000 \000\000\000b\006\000\000\015\000\007\000\000\006\000\000\202\006\000\000\020\000\004\000\001\000\000\000\205\002\000\200\023\000\003\000\004\000\000\000\202\014\000\000\031\000\003\000\001\000\000\000\001\000\000\000&\000\003\000\011\001\000\000\212\014\000\0005\000\004\000\004\000\000\000\234\016\000\000\223\000\003\000\036\000\000\000?\016\000\000\225\000\002\000J\000\000\000?\016\000\000\226\000\002\000\020\000\000\0002\017\000\000\227\000\007\000\000\004\000\000B\017\000\000\230\000\003\000\004\000\000\000B\023\000\000\231\000\004\000S\000\000\000J\023\000\000\232\000\004\000\005\000\000\000\226\024\000\000?\000\003\000\016\000\000\000?\024\000\000?\000\003\000\006\000\000\000?\024\000\000?\000\003\000\001\000\000\000\001\000\000\000?\000\004\000\001\000\000\000\000\000\000\000?\000\003\000\021\000\000\000?\024\000\000\001@\003\000 \005\000\000?\024\000\000\010@\003\000\003\000\000\0004\037\000\000\011@\003\000\003\000\000\000:\037\000\000\020@\002\000 \000\000\000@\037\000\000\021@\007\000?\000\000\000`\037\000\000\022@\002\000 \000\000\000\ \000\000\023@\004\000\013\000\000\000| \000\000\025@\007\000?\001\000\000? \000\000\026@\004\000\007\000\000\000p"\000\000\030@\004\000\007\000\000\000\214"\000\000\031@\007\000\036\000\000\000?"\000\000!@\004\000\005\000\000\000?"\000\000%@\004\000\011\000\000\000?"\000\000'@\004\000\005\000\000\000?"\000\000(@\004\000\023\000\000\000\022#\000\000\000\000\000\000b\000\002\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\001\000\000\000\000\000\000\000?\177\017\000\003\000\002\000\000\000\003\000??\233\000U\000U\000\001\0008\000 \001\000\000\000\000\000\000\000\000??????\000\000\000\000\000\000\000\000????\000\000\000\000?\177??????\000\000??\000\000U\000\205??/\000\000\000\000\000\000\000\000D\000\000\000?\000t\0004\000?\000\000\000\000\000\003\000\000\000\010\000\010\000\235\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\0008\000?\000f\000\000\000\000\000?\000????????\000\000\000\000\000\000Canon EOS 5D Mark III\000\000\000\000\000\000\000\000\000\000\000Firmware Version 1.3.3\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000??o\026p\025H\000\0012\001_\000\003\000\000\000\000\000\000\001\000\000\006\000\000\000\235\000\000T\000i\000m\000U\000\000\000\000 \000\000\000\003\000\000\000\000\000\000\000U\000\000\001??r@??\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@?\000r\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\001\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004?\001 \004\000\000\000\000\000\000\000\000????\014??\002\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000r\003\000\000\000j\000\000\000\000\000?\015\000\000\000\000\000\000\000\000\000\000\001\000\000\000\001\000\000\000\001\000\000\000\003\000\000\000\003\000\000\000\003\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\203\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\007\000\000\000\001\000\001\003\005\003??\003\037\000\000\000\000\000\000\007\000\000\000\000\000\000\026\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\001\000\000\000\000\000\000\000\006\001\000\000\007\003\003\003\002U\000\000\000\000\000\000\000\000\001\026P\000\233\000U\000U\201\005\000\000\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\200\026\000\000\000\017\000\000 \012\000\000\000\006\000\000@\002\000\000\000\003\000\000?\002\000\000?\001\000\000\000\000\000\000\000\000\000\000?\002\000\000?\001\000\000?\002\000\000?\001\000\000\000\000\000\000\000\000\000\000?\002\000\000?\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000??UU??UUUUUU????\000\002\000\000\000\000\000\000\000\000\000\000\012\002\000\001\000\001\000\000\000\003\001\000\000\000\000\000\000\000\001\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001.3.3\000A9(34)\000VQ\000\030\002\230\031X?\023\000d?\000\000d?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000d\000\000\000d\000\000\000d\000\000\000?\024\000\000?\024\000\000\000\000\000\000e\000\000\000e\000\000\000d\000\000\000\010\000\000\000\010\000\000\000\010\000\000\000\010\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\001\000\004\000\004-\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\001\000\004\000\004~\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\001\000\004\000\004~\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\001\000\004\000\004~\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\001\000\004\000\004~\002\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\000\000\000\000\003\000\000\000ᆳ?ᆳ?\000\000\000\000\003\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000\000\000\000\000ᆳ?ᆳ?\004\000\000\000\004\000\000\000\000\000\000\000????ᆳ?ᆳ?\001\000\000\000\005\000\000\000\001\000\000\000\000\000\000\000ᆳ?ᆳ?\002\000\000\000\005\000\000\000ᆳ?ᆳ?\000\000\000\000\000\000\000\000\202\000\203\000\206\000\000\000????????\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\004\000\004\000\000\000\000\000\000\000\000\201?qX\012\000\000\000\004\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000?6\000\000?9\001\000\000\000\000\000\000\000\000\000\000\000\000\000\003\000\000\000S\000\000\000X\000\003\200\000\000\000\000\003\000\000\000M\000\000\000N\000\000\000\000\000\000\000\003\000\000\0003\000\000\000;\000\003\200\000\000\000\000\003\000\000\000T\000\000\000\237\000\007\000p\000\022\002\010\000=\000=\000\200\026\000\017\200\026\000\017?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000 \001\000\000???\005?\004?\003\177\002 \001\000\000\020?0?P?\201????\005?\004?\003\177\002 \001\000\000\020?0?P?\201????\005?\004?\003\177\002 \001\000\000\020?0?P?\201????\005?\004?\003\177\002 \001\000\000\020?0?P?\201????\005?\004?\003\177\002 \001\000\000\020?0?P?\201??? \001\000\000??x?x?x?O?O?O?O?O?O?O?O?O?O?O?)?)?)?)?)?)?)?)?)?)?)?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\001?\001?\001?\001?\001?\001?\001?\001?\001?\001?\001\210\002\210\002\210\002\000\000\000\004\000\000\000\000\000\200\000\016 \000\000\000HR\222\222\224?$\001??\020\000\000\000?\001\000\000\007\000\000\000\000\000\000\000<\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000??\000\000\000\000\000\000\000\000\000\000????T\000??\000\000\000\000?\004 \001\000\000\000\000\000\000\000\000??\000\000\000\000\000\000EF85mm f/1.8 USM\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000??H?AD1180494\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000L\001\000\000\003\000\000\000\001\000\000\000T\000\000\000\006\000\000\000\001\001\000\000\001\000\000\000\000\000\000\000\002\001\000\000\001\000\000\000\000\000\000\000\004\001\000\000\001\000\000\000\000\000\000\000\005\001\000\000\001\000\000\000\001\000\000\000\006\001\000\000\002\000\000\000\003\000\000\000\000\000\000\000\010\001\000\000\001\000\000\000\001\000\000\000\002\000\000\000 \000\000\000\002\000\000\000\012\004\000\000\001\000\000\000\037\000\000\000\013\004\000\000\001\000\000\000\000\000\000\000\004\000\000\000?\000\000\000\005\000\000\000\014\007\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\000\000\000\003\000\000\000\006\007\000\000\001\000\000\000\000\000\000\000\017\007\000\000\002\000\000\000\000\000\000\000\002\000\000\000\016\010\000\000\001\000\000\000\000\000\000\000\023\010\000\000\001\000\000\000\000\000\000\000\000\000\000\000\200\026\000\000\000\017\000\000\000\000\000\000\000\000\000\000\034\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000???\015\203\000\000\000\000\000\000\000\014\000J\005\000\004\000\004?\001\000\000"\000 \027n\017\001\000\001\000\214\000`\000\013\027_\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000!\003\000\004\000\004d\001.\002\000\004\000\004?\001\211\001\000\004\000\004?\002?\005[\007[\007\216\002?\006?\013?\013?\005[\003\034\010\034\010L\005\003\000\001\000\014\001\016\001\012\001\000\000\220\005\232\013\227\013S\006\223\002?\000?\000\035\000[\000]\002_\002?\003/\005?\010?\010\220\001\206\005?\012?\012?\005r\002?\000?\000\035\000a\000<\002<\002\206\003\031\005*\010+\010\201\001?\005\000\004\000\004v\011\200\014?\005\000\004\000\004v\011\200\014?\005\000\004\000\004v\011\200\014?\005\000\004\000\004v\011\200\014\000\004\000\004\000\004\000\004x\021\000\004\000\004\000\004\000\004x\021?\005\000\004\000\004v\011\200\014?\005\000\004\000\004v\011\200\014?\005\000\004\000\004v\011\200\014\236\005\000\004\000\004p\011\200\014\236\005\000\004\000\004p\011\200\014(\004\003\004?\003?\012?\011\000\000\000\000\000\000\000\000\000\000?\007\000\004\000\004~\006P\024\006\011\000\004\000\004\215\005X\033v\010\000\004\000\004?\005p\027?\005\000\004\000\004\235\011\200\014?\006\000\004\000\0044\011\202\016"\006\000\004\000\004?\010?\015?\010\000\004\000\004?\005?\030D\011\000\004\000\004?\003\224*?\007\000\004\000\004~\006P\024?\007\000\004\000\004~\006P\024?\007\000\004\000\004~\006P\024?\007\000\004\000\004~\006P\024?\003\000\004\000\004$\004?\020?\003\000\004\000\004$\004?\020?\003\000\004\000\004$\004?\020?\003\000\004\000\004$\004?\020?\003\000\004\000\004$\004?\020??\212\001g\003\224*??\223\001Q\003\020'\030??\001\031\003l K??\001?\002X\033\200??\001?\002p\027\233??\001\223\002?\025??\010\002w\002P\024??$\002J\002\\022\036\000J\002\033\002h\020T\000u\002?\001?\016\204\000\234\002?\001?\015?\000?\002?\001\200\014?\000?\002\207\001?\013\023\001%\003t\001?\012|\001?\003A\001`\011?\001\021\010!\010\000\010\000\010\000\010\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\003\000\024\000\022\000\017\000\025\000\033\000\014\000\016\000T\000*\000\000\000\000\000\000\000)\000\206\000\232\000}\000?\000\207\000d\000J\000I\000*\000@\000:\003?\000\000\000\000\000\000\000J\000`\0001\000O\000>\000\030\000\017\000\016\000\010\000\007\000\004\000?\001D\000\000\000\000\000\000\000d\001`\001?\000_\000.\000\030\000\015\000\016\000"\000\037\000:\000v\014?\004\000\000\000\000\000\000\000\200\000\000\000\004\000\004\000\004\211\012N\017?\031\232\017d???I\017l\020?\000Z\000?\020\000\000\000\001\005\000'%\003\000\236?\003\000f?\001\000?'\000\004\000\004\000\004\000\000\000\000\000\000??\000\000?\037\000\001\000\000\000\000\000\004?\002?\001?\001~\002\226\001\030\003\000\000\000\000\000\000\000\000\000\000\037\000?\000_\000\177\000\237\000?\000?\000?\000\000\000\037\000?\000_\000\177\000\237\000?\000?\000?\000\001\000\000\0009\000\000\000\020\000 \000@\000`\000\200\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\003?\003?\003?\003?\003?\003?\003\210\004\000\000\000\010?\007\000\010\000\010-<->E)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000??\000\000\012\000\022\000?\000\000\001\000\001\000\001\000\001\000\001\000\000\012\000\022\000?\000\000\001\000\001\000\001\000\001\000\001\022\000\022\000\022\000\001\000\001\000?\000?\000\016\000\021\000J\000N\000d\000\224\000\234\000?\000?\000?\000?\000?\000?\000?\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000M\000c\000\215\000\230\000\237\000?\000?\000?\000?\000?\000?\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000o\005\000\004[\003\000\000\000\000\000\000\000\000L\000\026\0003\1775\001\000\000\000\000\000\000\000\000%\006?\003\000\000!\001\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\002\000\004\000\004?\001d\000\000\000;\000=\000p}?\000\000\000\000\000\000\000\000\000d\000e\000P\000h\000\026\000\233\000?\000qXO?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\037\000?\000_\000\177\000\237\000?\000?\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000<\000\022\000\001\000?\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#\000L\000o\000\214\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000\234\000\215\000\206\000\200\000}\000y\000t\000q\000n\000l\000h\000d\000a\000[\000U\000Q\000K\000E\000A\000>\0009\0006\0006\0005\0006\0005\0004\0003\0003\0004\0004\0003\0001\0000\000.\000,\000*\000(\000%\000%\000#\000"\000 \000 \000 \000\037\000)\000$\000\000\000?\000\004\000e\000P\000qXO?\000\000\000\000\000\000\000\000\000\000\233\000?\000\026\000?\002\232\000\000\000?\001Z\000\000\000`\001\000\000\000\000h\000\000\000\000\000\000\000\000\000\000\000\000\000??\000\000UU??UU\000\000\000\000\000\000\000\000\000\000\014\000\000\000\000\000d\000d\000d\000d\000d\000d\000d\000d\000\000\000d\000d\000\000\000.\000\000\000\000\000\000\000\000\000\000\000e\000P\000qXO?\000\000\000\000\000\000\000\000\000\000\233\000?\000\026\000p}?\000\000\000\000\000\000\000\000\000qXO?\000\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000#\000L\000o\000\214\000?\000?\000?\000?\000\000\000\000\000a\002\000\004\000\004?\001\202\000\203\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000,\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000????\000\000\000\000\012\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\012\000\000\000\000!?\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000j\030\200\026\000\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000U\000\000\000\034\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\034\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\000\000\000\007\002\011\0004\000??\000\006<\007???\000L\000\000\000\003\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000/\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000II*\000\216\003\000\000
    User Comment: \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000
    Sub Sec Time: 01
    Sub Sec Time Original: 01
    Sub Sec Time Digitized: 01
    Flash Pix Version: 0100
    Color Space: 1
    Exif Image Width: 5760
    Exif Image Length: 3840
    Interoperability Offset: 9326
    Focal PlaneX Resolution: 5760000/1461
    Focal PlaneY Resolution: 3840000/972
    Focal Plane Resolution Unit: 2
    Custom Rendered: 0
    Exposure Mode: 0
    White Balance: 0
    Scene Capture Type: 0
    0xA430: 
    0xA431: 288022005571
    0xA432: 85/1
    0xA434: EF85mm f/1.8 USM
    0xA435: 0000000000
    GPS Info: 9554
  Profile-XMP: 2529 bytes
  Tainted: False
  User Time: 0.390u
  Elapsed Time: 0m:0.392660s
  Pixels Per Second: 53.7Mi		
		
		

152.1.3. mogrify

格式转换

		
gm mogrify -format png *.jpg
		
		

152.1.4. convert

		
缩放命令:

scale%:宽和高都按指定的比例缩放
scale-x%xscale-y% :宽和高分别按指定的比例缩放,可以写成200x50%这样用一个%表示的形式,宽放大200%,高缩小50%
width:按指定的宽来等比缩放
xheight:按指定的高来等比缩放
widthxheight:按最大边来等比缩放
widthxheight^:按最小边来等比缩放
widthxheight!:按指定了的宽和高缩放,不等比
widthxheight>:如果原尺寸大于指定的宽和/或高,则等比缩小
widthxheight< :如果原尺寸小于指定的宽和/或高,则等比放大
area@ :按指定的像素区域等比缩放图片
{size}{offset}
{size}{+-}x{+-}y:水平与垂直的位偏移量x和y		
		
		

152.1.4.1. 格式转换

			
gm convert a.bmp a.jpg
gm convert a.bmp a.pdf			
			
			

152.1.4.2. 修改图片尺寸

			
gm convert -resize 120x120 old.jpg new.jpg
			
			

将照片尺寸调整成 2K 分辨率,质量 80

			
find . -iname "*.jpg" -exec gm convert -resize 3840 -quality 80 {} {} \;
			
			

152.1.4.3. 修改图像质量

			
find . -iname "*.jpg" -exec gm convert -strip +profile "*" -quality 65 {} {} \;		
			
			
			
find . -maxdepth 1 -name "*[jpg,png]" -type f | while read img ; do
	new_img=/tmp/new/$(basename $img)
	ext=${new_img##*.} # 扩展名
	gm convert $img -thumbnail 238x138! -strip +profile '*' -quality 90 -extent 238x138 $new_img
done	
			
			

152.1.4.4. density

调整图像dpi和大小

			
gm convert -density 288 -geometry 25% image.gif image.gif		
			
			

缩小为原先的1/4,并且dpi为288

152.1.4.5. GIF 帧抽取

从gif文件中抽取第一帧

			
gm convert "Image.gif[0]" first.gif			
			
			

152.1.4.6. 创建gif图像

			
gm convert -delay 20 frame.gif animation.gif
gm convert -loop 50 frame.gif animation.gif	
			
			

每张图片显示20秒,动画循环播放50次

			
gm convert -delay 2 frame1.gif -delay 1 frame2.gif -delay 5 frame3.gif animation.gif			
			
			

152.1.5. montage

将三幅图像和并为一副图像

		
gm montage -mode concatenate -tile 3x1 image1.ppm image2.ppm image3.ppm concatenated.miff		
		
		

152.1.6. 截屏

		
gm import a.jpg
		
		

用鼠标点击所要截取的窗口,或者选择截屏区域,保存为a.jpg

保留窗口的边框

		
gm import -frame a.jpg		
		
		

152.1.7. 显示图像

		
gm display 'vid:*.jpg'