A pure Go library providing a comprehensive set of image processing filters with no external dependencies.
GIFT (Go Image Filtering Toolkit) is a comprehensive image processing library written entirely in Go. It provides over 30 filters for transformations, adjustments, and effects, enabling developers to perform common image manipulation tasks like resizing, cropping, color correction, and applying blurs or sharpening directly within Go applications.
Go developers who need to integrate image processing capabilities into their applications, such as those building web services, command-line tools, or desktop apps that handle image manipulation without relying on external C libraries.
Developers choose GIFT for its pure Go implementation with no external dependencies, ensuring easy installation and portability, along with a clean, idiomatic API that supports flexible filter chaining and high-quality resampling for performance and simplicity in image processing tasks.
Go Image Filtering Toolkit
Has no external dependencies outside the Go standard library, enabling easy installation with 'go get' and cross-platform portability, as emphasized in the README.
Offers over 30 built-in filters for transformations, adjustments, and effects, including high-quality Lanczos resampling and convolution for embossing, as shown in the filter examples.
Allows creating sequences of filters with gift.New() and Add() methods, applying them in a single draw operation for efficient image processing pipelines.
Provides a straightforward Go API with clear methods like Draw and DrawAt, making it accessible for developers familiar with Go's image package.
Only supports CopyOperator and OverOperator, which restricts advanced image layering and blending modes compared to more comprehensive libraries.
Lacks native support for batch or concurrent processing, potentially hindering performance when handling large image sets or real-time applications.
As a pure Go library, it may be slower for CPU-intensive operations like large convolutions compared to optimized C-based alternatives like libvips.
Go package for computer vision using OpenCV 4 and beyond. Includes support for DNN, CUDA, OpenCV Contrib, and OpenVINO.
Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing
Imaging is a simple image processing package for Go
Go Graphics - 2D rendering in Go with a simple API.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.