libvips : an image processing library
This branch
Is for experiemtning with libspng.
Notes
Build libspng:
cd libspng
meson build --prefix=/home/john/vips --libdir=/home/john/vips/lib \
--buildtype=release
cd build
ninja
ninja install
Installs spng.pc.
Sample code:
libspng benchmark:
$ time vips avg wtc.png
117.065766
real0m2.972s
user0m3.376s
sys0m0.197s
And for libpng:
$ time vips avg wtc.png
117.065766
real0m3.816s
user0m4.177s
sys0m0.221s
Introduction
libvips is a demand-driven, horizontally threaded image processing library. Compared to similar libraries, libvips runs quickly and uses little memory. libvips is licensed under the LGPL 2.1+.
It has around 300 operations covering arithmetic, histograms, convolution, morphological operations, frequency filtering, colour, resampling, statistics and others. It supports a large range of numeric types, from 8-bit int to 128-bit complex. Images can have any number of bands. It supports a good range of image formats, including JPEG, TIFF, PNG, WebP, HEIC, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM / PGM / PFM, CSV, GIF, Analyze, NIfTI, DeepZoom, and OpenSlide. It can also load images via ImageMagick or GraphicsMagick, letting it work with formats like DICOM.
It comes with binding