Python中的大津法与中值滤波

5 投票
3 回答
5504 浏览
提问于 2025-04-16 22:53

我试着到处找找,但除了OpenCV之外,找不到任何关于Otsu方法或中值滤波器在Python中的实现。这是我尝试过的OpenCV函数的两个文档链接。

http://opencv.willowgarage.com/documentation/c/image_filtering.html

http://www.cs.indiana.edu/cgi-pub/oleykin/website/OpenCVHelp/ref/OpenCVRef_Cv.htm#decl_cvThreshold3

我首先查看了这个帖子,但似乎没有找到一个完整的解决方案来解决我的问题。Python中的机器视觉

我基本上是在寻找是否有人知道其他可以实现Otsu方法和中值滤波器的函数。我只是想找一些替代方案,避免自己去编写这些代码,但除非必要,我不想重新发明轮子。提前感谢你的帮助,如果你需要更具体的信息,请告诉我。

3 个回答

0

Matlab的图像工具箱里有一个内置的中值滤波器。

如果你没有图像处理工具箱,也可以通过分块处理的方法自己实现一个。

7

关于Otsu方法,我找到了一款叫Mahotas的图像处理工具包,它里面包含了这个方法。使用起来非常简单,只需要用easy_install来安装就可以了。你可以在这里找到它的使用说明。

http://packages.python.org/mahotas/index.html?highlight=otsu#mahotas.otsu
2

我对Otsu方法不是很了解,但Scipy库里有一个专门处理图像的子库。比如,这里有他们的多维中值滤波器的链接:

http://docs.scipy.org/doc/scipy-0.9.0/reference/generated/scipy.ndimage.filters.median_filter.html#scipy.ndimage.filters.median_filter

撰写回答