Python用于二维矩阵上的循环过滤器/窗口?

2024-06-25 23:20:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建一个能够以循环方式过滤的代码。我需要过滤这些数据,以便能够分析这些数据

例如,我有这些数据

data=[[1,1,1,1,1],
      [2,2,2,2,2],
      [3,3,3,3,3],
      [4,4,4,4,4],
      [5,5,5,5,5]]

我只使用了scipy的过滤器,但是它只适用于array/multiarray。它一行一行地做。因此,它只会使输出形状像一个盒子或钟。我需要把它做成圆形/油炸圈饼

到目前为止,我只是设法做到了这一点

data=[[0,0,0,0,0],
      [0,2,2,2,0],
      [0,3,3,3,0],
      [0,4,4,4,0],
      [0,0,0,0,0]]

有什么方法可以实现一个圆矩阵作为一个过滤器,使所有其他值都为0,但使圆的内部值保持不变

我想要这种输出

data=[[0,0,0,0,0],
      [0,0,2,0,0],
      [0,3,3,3,0],
      [0,0,4,0,0],
      [0,0,0,0,0]]

如果可能的话,我可以让它控制圆的厚度,这样我就可以有一个像这个成品一样的甜甜圈过滤器吗

data=[[0,0,0,0,0],
      [0,0,2,0,0],
      [0,3,0,3,0],
      [0,0,4,0,0],
      [0,0,0,0,0]]

Tags: 数据方法代码过滤器data方式scipy圆形