govips
A lightning fast image processing and resizing library for Go (by davidbyttow)
bimg
Go package for fast high-level image processing powered by libvips C library (by h2non)
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
govips
Posts with mentions or reviews of govips.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-28.
-
Just In Time Image Optimization at Reddit Scale
We chose to use govips which is a cgo wrapper around the libvips image manipulation library. The majority of new development for services in our backend is written using baseplate.go. But Go is not an ideal choice for media processing as it cannot keep up with the performance of native code. The most widely used image-processing libraries like libmagick are primarily written in C or C++. Speed was a major factor in selecting libvips in order to keep latency low on CDN cache misses for images. In our tests, libvips was 3–4 times faster than libmagick on basic image processing operations. Content-aware smart cropping was implemented by porting smartcrop.js to Go. This is the only operation implemented in pure Go.
- Image manipulation with Go
-
Open source projects for beginner
Hi! You are willing to dive into some cgo we have a couple of feature requests :) https://github.com/davidbyttow/govips
- Show HN: Govips 2.0, lightning fast image processing for Go
bimg
Posts with mentions or reviews of bimg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-09.
-
Go Image Converting
h2non/bimg can handle both if the underlying libvips is compiled with support for both formats.
-
What is the coolest Go open source projects you have seen?
bimg
-
WASM instead of C Dependencies?
I have web applications written in Rust and Go that need some basic image processing (reading JPEGs, PNGs, writing JPEGs, WebPs, AVIFs and resizing). This is something I always struggle with, because most libraries for image processing are written in C (libpng, libwebp, mozjpeg; or higher-level ones like vips). While there are usually dependencies in each language build on top of those C dependencies, like bimg for Go, I don’t like having C dependencies in a Rust, Go or even Node.js projects.
- Image manipulation with Go
-
Image Compression with Golang
For image processing, I will use the bimg library because in my opinion it has a very intuitive API and is easy to use, in addition to being very fast.
What are some alternatives?
When comparing govips and bimg you can also consider the following projects:
resize - Pure golang image resizing
imaginary - Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing
gg - Go Graphics - 2D rendering in Go with a simple API.
imaging - Imaging is a simple image processing package for Go
gocv - Go package for computer vision using OpenCV 4 and beyond. Includes support for DNN, CUDA, and OpenCV Contrib.
bild - Image processing algorithms in pure Go
lilliput - Resize images and animated GIFs in Go
goimagehash - Go Perceptual image hashing package
fastimage - Finds the type and/or size of a remote image given its uri, by fetching as little as needed.
imagick - Go binding to ImageMagick's MagickWand C API
svgo - Go Language Library for SVG generation