img alternatives and similar packages
Based on the "Images" category.
Alternatively, view img alternatives based on common mentions on social networks and blogs.
-
imgproxy
Fast and secure standalone server for resizing and converting remote images -
imaginary
Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing -
pigo
Fast face detection, pupil/eyes localization and facial landmark points detection library in pure Go. -
bimg
Go package for fast high-level image processing powered by libvips C library -
gowitness
๐ gowitness - a golang, web screenshot utility using Chrome Headless -
geopattern
:triangular_ruler: Create beautiful generative image patterns from a string in golang. -
stegify
๐ Go tool for LSB steganography, capable of hiding any file within an image. -
Angular 2 Image Gallery
Image Gallery built with Angular 15+, node.js and GraphicsMagick -
steganography
Pure Golang Library that allows LSB steganography on images using ZERO dependencies -
darkroom
An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency. -
mergi
go library for image programming (merge, crop, resize, watermark, animate, ease, transit) -
fastimage
Finds the type and/or size of a remote image given its uri, by fetching as little as needed. -
LookUp
:mag: Pure Go implementation of fast image search and simple OCR, focused on reading info from screenshots -
webp-server
Simple and minimal image server capable of storing, resizing, converting and caching images. -
color-extractor
Simple image color extractor written in Go with no external dependencies -
goimghdr
The imghdr module determines the type of image contained in a file for go -
scout
Scout is a standalone open source software solution for DIY video security.
Static code analysis for 29 languages.
Do you think we are missing an alternative of img or a related project?
Popular Comparisons
README
img 
A collection of image manipulation tools. Each tool takes an input file from standard input, this needs to be in PNG, JPEG or GIF format. They output the resulting image (by default in PNG format) to standard output.
To install run,
$ go install hawx.me/code/img
You can then run go help
and go help [command]
for information.
The aim of img is not to be fast, if you want fast use GraphicsMagick, the aim is to be readable. Diving through endless files of C and C++ to find out how a certain effect is implemented is no fun, reading a single Go file is hopefully better.
Example (Command Line)
Here is an example: First we convert the image to greyscale using the values from the red colour channel, then boost the contrast slightly using a linear function, and finally tint the image with a dark red.
(img greyscale --red | \
img contrast --linear --ratio 1.5 | \
img tint --with '#83121344') < input.png > output.png
You can see here how easy it is to chain different tools together using pipes.
Example (Go)
You can also use the img libraries in Go code. We could rewrite the previous example as,
// example.go
package main
import (
"hawx.me/code/img/contrast"
"hawx.me/code/img/greyscale"
"hawx.me/code/img/tint"
"image/png"
"os"
)
func main() {
input, _ := os.Open(os.Args[1])
img, _ := png.Decode(input)
img = greyscale.Red(img)
img = contrast.Linear(img, 1.5)
img = tint.Tint(img, color.NRGBA{131, 18, 19, 255})
output, _ := os.Create(os.Args[2])
png.Encode(output, img)
}
This can then be compiled and run like ./example input.png output.png
.