awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Go Image Processing Libraries

Ranking updated Jul 13, 2026

For an image processing library for Go, the first results are esimov/caire (Caire is a specialized Go-based image processing engine that provides advanced content-aware resizing and manipulation capabilities, making it a powerful tool for specific transformation tasks despite its focus on seam carving rather than general-purpose drawing primitives), disintegration/imaging (This library provides a comprehensive suite of native Go functions for common image manipulation tasks like resizing, cropping, and color adjustment, making it a high-performance choice for image processing workflows) and fogleman/gg (This library provides a robust set of drawing primitives and vector-to-raster rendering capabilities, making it a suitable tool for programmatic image generation and manipulation tasks in Go). anthonynsimon/bild and nfnt/resize round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

We curate open-source GitHub repositories matching “best go image processing libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Go Image Processing Libraries

Find the best repos with AI.We'll search the best matching repositories with AI.
  • esimov/caireesimov avatar

    esimov/caire

    10,481View on GitHub↗

    Caire is a command-line image processing engine designed for content-aware resizing and batch manipulation. It utilizes seam carving algorithms to adjust image dimensions by identifying and removing low-energy pixels, allowing for the rescaling of images while preserving primary visual subjects and maintaining aspect ratios. The tool distinguishes itself through its ability to protect specific visual elements, such as human faces, from distortion during the resizing process. Users can apply custom binary masks to define regions for protection or forced removal, and the engine provides real-ti

    Caire is a specialized Go-based image processing engine that provides advanced content-aware resizing and manipulation capabilities, making it a powerful tool for specific transformation tasks despite its focus on seam carving rather than general-purpose drawing primitives.

    GoImage ProcessingImage Processing
    View on GitHub↗10,481
  • disintegration/imagingdisintegration avatar

    disintegration/imaging

    5,727View on GitHub↗

    Imaging is a Go library for image processing that provides a set of functions for common image manipulation tasks. It offers capabilities for adjusting image colors, applying convolution filters, blurring, cropping, resizing, sharpening, and correcting orientation based on EXIF data. The library supports resizing images to exact dimensions or bounding boxes with aspect ratio preservation and configurable resampling filters. Color adjustments include gamma, contrast, brightness, and saturation controls, while blurring and sharpening use Gaussian-based algorithms with configurable sigma paramet

    This library provides a comprehensive suite of native Go functions for common image manipulation tasks like resizing, cropping, and color adjustment, making it a high-performance choice for image processing workflows.

    GoAspect Ratio Preserving ResizingColor AdjustmentsConvolutional Filtering
    View on GitHub↗5,727
  • fogleman/ggfogleman avatar

    fogleman/gg

    4,778View on GitHub↗

    gg is a Go 2D graphics library and vector graphics engine designed for programmatic image generation. It provides a canvas rendering API to create custom 2D shapes, paths, and visual assets, which can be exported as PNG and JPG files. The toolkit enables the construction of complex geometry using Bezier curves and custom paths. It supports a variety of rendering operations, including filling and stroking paths, applying linear and radial gradients, and utilizing surface patterns. The library covers a broad range of capabilities, including text rendering with word wrapping and dimension measu

    This library provides a robust set of drawing primitives and vector-to-raster rendering capabilities, making it a suitable tool for programmatic image generation and manipulation tasks in Go.

    GoShape Drawing
    View on GitHub↗4,778
  • anthonynsimon/bildanthonynsimon avatar

    anthonynsimon/bild

    4,192View on GitHub↗

    Bild is an image processing library implemented in the Go programming language. It provides a collection of algorithmic engines for image manipulation, including a convolution kernel engine for filtering, an image blending tool for layer composition, and a procedural noise generator for creating synthetic textures. The project is distinguished by its procedural generation capabilities, implementing Perlin, Gaussian, binary, and uniform noise algorithms to produce random pixel distributions and organic patterns. It also features a command-line interface that allows users to apply visual effect

    Bild is a comprehensive image processing library written in native Go that provides a wide range of transformation, filtering, and composition tools, making it a direct fit for your image manipulation needs.

    GoGo Image Processing LibrariesProcedural Noise TexturesCLI Image Processing Tools
    View on GitHub↗4,192
  • nfnt/resizenfnt avatar

    nfnt/resize

    3,046View on GitHub↗

    Pure golang image resizing

    This library provides high-performance, pure Go image resizing and interpolation, serving as a specialized tool for a core image processing task.

    GoImage ProcessingImage Processing and Graphics
    View on GitHub↗3,046
  • davidbyttow/govipsdavidbyttow avatar

    davidbyttow/govips

    1,528View on GitHub↗

    This library provides high-performance image processing by acting as a Go wrapper for the libvips C library, offering extensive format support and efficient transformation capabilities.

    GoImage Processing
    View on GitHub↗1,528
  • llgcode/draw2dllgcode avatar

    llgcode/draw2d

    1,163View on GitHub↗

    2D rendering for different output (raster, pdf, svg)

    This library provides 2D vector graphics rendering and drawing primitives for Go, making it a suitable tool for image generation and transformation tasks despite its focus on vector-based output.

    GoGo Geospatial Libraries
    View on GitHub↗1,163
  • nomacs/nomacsnomacs avatar

    nomacs/nomacs

    2,778View on GitHub↗

    nomacs is a cross-platform image viewer application used for viewing and managing a wide variety of standard and specialized image file formats. It functions as an image processing utility, a metadata inspector, and an annotation tool. The application enables side-by-side image comparison by synchronizing zooming and panning across multiple open windows. It also provides the ability to browse and view images embedded within compressed archives or document files without manual extraction. The software includes capabilities for image metadata analysis using histograms, the addition of visual m

    This is a standalone cross-platform image viewer application written in C++ rather than a Go library for programmatic image processing and manipulation.

    C++Image Format DecodersImage Processing
    View on GitHub↗2,778
  • phoboslab/qoiphoboslab avatar

    phoboslab/qoi

    7,492View on GitHub↗

    QOI is a lossless image codec and encoding standard designed for high-speed compression and decompression of raw pixel data. It provides a toolkit for translating raw image buffers into a compact format and back into pixel representations without any loss of quality. The implementation focuses on fast image encoding and decoding, enabling the rapid conversion of compressed image data back into raw pixels. It also supports image format conversion to ensure compatibility across different software systems and hardware.

    This repository provides a high-performance codec for image compression and decompression, but it is a specialized format implementation rather than a general-purpose image processing library for transformation and drawing.

    CImage DecodingLossless Image Codecs
    View on GitHub↗7,492
  • d2phap/imageglassd2phap avatar

    d2phap/ImageGlass

    12,241View on GitHub↗

    ImageGlass is a lightweight image viewer and editor designed for Windows environments. It provides a unified interface for displaying a wide range of file types, including raw camera files, vector graphics, and web formats, while offering tools for basic image transformation and metadata inspection. The application distinguishes itself through deep integration with the host operating system, including the ability to synchronize its internal viewing order with the file explorer's sorting state. It supports complex media by providing playback controls for multi-frame and animated files, allowin

    This is a standalone Windows image viewer application rather than a Go library for developers to integrate into their own image processing workflows.

    C#Image Format DecodersImage Processing
    View on GitHub↗12,241
  • yalantis/ucropYalantis avatar

    Yalantis/uCrop

    12,113View on GitHub↗

    uCrop is an Android library designed for cropping, rotating, and scaling images within mobile applications. It provides a reusable interface component that allows users to manipulate photos through touch gestures, enabling precise control over visual composition and aspect ratios. The library distinguishes itself by offering extensive customization of the editing interface, allowing developers to adjust colors, frame shapes, and widget visibility to align with specific application design languages. It handles image processing tasks by managing quality, compression formats, and output dimensio

    This is an Android-specific UI component for image cropping and manipulation, rather than a general-purpose Go library for image processing tasks.

    JavaImage ProcessingImage Processing
    View on GitHub↗12,113
  • libvips/libvipslibvips avatar

    libvips/libvips

    11,085View on GitHub↗

    Libvips is a C-based image processing library designed to manipulate large visual assets through a low-memory, parallel processing pipeline. It functions as a streaming image processor that avoids loading entire files into system memory, enabling the handling of massive images in resource-constrained environments. The library distinguishes itself through a demand-driven architecture that constructs a deferred execution plan, computing only the necessary pixels for a final output. By utilizing a cache-friendly tiled processing model and memory-mapped file access, it minimizes latency and redun

    This is a high-performance C-based image processing engine rather than a native Go library, meaning it requires CGO bindings to be used within a Go project.

    CImage Processing
    View on GitHub↗11,085
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
esimov/caire10.5KGomitMay 2, 2025
disintegration/imaging5.7KGoMITSep 21, 2023
fogleman/gg
4.8K
Go
MIT
Dec 14, 2023
anthonynsimon/bild4.2KGoMITMar 30, 2026
nfnt/resize3KGoISCApr 2, 2022
davidbyttow/govips1.5KGomitSep 24, 2025
llgcode/draw2d1.2KGoBSD-2-ClauseApr 22, 2026
nomacs/nomacs2.8KC++gpl-3.0Feb 18, 2026
phoboslab/qoi7.5KCMITMay 29, 2026
d2phap/imageglass12.2KC#otherFeb 19, 2026

Related searches

  • a library for image processing in Rust
  • a C# library for image processing
  • a java library for image processing
  • an image processing library for server-side manipulation
  • a compression library for Go projects
  • an open source photo editing software
  • an open source raster graphics editor
  • a command line tool for editing GIFs