- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想用如下所示的常量值填充数组(实际上是一个 3D 数组,但为了简洁起见,我在此处显示了一个 2D 示例):
[[1,1,1],
[1,1,1],
[1,1,1]]
应该变成
[[0,1,1,1,0],
[1,1,1,1,1],
[1,1,1,1,1],
[1,1,1,1,1],
[0,1,1,1,0]]
现在 numpy.pad
将填充角落(在 3D 中也填充边缘),这不是我想要的。我可以“手动”将它们设置为零,但这会变得乏味,尤其是在例如3D。
有没有一种简短而方便的方法来做到这一点?
编辑为了让3D案例更加清晰,下面是一个例子:
[[[1]]]
应该变成
[[[0,0,0],
[0,c,0],
[0,0,0]],
[[0,c,0],
[c,1,c],
[0,c,0]],
[[0,0,0],
[0,c,0],
[0,0,0]]]
对于填充厚度为 2 的示例将显示为:
[[[0,0,0,0,0],
[0,0,0,0,0],
[0,0,c,0,0],
[0,0,0,0,0],
[0,0,0,0,0]],
[[0,0,0,0,0],
[0,0,0,0,0],
[0,0,c,0,0],
[0,0,0,0,0],
[0,0,0,0,0]],
[[0,0,c,0,0],
[0,0,c,0,0],
[c,c,1,c,c],
[0,0,c,0,0],
[0,0,c,0,0]],
[[0,0,0,0,0],
[0,0,0,0,0],
[0,0,c,0,0],
[0,0,0,0,0],
[0,0,0,0,0]],
[[0,0,0,0,0],
[0,0,0,0,0],
[0,0,c,0,0],
[0,0,0,0,0],
[0,0,0,0,0]]]
最佳答案
我认为这个问题实际上可以通过 numpy.pad 函数很容易地解决。
根据 numpy.pad 函数文档,函数的可能参数之一可以是 mode :str 或 function以下字符串值之一或用户提供的函数(来源:https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.pad.html)。
这意味着您需要做的就是传递一个函数来检查这是否是一个角,如果是,则将值设置为 0,否则设置为 1。可以通过对您的 3D 情况进行一些修改来完成curse的操作.
希望有帮助
关于python - 如何填充 numpy 数组而不填充角落?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46040277/
我试图找到这些三角形角的像素值。我可以使用 Harris 角并获得角的所有 x、y 的 numpy 数组。我希望将这些角值存储在称为角的二维列表中,如 [[x1,y1], [x2,y2], [x3,y
我的谷歌地图实例中的信息窗口看起来很有趣: 构成信息窗口图形角落和末端的某些图像似乎丢失了。知道为什么会这样吗?我正在尝试,但还没有弄清楚。 我正在使用 gmap3 ,一个用于 google 的 V3
我有一个带有动态添加和删除选项卡的 QTabWidget。我还有一个 QToolButton 设置为角落小部件,以便处理其 clicked() 信号上的添加事件。 虽然添加效果非常好,但从小部件中删除
我是一名优秀的程序员,十分优秀!