awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jrosebr1 avatar

jrosebr1/imutils

0
View on GitHub↗
4,594 stars·1,025 forks·Python·MIT·4 views

Imutils

imutils is a computer vision utility toolkit and image processing library designed to simplify common manipulation tasks using OpenCV. It serves as an image analysis helper and geometry transformation tool for automating visual data processing.

The toolkit provides specialized capabilities for maintaining image integrity during transformations, such as resizing images while preserving aspect ratios and rotating images without cropping corners. It also includes tools for four-point perspective warping to create top-down views and the extraction of topological skeletons from binary images.

The library covers a broad range of preprocessing and analysis functions, including automatic edge detection threshold calculation, spatial contour sorting, and color space mapping between RGB and BGR. Additionally, it includes utilities for dataset management, such as recursive file-system scanning for image discovery and a web image downloader.

Features

  • Image Processing - Simplifies common image manipulation tasks like rotation, resizing, and perspective shifts using Python and OpenCV.
  • Aspect Ratio Preserving Resizing - Provides a core utility to resize images while automatically preserving the original aspect ratio.
  • Computer Vision Preprocessing - Prepares raw image data for machine learning models via contour sorting, edge detection, and color space conversion.
  • Computer Vision Utilities - Serves as a toolkit of helper scripts for automating geometry transformations and color space conversions.
  • Classical Edge Detection - Provides automated threshold calculation for classical Canny edge detection.
  • Aspect Ratio Preservation - Provides utilities to resize images while automatically maintaining the original aspect ratio to prevent stretching.
  • Image Geometric Transformations - Uses transformation matrices to automate image rotation, translation, and resizing while preserving data integrity.
  • Image Analysis Helpers - Provides a toolset for extracting topological skeletons and performing perspective transforms on visual data.
  • Image Geometry Transformations - Automates changes to image orientation and scale while maintaining aspect ratios and preventing edge cropping.
  • Image Processing Libraries - A collection of Python functions that simplify common image manipulation tasks using the OpenCV library.
  • Color Space Conversions - Handles color space conversions to ensure images render correctly in plotting libraries.
  • Spatial Sorting - Provides utilities to order detected contours spatially from left-to-right or top-to-bottom.
  • Image Transformation Utilities - Provides utilities for resizing with aspect ratio preservation and rotating images without cropping corners.
  • Topological Skeletonization - Implements an iterative erosion and dilation process to extract the topological skeleton of binary images.
  • Perspective Warping - Provides four-point perspective warping to flatten skewed images into a top-down view.
  • Channel Reordering - Provides a utility to swap color channels between BGR and RGB for consistent rendering.
  • Dataset Asset Discovery - Provides tools for finding image files across directories and downloading images from the web for batch processing.
  • Threshold Calculation - Implements automatic Canny edge detection threshold calculation based on the median pixel intensity of an image.
  • Color Space Transformations - Provides color space mapping to swap RGB and BGR channels for consistent rendering across libraries.
  • Spatial Node Sorting - Orders detected image contours by analyzing their center-point coordinates along a specified axis.
  • Image Rotation - Implements image rotation that automatically expands the canvas to prevent corner cropping.
  • Image Topology Analysis - Analyzes the shape and connectivity of objects by extracting skeletal structures from binary images.
  • Perspective Warping - Provides four-point perspective warping to transform skewed images into a flattened top-down view.
  • Computer Vision - Convenience functions for basic image processing and manipulation.

Star history

Star history chart for jrosebr1/imutilsStar history chart for jrosebr1/imutils

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does jrosebr1/imutils do?

imutils is a computer vision utility toolkit and image processing library designed to simplify common manipulation tasks using OpenCV. It serves as an image analysis helper and geometry transformation tool for automating visual data processing.

What are the main features of jrosebr1/imutils?

The main features of jrosebr1/imutils are: Image Processing, Aspect Ratio Preserving Resizing, Computer Vision Preprocessing, Computer Vision Utilities, Classical Edge Detection, Aspect Ratio Preservation, Image Geometric Transformations, Image Analysis Helpers.

What are some open-source alternatives to jrosebr1/imutils?

Open-source alternatives to jrosebr1/imutils include: scikit-image/scikit-image — scikit-image is a Python image processing library and scientific image analysis toolkit. It provides a framework for… open-mmlab/mmcv — mmcv is a foundation library for computer vision based on PyTorch. It provides a comprehensive system for constructing… anthonynsimon/bild — Bild is an image processing library implemented in the Go programming language. It provides a collection of… pytorch/vision — This project is a comprehensive computer vision library for the PyTorch ecosystem, providing a standardized collection… roboflow/supervision — Supervision is a computer vision toolset for normalizing model outputs, managing datasets, and visualizing… mdbloice/augmentor — Augmentor is a Python image augmentation library and framework designed to expand machine learning datasets. It…

Open-source alternatives to Imutils

Similar open-source projects, ranked by how many features they share with Imutils.
  • scikit-image/scikit-imagescikit-image avatar

    scikit-image/scikit-image

    6,529View on GitHub↗

    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

    Pythoncomputer-visionimage-processingpython
    View on GitHub↗6,529
  • open-mmlab/mmcvopen-mmlab avatar

    open-mmlab/mmcv

    6,446View on GitHub↗

    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

    Python
    View on GitHub↗6,446
  • 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

    Go
    View on GitHub↗4,192
  • pytorch/visionpytorch avatar

    pytorch/vision

    17,743View on GitHub↗

    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

    Pythoncomputer-visionmachine-learning
    View on GitHub↗17,743
  • See all 30 alternatives to Imutils→