imutils
A series of convenience functions to make basic image processing functions such as translation, rotation, resizing, skeletonization, displaying Matplotlib images, sorting contours, detecting edges, and much more easier with OpenCV and both Python 2.7 and Python 3.
Decision gist · record as of 2026-08-14
No—install only if you are maintaining legacy code that already depends on imutils. The package is dormant (last release 2021-01-15), has unclear licensing, and requires external dependencies not declared in its metadata. For new projects, use the underlying libraries directly or consider actively maintained alternatives. The high install friction and lack of maintenance signal make it a poor choice for new development.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- NumPy, SciPy, Matplotlib, and OpenCV must be installed separately before imutils can be used; imutils does not declare these as dependencies.
- Installation friction is high: the package declares no runtime dependencies in its metadata, but the description states it requires NumPy, SciPy, Matplotlib, and OpenCV to be pre-installed.
- The package is dormant—last release was 2021-01-15, with no recent commits despite an active repository.
License · maintenance · safety
(unclear) — License status is unclear: the package declares no license in its metadata. Before installing, verify the actual license by checking the repository directly, as this affects your ability to use and redistribute the code.
last release 2021-01-15 (2037 days) · last repo commit 2024-06-24 · 4,592 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 701,572 downloads/mo, #5,291 on PyPI
Alternatives
Verify before relying
# Requires NumPy, SciPy, Matplotlib, OpenCV pre-installed
pip install imutils
import imutils
# Example: rotate an image
rotated = imutils.rotate(image, angle=90)
# Example: resize maintaining aspect ratio
resized = imutils.resize(image, width=300)- Whether the package works reliably with modern Python versions given its dormant status and Python 2.7 heritage.
- Current compatibility with recent OpenCV versions and whether breaking changes have occurred since the last 2021 release.
- Whether the license is actually MIT, BSD, or another permissive license despite unclear metadata.
What it is and what it does
imutils is a lightweight wrapper library that simplifies common image processing tasks by providing convenience functions for geometric transformations, morphological operations, and color space conversions. It was designed to reduce boilerplate when working with OpenCV in Python, offering functions like translate(), rotate(), resize(), skeletonize(), auto_canny(), and opencv2matplotlib() that abstract away matrix construction and parameter tuning.
The package is dormant: its last release was 2021-01-15, and it has not been actively maintained since. While the repository remains accessible and has accumulated 4592 stars, the lack of recent updates means it may not be compatible with current versions of its dependencies or modern Python environments. It has no known security vulnerabilities and no declared runtime dependencies, though it requires NumPy, SciPy, Matplotlib, and OpenCV to be installed separately.
Use it for
- Quickly rotate, translate, or resize images without manually constructing transformation matrices.
- Automatically tune Canny edge detection parameters based on image statistics instead of manual threshold tuning.
- Convert BGR images to RGB for correct display in Matplotlib without explicit color space conversion calls.
- Skeletonize binary images to extract topological structure for shape analysis or feature extraction.
- Search function names across modules when learning the library or migrating between versions.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No—install only if you are maintaining legacy code that already depends on imutils.
The package is dormant (last release 2021-01-15), has unclear licensing, and requires external dependencies not declared in its metadata. For new projects, use the underlying libraries directly or consider actively maintained alternatives. The high install friction and lack of maintenance signal make it a poor choice for new development.
Install
imutils on PyPI
Before you install
Installation friction is high: the package declares no runtime dependencies in its metadata, but the description states it requires NumPy, SciPy, Matplotlib, and OpenCV to be pre-installed. The package is dormant—last release was 2021-01-15, with no recent commits despite an active repository.
NumPy, SciPy, Matplotlib, and OpenCV must be installed separately before imutils can be used; imutils does not declare these as dependencies.
License in practice
License status is unclear: the package declares no license in its metadata. Before installing, verify the actual license by checking the repository directly, as this affects your ability to use and redistribute the code.
Quickstart
# Requires NumPy, SciPy, Matplotlib, OpenCV pre-installed
pip install imutils
import imutils
# Example: rotate an image
rotated = imutils.rotate(image, angle=90)
# Example: resize maintaining aspect ratio
resized = imutils.resize(image, width=300)
Verify before relying
- Whether the package works reliably with modern Python versions given its dormant status and Python 2.7 heritage.
- Current compatibility with recent OpenCV versions and whether breaking changes have occurred since the last 2021 release.
- Whether the license is actually MIT, BSD, or another permissive license despite unclear metadata.
Package facts
| License | Not declared unclear |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Dormant 2,037 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 701,572 / month, #5,291 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: imutils-0.5.4.tar.gz
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “opencv convenience functions”
- imutilsimutils provides convenience wrappers around OpenCV image processing…
- opencv-contrib-python-headlessProvides OpenCV's computer vision algorithms and image processing…
- albucoreAlbucore provides optimized atomic image processing functions that…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also Willow · opencv-python-headless · opencv-contrib-python-headless · deskew · resize-right · opencv-contrib-python · mmcv · python-resize-image · opencv-python · contourpy