Home

Awesome

OSS Imaging Libraries

List of all open-source imaging libraries and their strengths and weaknesses. Please help me improve this page! Submit pull requests for additions and corrections.

We're looking for a cross-platform library suitable for on-demand, server-side image processing. It should have the following attributes:

LibraryLicenseLanguagePromising?Comments
LibGDSimilar to MITCyesSee LibGD.md
Skia image_operations.ccNew BSDC++Yes
LibvipsLGPLC++yes
CairoLGPL 2.1 or MPL 1.1CYes
OpenCVBSDC++
OpenCV-RubyBSD
OpenImageIO GithubBSDC++Yes - very active
PixmanMITCYes
CImgCeCILL-C
CxImagezlibC++
LeptonicaApacheCYes
DevILLGPL
PIL or PillowSimilar to MIT/BSDCTied to Python. Pillow is a community fork.
Magick++ as a part of ImageMagickApacheC++
FreeImageGPL 2/3 OR FIPLC
SDL_Imagezlib license
Adobe Generic Image LibraryBoost Software LicenseC++NoEntirely C++ templates; part of Boost; no actual imaging algorithms.
ExactImageGPL 2
ImLib2Unclear
MarvinLGPLJava
AnimalGPLC
GandalfLGPLC
IMMITC++
PILBSD-styleC/Python
GMICCeCILL2C
FrameWaveApache V2.0CAMD's alternative to IPP. Claims to also work decently on Intel
modpagespeed kernel/imageApache 2C++Offers box/area averaging resizing, Google's page optimization apache module

Uncategorized - need to organize

https://github.com/mosra/magnum http://gfxprim.ucw.cz/

https://github.com/mono/csharpplugin <- Create .NET wrappers from header files (better than SWIG)

List of imaging libraries with lisp bindings

http://stackoverflow.com/questions/11816571/light-weight-c-image-library

http://www.tecgraf.puc-rio.br/im/

http://www.exactcode.com/site/open_source/exactimage/releases/ GPL

https://github.com/cinder/Cinder/blob/ae580c2cb0fc44d0a99b233dbefdf736f7093209/src/cinder/ip/Resize.cpp Cinder Modified BSD

Optimization resources

https://github.com/rflynn/imgmin

Halide, a language for optimized image processing - Very promising!

liborc

https://github.com/ispc/ispc

.NET

https://github.com/praeclarum/CrossGraphics

Graphics Gems

https://github.com/erich666/GraphicsGems https://github.com/erich666/GraphicsGems/blob/master/gemsiii/filter.c https://github.com/erich666/GraphicsGems/blob/master/gemsiii/bitmap.c

Image servers

https://github.com/buaazp/zimg ImageMagick-based, async https://github.com/kristopolous/apophnia ImageMagick-based

https://github.com/beetlebugorg/mod_dims ImageMagick-based

https://github.com/3078825/ngx_image_thumb LibGD based

https://github.com/hudora/huImages PIL based

https://github.com/lovell/sharp libvips based for Node

https://github.com/ipconfiger/pyImageServer

https://github.com/sdepold/node-imageable-server

https://github.com/agschwender/pilbox

Scaling-only resources

https://code.google.com/p/imageresampler/

github/jrmuizel/image-scaling: Porting Skia scaling to Emscripten

https://code.google.com/p/java-image-scaling/

https://github.com/tmiddelkoop/ImageResize

https://github.com/jrmuizel/pixman-scaler

Imaging/graphics libraries that don't offer significant image scaling abilities

LibraryLicensePlatformsLanguage
ccvMITC++
GDALMIT?

Exisitng comparisons

http://www.vips.ecs.soton.ac.uk/index.php?title=Speed_and_Memory_Use http://randomfoo.net/2013/02/24/performance-comparison-of-image-libraries-revisited http://leocharre.com/articles/faster-image-resizing-in-linux/

Chainable image processing frameworks with GUIs

MathMap - https://github.com/schani/mathmap

Vips - http://www.vips.ecs.soton.ac.uk/index.php?title=Libvips

https://code.google.com/p/imagestack/

iOS specific

https://github.com/BradLarson/GPUImage

Go-lang

https://github.com/disintegration/imaging

Windows APIs

Windows Imaging Components StrechDIBits DrawDIB

Image resizing and transformation reading

Unsorted

https://github.com/psobot/smartcrop

Finding more libraries on GitHub

https://github.com/search?l=C%23&p=2&q=stars%3A%3E1+graphics&ref=searchresults&type=Repositories