luispedro/mahotas

Computer Vision in Python

What it solves

Mahotas provides a collection of fast computer vision algorithms for image processing. It addresses the need for high-performance vision tools in Python by implementing its core logic in C++ while maintaining a user-friendly interface that operates directly on NumPy arrays.

How it works

The library acts as a Python wrapper around C++ implementations of various computer vision algorithms. It integrates tightly with the NumPy and Matplotlib ecosystems, allowing users to perform complex image operations—such as thresholding, filtering, and feature extraction—using standard Python data structures.

Who it’s for

It is designed for developers and researchers working in computer vision, bioimage informatics, and general image processing who require execution speeds faster than pure Python implementations.

Highlights

  • Over 100 functions for image processing and computer vision.
  • High-performance C++ backend for speed.
  • Support for advanced algorithms including watershed, SURF (Speeded-Up Robust Features), SLIC super pixels, and Sobel edge detection.
  • Wide range of feature extraction tools such as Zernike, Haralick, LBP, and TAS features.
  • Stable interface with long-term backward compatibility.