Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Computer Vision in Python
| Date | Stars |
|---|---|
| 2026-07-24 | 889 |
| 2026-07-25 | 889 |
| 2026-07-28 | 888 |
| 2026-07-30 | 888 |
| 2026-07-31 | 888 |
| 2026-08-06 | 888 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# Mahotas
## Python Computer Vision Library
Mahotas is a library of fast computer vision algorithms (all implemented
in C++ for speed) operating over numpy arrays.
[](https://github.com/luispedro/mahotas/actions/workflows/test-python-package-with-conda.yml)
[](https://coveralls.io/github/luispedro/mahotas?branch=master)
[](https://opensource.org/licenses/MIT)
[](https://pepy.tech/project/mahotas)
[](https://anaconda.org/conda-forge/mahotas)
[](https://anaconda.org/conda-forge/mahotas)
Python 3.10 through 3.14 are supported.
Notable algorithms:
- [watershed](https://mahotas.readthedocs.io/en/latest/distance.html)
- [convex points calculations](https://mahotas.readthedocs.io/en/latest/polygon.html).
- hit & miss, thinning.
- Zernike & Haralick, LBP, and TAS features.
- [Speeded-Up Robust Features
(SURF)](https://mahotas.readthedocs.io/en/latest/surf.html), a form of local
features.
- [thresholding](https://mahotas.readthedocs.io/en/latest/thresholding.html).
- convolution.
- Sobel edge detection.
- spline interpolation
- SLIC super pixels.
Mahotas currently has over 100 functions for image processing and
computer vision and it keeps growing.
The release schedule is roughly one release a month and each release
brings new functionality and improved performance. The interface is very
stable, though, and code written using a version of mahotas from years
back will work just fine in the current version, except it will be
faster (some interfaces are deprecated and will be removed after a few
years, but in the meanwhile, you only get a warning). In a few
unfortunate cases, there was a bug in the old code and your results will
change for the better.
Please cite [the mahotas paper](https://dx.doi.org/10.5334/jors.ac) (see
details below under [Citation](#Citation)) if you use it in a publication.
## Examples
This is a simple example (using an example file that is shipped with
mahotas) of calling watershed using above threshold regions as a seed
(we use Otsu to define threshold).
```python
# import using ``mh`` abbreviation which is common:
import mahotas as mh
# Load one of the demo images
im = mh.demos.load('nuclear')
# Automatically compute a threshold
T_otsu = mh.thresholding.otsu(im)
# Label the thresholded image (thresholding is done with numpy operations
seeds,nr_regions = mh.label(im > T_otsu)
# Call seeded watershed to expand the threshold
labeled = mh.cwatershed(im.max() - im, seeds)
```
Here is a very simple example of using `mahotas.distance` (which
computes a distance map):
```python
import pylab as p
import numpy as np
import mahotas as mh
f = np.ones((256,256), bool)
f[200:,240:] = False
f[128:144,32:48] = False
# f is basically True with the exception of two islands: one in the lower-right
# corner, another, middle-left
dmap = mh.distance(f)
p.imshow(dmap)
p.show()
```
(This is under [mahotas/demos/distance.py](https://github.com/luispedro/mahotas/blob/master/mahotas/demos/distance.py).)
How to invoke thresholding functions:
```python
import mahotas as mh
import numpy as np
from pylab import imshow, gray, show, subplot
from os import path
# Load photo of mahotas' author in greyscale
photo = mh.demos.load('luispedro', as_grey=True)
# Convert to integer values (using numpy operations)
photo = photo.astype(np.uint8)
# Compute Otsu threshold
T_otsu = mh.otsu(photo)
thresholded_otsu = (photo > T_otsu)
# Compute Riddler-Calvard threshold
T_rc = mh.rc(photo)
thresholded_rc = (photo > T_rc)
# Now call pylab fuExcerpt of 13,196 characters
Read on GitHub812
Christoph Gohlke · United States
13
Gabi Davar · Israel
8
5
4
3
3
hsiao yi
2
2
2
Stefan van der Walt · University of California, Berkeley · United States
2
2
Tim Gates · IRESS · Australia
1
1
The Gitter Badger · Gitter
1
Adam Johnson · @django, @djangolondon · Portugal
1
1
fossabot · @fossas
1
Guillaume Lemaitre · VP of Engineering / OSS Engineer @probabl-ai · France
1
Puresoftware · India
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:4c493c902c3a9ad0, topic:computer-vision, desc:computer vision, readme:computer vision