Haskell Image Processing (HIP) Library.


Version on this page:
LTS Haskell 20.26:
Stackage Nightly 2022-11-17:
Latest on Hackage:

See all snapshots hip appears in

BSD-3-Clause licensed by Alexey Kuleshevich
Maintained by [email protected]
This version can be pinned in stack with:hip-,4931

Haskell Image Processing Library

Haskell Image Processing (HIP) Library

Documentation is on Hackage.

Build Status


Install HIP using cabal:

  • $ cabal update && cabal install hip

and using stack (from source code only, not yet on stackage):

  • $ stack install

In order to be able to view images in GHCi and external image viewer is used. On Linux I recommend GPicView, but you can use any viewer that accepts a filename as an argument, so by default OS specific image viewer is used.


  • Backwards compatibility with GHC 7.8

  • GHC 8 support.
  • Improved IO:
    • OS default image viewer is used for displaying images with ability to use a custom one.
    • Histogram plotting is done using diagrams instead of cairo backend, significantly simplifying installation

  • Changed the way image displaying works. Now displayImage function will try to automatically detect the default external viewer program.
  • Made Histogram plotting using Chart dependency optional, which is controlled by a compile time flag use-chart.
  • Renamed module Graphics.Image.IO.External to Graphics.Image.IO.Formats, so it reflects the purpose slightly better.

  • Added support of “vector>=”

  • Added rotate function.
  • Fixed writing RGBA files with writeImage (#2).


  • Made it compatible with GHC >= 7.4 (#1)
  • Added histogram plotting using Charts