Mahotas:用Python语言实现计算机视觉

备注

如果您在科学出版物中使用mahotas,请引用:

科埃略,L.P.,2013年。Mahotas:用于可编写脚本的计算机视觉的开源软件。开放研究软件杂志1(1):E3,DOI:https://dx.doi.org/10.5334/jors.ac

Mahotas是一个用于Python的计算机视觉和图像处理库。

它包括许多用C++实现的算法,以提高在Numy数组中操作时的速度,并具有非常干净的Python接口。

Mahotas目前拥有100多个用于图像处理和计算机视觉的功能,而且还在不断增长。Mahotas功能的一些示例:

发布计划大约是每隔几个月发布一个版本,每个版本都会带来新的功能和改进的性能。不过,界面非常稳定,使用多年前的mahotas版本编写的代码在当前版本中运行得很好,只是速度会更快(一些界面已被弃用,几年后将被移除,但在此期间,你只会收到警告)。

带有测试用例的错误报告通常在24小时内得到修复。

参见

mahotas-imread 是一个附带项目,包括读取图像/将图像写入文件的代码

实例

这是一个加载文件(名为 test.jpeg )和呼叫 watershed 使用高于阈值的区域作为种子(我们使用最大类间方差来定义阈值)。

import numpy as np
import mahotas
import pylab

img = mahotas.imread('test.jpeg')
T_otsu = mahotas.thresholding.otsu(img)
seeds,_ = mahotas.label(img > T_otsu)
labeled = mahotas.cwatershed(img.max() - img, seeds)

pylab.imshow(labeled)

计算距离变换也很容易:

import pylab as p
import numpy as np
import mahotas

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 = mahotas.distance(f)
p.imshow(dmap)
p.show()

(Source code, png, hires.png, pdf)

_images/index-1.png

完整的文档内容

跳至详细信息 API Documentation

索引和表格