Introduction to ImageMagick
- ImageMagick® is a software suite to create, edit, and compose bitmap
- images. It can read, convert and write images in a variety of formats
- (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG,
- Postscript, SVG, and TIFF. Use ImageMagick to translate, flip, mirror,
- rotate, scale, shear and transform images, adjust image colors, apply various
- special effects, or draw text, lines, polygons, ellipses and Bézier curves.
-
+ ImageMagick®, http://www.imagemagick.org, is a software suite to create,
+ edit, and compose bitmap images. It can read, convert and write images in
+ a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000,
+ PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to scale,
+ flip, mirror, rotate, distort, shear and transform images, adjust image
+ colors, apply various special effects, or draw text, lines, polygons,
+ ellipses and Bézier curves.
+
The functionality of ImageMagick is typically utilized from the command
line or you can use the features from programs written in your favorite
programming language. Choose from these interfaces: G2F (Ada), MagickCore
(PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick
(Tcl/TK). With a language interface, use ImageMagick to modify or create
images dynamically and automagically.
-
+
ImageMagick is free software delivered as a ready-to-run binary distribution
- or as source code that you may freely use, copy, modify, and distribute in
- both open and proprietary applications. It is distributed under an Apache
- 2.0-style license, approved by the OSI.
-
+ or as source code that you may freely use, copy, modify, and distribute
+ in both open and proprietary applications. It is distributed under the
+ Apache 2.0 license, approved by the OSI and recommended for use by the OSSCC.
+
The ImageMagick development process ensures a stable API and ABI. Before
each ImageMagick release, we perform a comprehensive security assessment
- that includes memory and thread error detection to help prevent exploits.
+ that includes memory and thread error detection to prevent security
+ vulnerabilities.
Features and Capabilities
-
+
Here are just a few examples of what ImageMagick can do:
-
- * Format conversion: convert an image from one format to another (e.g. PNG
- to JPEG)
- * Transform: resize, rotate, crop, flip or trim an image
- * Transparency: render portions of an image invisible
- * Draw: add shapes or text to an image
- * Decorate: add a border or frame to an image
- * Special effects: blur, sharpen, threshold, or tint an image
- * Animation: create a GIF animation sequence from a group of images
- * Text & comments: insert descriptive or artistic text in an image
- * Image identification: describe the format and properties of an image
- * Composite: overlap one image over another
- * Montage: juxtapose image thumbnails on an image canvas
- * Generalized pixel distortion: correct for, or induce image distortions
- including perspective.
- * Morphology of shapes: extract features, describe shapes and recognize
- patterns in images.
- * Motion picture support: read and write the common image formats used in
- digital film work
- * Image calculator: apply a mathematical expression to an image or image
- channels
- * Discrete Fourier transform: implements the forward and inverse DFT.
- * High dynamic-range images: accurately represent the wide range of
- intensity levels found in real scenes ranging from the brightest direct
- sunlight to the deepest darkest shadows
- * Encipher or decipher an image: convert ordinary images into
- unintelligible gibberish and back again
- * Virtual pixel support: convenient access to pixels outside the image
- region
- * Large image support: read, process, or write mebi- and gibi-pixel image
- sizes
- * Threads of execution support: ImageMagick is thread safe and most
- internal algorithms are OpenMP-enabled to take advantage of speed-ups
- offered by the dual and quad-core processor technologies
- * Heterogeneous distributed processing: certain algorithms are
- OpenCL-enabled to take advantage of speed-ups offered by executing in
- concert across heterogeneous platforms consisting of CPUs, GPUs, and
- other processors.
-
- Examples of ImageMagick Usage, http://www.imagemagick.org/Usage/,
- shows how to use ImageMagick from the command-line to accomplish any
- of these tasks and much more. Also, see Fred's ImageMagick Scripts at
- http://www.fmwconcepts.com/imagemagick/, a plethora of command-line scripts
+
+ * Format conversion: convert an image from one format to another (e.g.
+ PNG to JPEG).
+ * Transform: resize, rotate, crop, flip or trim an image.
+ * Transparency: render portions of an image invisible.
+ * Draw: add shapes or text to an image.
+ * Decorate: add a border or frame to an image.
+ * Special effects: blur, sharpen, threshold, or tint an image.
+ * Animation: create a GIF animation sequence from a group of images.
+ * Text & comments: insert descriptive or artistic text in an image.
+ * Image identification: describe the format and attributes of an image.
+ * Composite: overlap one image over another.
+ * Montage: juxtapose image thumbnails on an image canvas.
+ * Generalized pixel distortion: correct for, or induce image distortions
+ including perspective.
+ * Morphology of shapes: extract features, describe shapes and recognize
+ patterns in images.
+ * Motion picture support: read and write the common image formats used in
+ digital film work.
+ * Image calculator: apply a mathematical expression to an image or image
+ channels.
+ * Discrete Fourier transform: implements the forward and inverse DFT.
+ * Perceptual hash: maps visually identical images to the same or similar
+ hash-- useful in image retrieval, authentication, indexing, or copy
+ detection as well as digital watermarking.
+ * Color management: accurate color management with color profiles or in
+ lieu of-- built-in gamma compression or expansion as demanded by the
+ colorspace.
+ * High dynamic-range images: accurately represent the wide range of
+ intensity levels found in real scenes ranging from the brightest direct
+ sunlight to the deepest darkest shadows.
+ * Encipher or decipher an image: convert ordinary images into
+ unintelligible gibberish and back again.
+ * Virtual pixel support: convenient access to pixels outside the image
+ region.
+ * Large image support: read, process, or write mega-, giga-, or
+ tera-pixel image sizes.
+ * Threads of execution support: ImageMagick is thread safe and most
+ internal algorithms are OpenMP-enabled to take advantage of speed-ups
+ offered by multicore processor chips.
+ * Distributed pixel cache: offload intermediate pixel storage to one or
+ more remote servers.
+ * Heterogeneous distributed processing: certain algorithms are
+ OpenCL-enabled to take advantage of speed-ups offered by executing in
+ concert across heterogeneous platforms consisting of CPUs, GPUs, and
+ other processors.
+ * ImageMagick on the iPhone: convert, edit, or compose images on your
+ iPhone.
+
+ Examples of ImageMagick Usage, http://www.imagemagick.org/Usage/, shows how
+ to use ImageMagick from the command-line to accomplish any of these tasks and
+ much more. Also, see Fred's ImageMagick Scripts,
+ http://www.fmwconcepts.com/imagemagick/: a plethora of command-line scripts
that perform geometric transforms, blurs, sharpens, edging, noise removal,
and color manipulations.