Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

For most things you would use this for, or ImageMagick for that matter, you are almost certainly better of using libvips[0]

0. https://github.com/libvips/libvips



+1

I can't recommend libvips enough. I recently switched to it from ImageMagick+tificc in a flatbed scanner appliance and am seeing a minimum of a 2x performance increase with minimal memory usage. libvips makes it easy to setup a pipeline of transformations and utilizes all CPU cores by default.

Even outside of using via pyvips, I've noticed similar performance gains over ImageMagick by using the CLI of libvips. https://www.libvips.org/API/current/using-cli.html


Thanks, @Thev00d00, I hadn't herd of this! I've amazed folks in the past with things I've built to do fairly heavy duty image processing using only shell (incl. Unix text utilities and awk) and ImageMagick, even though I am not a programmer!

I almost didn't click through to read about libvips, since I only want to use these tools from a CLI/shell interface, but - would you look at that - it's got command line bindings! I'm going to have to give this a try to see if it can do some of the "magick" stuff...


libvips dev here -- the CLI interface is deliberately really basic, you'll see much better performance and flexibility with one of the language bindings. pyvips works well:

https://github.com/libvips/pyvips

The idea is that complex CLIs like imagemagick's are almost complete programming languages, and need a lot of learning. It's much better (imo) (and less work) to have a good binding, and to lean on python for the programming side.

libvips is mostly self-binding. It has good introspection support, so the core of pyvips is just 200 lines of code, and automatically updates itself for new libvips versions.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: