Go Imagick is a Go bind to ImageMagick's MagickWand C API.
It was originally developed and tested with ImageMagick 6.8.5-4, however most official Unix or Linux distributions use older versions (6.7.7, 6.8.0, etc) so some features in Go Imagick's go1 branch are being commented out and will see the light when these ImageMagick distributions could easily be updated (from the devops PoV).
MacPorts
$ sudo port install ImageMagick
$ sudo apt-get install libmagickwand-dev
Check if pkg-config is able to find the right ImageMagick include and libs:
$ pkg-config --cflags --libs MagickWand
Then go get it:
$ go get github.com/gographics/imagick/imagick
http://godoc.org/github.com/gographics/imagick/imagick
The examples folder is full with usage examples ported from C ones found in here: http://members.shaw.ca/el.supremo/MagickWand/
Since this is a CGO binding, Go GC does not manage memory allocated by the C API then is necessary to use Terminate() and Destroy() methods.
package main
import "github.com/gographics/imagick/imagick"
func main() {
imagick.Initialize()
defer imagick.Terminate()
mw := imagick.NewMagickWand()
defer mw.Destroy()
...
}