美文网首页
百分位滤波-filters.percentile_filter

百分位滤波-filters.percentile_filter

作者: 打杂算法工程师 | 来源:发表于2022-12-19 00:14 被阅读0次

最近看到一个方法用了百分位滤波,到处搜也没看到一个解释,后来找到一篇说中值滤波就是0.5的百分位滤波,因此直接看中值滤波就明白了,因此首先看中值滤波

中值滤波


如上图所示,选定一个3*3的矩阵,计算均值就是均值滤波,计算中位数就是中值滤波,那相应的百分位滤波呢,自然就是中心点的像素值选择分位数即可。

实现函数

image.png

看一下参数,size就是对应上述的3*3矩阵窗口算均值,也可以自定义为(10,5)的窗口,percentile即为选取的中位数。
看一下应用:

from scipy import ndimage, misc
import matplotlib.pyplot as plt
fig = plt.figure()
plt.gray()  # show the filtered result in grayscale
ax1 = fig.add_subplot(121)  # left side
ax2 = fig.add_subplot(122)  # right side
ascent = misc.ascent()
result = ndimage.percentile_filter(ascent, percentile=20, size=20)
ax1.imshow(ascent)
ax2.imshow(result)
plt.show()

上述的参数20,即为(20,20),和input的shape保持一致,实现的效果如下:

相关文章

网友评论

      本文标题:百分位滤波-filters.percentile_filter

      本文链接:https://www.haomeiwen.com/subject/wacyqdtx.html