•        0

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.

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 (C), MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++), JMagick (Java), L-Magick (Lisp), NMagick (Neko/haXe), MagickNet (.NET), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (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.

Its features include:

  • 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.
  • 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 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 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.



Related Projects


GraphicsMagick is the swiss army knife of image processing. It provides a robust and efficient collection of tools and libraries which support reading, writing, and manipulating an image in over 88 major formats including important formats like DPX, GIF, JPEG, JPEG-2000, PNG, PDF, PNM, and TIFF.

im4java - java interface to the ImageMagick commandline

im4java is a pure-java interface to the ImageMagick commandline. im4java just generates the commandline for the ImageMagick commands and passes the generated line to the selected IM-command (using the java.lang.ProcessBuilder.start()-method).

JMagick - Java interface of ImageMagick

JMagick is an open source Java interface of ImageMagick. It is implemented in the form of a thin Java Native Interface (JNI) layer into the ImageMagick API.

OpenCV - Open Source Computer Vision

OpenCV (Open Source Computer Vision) is a library of programming functions for real time computer vision. The library has more than 500 optimized algorithms. It is used to interactive art, to mine inspection, stitching maps on the web on through advanced robotics.

occipital - Wrapper for image processing utilities, including imagemagick.

Wrapper for image processing utilities, including imagemagick.

Bash Batch Image Processing Scripts

bbips - Bash Batch Image Processing Scripts. A collection of bash scripts that use Imagemagick to quot;batchquot; process entire directories of images all at once. For use with Linux and Unix systems to batch process *.jpg image files from the bash shell.

Marvin - Image Processing Framework

Marvin is an image processing framework that provides features for image and video frame manipulation, multithreading image processing, image filtering and analysis, unit testing, performance analysis and addition of new features via plug-in. It can process camera frames for video filtering, object tracking, augmented reality, motion detection and analysis among other things.

Thumbnailator - A thumbnail generation library for Java

Thumbnailator is a thumbnail generation library for Java. Learning how to use the Image I/O API, Java 2D API, image processing, image scaling techniques etc is fairly difficult task. Thumbnailator will take care of all those things for you. Thumbnailator is a single JAR file with no dependencies to external libraries, making development and deployment simple and easy. It also provides support to watermark, rotate, fluent API.


The Orfeo Toolbox is a C++ library for high resolution remote sensing image processing. It is developped by CNES in the frame of the ORFEO program. More information is available at It is based on the medical image processing library ITK and offers particular functionalities for remote sensing image processing in general and for high spatial resolution images in particular. Targeted algorithms for high resolution optical images (SPOT, Quickbird, Worldview, Landsat, Iko


A .NET API to the ImageMagick image-processing library for Desktop and Web.

scrimage - Scala image processing library

This readme is for the 2.0.x versions. For 1.4.x please see the old is a consistent, idiomatic, and immutable scala library for manipulating and processing of images. The aim of the this library is to provide a quick and easy way to do the kinds of image operations that are most common, such as scaling, rotating, converting between formats and applying filters. It is not intended to provide functionality that might be required by a more "serious" image processing application - such as face recognition or movement tracking.

magician - Image manipulation library for Node.js. Requires ImageMagick.

Image manipulation library for Node.js. Requires ImageMagick.

imgscalr - Java Image-Scaling Library

imgscalr is a Java Image-Scaling Library implementing Chris Campbell's incremental scaling algorithm as well as Java2D's "best-practices" image-scaling techniques. imgscalr also provides support for applying arbitrary BufferedImageOps against resultant images directly in the library. It can fit an image to a specific width or height regardless of its orientation using a Mode argument.

friday-examples - Image processing examples which use the friday image library.

Image processing examples which use the friday image library.

olemiss-image-processing - University of Mississippi's Image Processing Library

University of Mississippi's Image Processing Library

Image-Processing - Experimental image processing library in JavaScript.

Experimental image processing library in JavaScript.

Insight Segmentation and Registration Toolkit

ITK is an open-source, cross-platform system that provides developers with an extensive suite of software tools for image analysis. Developed through extreme programming methodologies, ITK employs leading-edge algorithms for registering and segmenting multidimensional data.

Visualization Toolkit

The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing and visualization. VTK supports a wide variety of visualization algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation.

exact-image - A fast, modern and generic image processing library

A fast, modern and generic image processing library

image - PHP Image Manipulation & Processing Library

PHP Image Manipulation & Processing Library