30 open-source projects similar to jrosebr1/imutils, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Imutils alternative.
scikit-image is a Python image processing library and scientific image analysis toolkit. It provides a framework for digital image processing and computer vision, utilizing numerical arrays for pixel-level manipulations. The library enables the quantification of image properties and the detection of visual features, such as edges and blobs. It includes tools for image segmentation and the extraction of textures and patterns to characterize objects within visual data. Capabilities cover image manipulation through color space conversion, geometric transformations, and digital restoration. It a
mmcv is a foundation library for computer vision based on PyTorch. It provides a comprehensive system for constructing convolutional neural networks, a toolkit for image and video preprocessing, and a collection of high-performance deep learning vision operators. The project is distinguished by its hardware-accelerated kernels for complex operations such as deformable convolutions and region pooling. It features a configuration-driven framework that allows for the dynamic instantiation of network layers and the registration of custom modules without modifying code. The library covers a broad
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
This project is a comprehensive computer vision library for the PyTorch ecosystem, providing a standardized collection of neural network architectures, datasets, and high-performance transformation utilities. It serves as a foundational framework for building, training, and deploying deep learning models, offering a centralized model registry that allows developers to instantiate architectures with pre-trained weights for tasks such as image classification, object detection, and semantic segmentation. The library distinguishes itself through its modular approach to data and compute management
Supervision is a computer vision toolset for normalizing model outputs, managing datasets, and visualizing annotations. It provides a framework to convert predictions from various classification and detection models into a standardized data format to ensure interoperability across different computer vision pipelines. The library features a post-processor for filtering, counting, and tracking detected objects across image frames and video streams. It includes capabilities for large image tiling to improve the detection of small objects and tools for assigning persistent identities to objects t
Augmentor is a Python image augmentation library and framework designed to expand machine learning datasets. It functions as a preprocessing tool that generates synthetic image variations to increase data diversity and as a training data streamer that feeds augmented images and labels directly into neural network loops without requiring intermediate disk storage. The framework maintains spatial alignment between images and their corresponding masks, which is required for semantic segmentation training. It supports various geometric and pixel-level transformations, including elastic distortion
Jimp is a JavaScript image processing library and Node.js manipulation tool designed to perform image transformations and edits entirely within a JavaScript environment. It is a zero-dependency image library that operates without requiring native binaries or external system software dependencies. The project provides a programmatic interface for automated image transformations, including resizing, cropping, and filtering. It supports the creation of custom image pipelines and server-side image editing by processing data without relying on native system tools.
Imaginary is a self-hosted HTTP server for image processing that applies transformations like resizing, cropping, rotating, and format conversion through URL parameters. It operates as a stateless request-response pipeline, processing images fetched from remote URLs or served from a local directory without requiring client-side dependencies. The server distinguishes itself through its security and access control capabilities, offering optional API key validation, HMAC-signed URL verification, and remote origin whitelisting to restrict which image sources are permitted. It also provides a heal
Jimp is a zero-dependency JavaScript image processing library and programmatic editor designed for manipulating, resizing, and filtering images in Node.js. It functions as a multi-format image encoder and extensible pipeline that operates entirely in JavaScript to ensure portable deployment across different environments without requiring native system dependencies. The engine features a modular architecture that allows for custom image processor builds and the registration of custom processing plugins. This extensibility enables the addition of specific visual effects and custom file-type enc
gm is a JavaScript image processing library and Node.js manipulation tool that serves as a programmatic wrapper for the GraphicsMagick engine. It translates JavaScript method calls into shell commands to automate the resizing, cropping, and transformation of images. The library provides an interface to execute specific GraphicsMagick operations while allowing raw command passthrough for custom arguments or engine features not covered by the standard API. Its capabilities cover geometric manipulation, color and tone adjustment, and image quality optimization. It includes tools for image compo
GPUImage is a GPU-accelerated image processing framework for iOS designed to apply real-time filters and effects to images and video. It functions as a processing engine and fragment shader library that manages textures and shaders for efficient visual data manipulation. The framework utilizes a chainable filter architecture and a texture-based data pipeline to pass image data between processing stages without expensive memory transfers. It enables the creation of bespoke visual effects through the authoring of custom fragment shaders and provides mechanisms to synchronize texture data with e
android-gpuimage is an OpenGL image processing library for Android that provides a GPU-powered framework for applying real-time shaders, blending layers, and processing live video streams. It functions as a real-time video filter and image blending engine to modify the luminance, vibrance, and geometry of visual content. The library enables the application of graphical effects to both static photos and live camera feeds. It supports complex image transformations, including the merging of multiple image layers through various blending modes. Capabilities cover a broad range of image manipulat
jsQR is a JavaScript library for locating and decoding QR codes directly within a browser or Node.js environment. It functions as a client-side scanner and decoder that extracts text and data from images using pixel arrays, removing the need for server-side processing. The library provides tools for QR code localization to identify the exact coordinates of corners and alignment patterns within a larger image. It uses image pattern recognition to isolate the QR code and extract its encoded content. Its internal operations cover binarization-based thresholding, geometric pattern localization,
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
SmartCropper is a computer vision library and user interface component designed for automated document border identification and perspective-based image cropping. It provides a framework for detecting the edges of items such as ID cards and business cards to suggest crop boundaries and apply geometric transformations that flatten skewed images into front-facing views. The project features an interactive document scanner interface that allows for manual crop area adjustment. This is achieved through draggable anchor points and a magnifying glass tool for high-precision pixel alignment. The li
This is a Rust image processing library designed for encoding and decoding various image file formats and manipulating pixels. It provides a digital image manipulation toolkit and a set of image format codecs to read data from files and write memory buffers into standard formats. The library features a pure-Rust processing pipeline to ensure memory safety and cross-platform compatibility. It includes a pluggable hook system for dynamic format registration, allowing external crates to register custom decoders and encoders at runtime. The capability surface covers geometry manipulation for res
Thumbnailator is a Java image thumbnailing library designed for generating resized images with aspect ratio preservation and high-quality scaling. It serves as a toolkit for rotating, cropping, and adjusting the opacity of images within Java applications. The library is distinguished by its ability to function as an Exif-aware image processor, automatically rotating thumbnails based on embedded orientation metadata. It also provides specialized utilities for digital watermarking, allowing secondary images and branding markers to be overlaid with adjustable transparency. Core capabilities cov
SDWebImage is an asynchronous image downloader and caching library for iOS and macOS applications. It provides a core identity centered on a network utility for fetching images from URLs, a tiered memory and disk caching engine, and a processing framework for decoding and encoding media. The library features a specialized rendering engine for animated formats such as GIF and WebP, including support for progressive animation rendering. It distinguishes itself through a plugin system that allows for extended image format support and the ability to replace default loading or storage logic with c
ng-file-upload is an Angular directive for handling multipart file uploads and drag-and-drop selection within Angular applications. It functions as a client-side tool for validating file attributes, processing images, and generating media previews before transmission to a server. The project includes a client-side image processor for resizing, center-cropping, and correcting JPEG EXIF orientation. It also features a browser-based media previewer for images, audio, and video files, and an HTML5 File API shim to provide upload and reader functionality for legacy browsers. Additional capabiliti
GoCV is a computer vision library and Go language binding for OpenCV. It serves as an image processing toolkit and deep learning inference engine, providing programmatic access to a wide range of algorithms for image manipulation, object detection, and video analysis. The project differentiates itself through high-performance native bindings and hardware acceleration. It utilizes a foreign function interface to map Go calls to C++ functions and includes a hardware-agnostic backend dispatch to route neural network tasks to computation engines such as CUDA and OpenVINO. The library covers a br
Pillow is a Python image processing library and digital image manipulation toolkit used for opening, manipulating, and saving various image file formats. It serves as a multi-format image codec wrapper that enables the reading and writing of diverse standards such as JPEG, PNG, TIFF, and BMP. The library provides tools for programmatic image manipulation, including resizing, cropping, rotating, and transforming visual content through direct pixel data modification. It supports pixel data analysis to extract and modify raw information for custom visual processing and data transformations. The
Color-thief-py is a Python library designed to analyze digital images for the purpose of extracting prominent color information. It functions as a computer vision tool that processes image files to identify the single most dominant color or to generate a representative color palette based on the visual composition of the source. The library utilizes the Pillow imaging library to handle diverse file formats and load image data into memory as structured pixel arrays. By mapping these pixels into a three-dimensional color space and applying median-cut quantization, the tool identifies statistica
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
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
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 project is a CSS stylesheet compiler that transforms Sass source code into standard CSS. It provides the primary mechanism for converting styles while implementing syntax rules for web browsers and applications. The compiler supports a module-based dependency system that uses dedicated namespaces to provide encapsulation and prevent global scope collisions. It includes specialized engines for multi-model color conversion and advanced mathematical calculations, including trigonometry and logarithms. Capabilities cover a broad range of build and analysis tools, including the generation of
Albumentations is an image augmentation library and computer vision preprocessing tool designed to expand datasets for deep learning models. It provides a collection of transformations that modify pixel values and spatial geometry to increase the diversity of training samples and improve model generalization. The library supports both 2D image augmentation and 3D volumetric data augmentation. It handles a variety of labels alongside images, ensuring that bounding boxes, keypoints, and segmentation masks remain accurately aligned when spatial transformations are applied. The tool incorporates
ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance numerical computing. It serves as a GPU numerical computing library and parallel signal processing toolkit that abstracts hardware backends, allowing the same codebase to execute across various GPU architectures and CPUs. The project distinguishes itself through a JIT engine that uses expression compilation to fuse operations and minimize memory overhead. It employs a deferred execution graph to optimize computation chains and provides interoperability primitives to share data and e
Kornia is a differentiable computer vision library and cross-framework tensor vision toolset. It implements vision operations as differentiable tensors to enable integration into deep learning pipelines and supports the transpilation of operations across PyTorch, TensorFlow, JAX, and NumPy. The project provides specialized toolsets for geometric vision and stereo depth, including algorithms for 3D scene reconstruction, camera calibration, and pose estimation. It further distinguishes itself as a differentiable image augmentation framework, applying random geometric and color transformations w
ImagePy is a Python-based framework designed for scientific image analysis and processing. It provides a modular environment where users can perform complex tasks such as image segmentation, morphological operations, and volumetric reconstruction on multidimensional data. The platform distinguishes itself through a plugin-based architecture that decouples processing logic from the host environment. It utilizes reflection to automatically generate user interfaces from plugin attributes, allowing for the integration of custom tools without modifying core source code. Users can record sequences