Haskell Image Processing (HIP) Library provides an easy to use interface with a whole variaty of image manipulation capabilities. Processing can be done sequentially as well as in parallel, with an inherited fusion capabily, all through repa and vector packages. It is highly extendable, with an ability to add various color spaces or provide implementations for underlying array like custom data structures. It is capable of reading and writing a number of popular image formats by using JuciyPixels and netpbm packages. Being a pure Haskell library it does not require any external programs, although it can display images using a program of your choice.

benchmark, bsd3, library, test, Graphics.Image, Graphics.Image.ColorSpace, Graphics.Image.IO, Graphics.Image.IO.Formats, Graphics.Image.IO.Histogram, Graphics.Image.Interface, Graphics.Image.Interface.Repa, Graphics.Image.Interface.Vector, Graphics.Image.Processing, Graphics.Image.Processing.Binary, Graphics.Image.Processing.Complex, Graphics.Image.Processing.Filter, Graphics.Image.Types, Hackage, Stackage, haskell, hip, image-processing, juicypixels, netpbm, repa
cabal install hip-


Haskell Image Processing Library

Haskell Image Processing (HIP) Library

Documentation is on Hackage, and Stackage.

Build Status Hackage


Install HIP using cabal:

  • $ cabal update && cabal install hip

and using stack:

  • $ stack install hip

In order to be able to view images in GHCi an external image viewer is used. You can use any viewer that accepts a filename as an argument, and by default, image viewer specified by the OS is used.