首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在数组中循环过滤器的有效方法

在数组中循环过滤器的有效方法
EN

Stack Overflow用户
提问于 2018-09-03 20:35:36
回答 1查看 91关注 0票数 0

所以我正在做这个课程,还有一个练习,我必须使用数组的3x3区域对图像进行模糊处理,并将所有值交换为平均值。所以我写了这个函数,我知道它仍然不能完全工作:

代码语言:javascript
复制
def replace_avg(img, block=3):
    x_dim, y_dim = img.shape
    for row in range(1,x_dim-block+2,3):
        for col in range(1,y_dim-block+2,3):
            img[row-(block-2):row+(block-1),col-(block-2):col+(block-1)] = np.average(img[row-(block-2):row+(block-1),col-(block-2):col+(block-1)])
    return img

我的问题是,有没有一种更有效的方法来循环使用numpy的3x3过滤器来遍历这个数组?

EN

回答 1

Stack Overflow用户

发布于 2018-09-03 21:00:31

skimage包提供了一个函数,它可以执行您想要的操作:

代码语言:javascript
复制
from skimage import transform
img_rescaled = transform.rescale(img,1/block)

也许您正在寻找一个专门使用Numpy的解决方案,在这种情况下,您应该查看该函数是如何在skimage模块中编码的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52149917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档