美文网首页
百分位滤波-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