gpt4 book ai didi

python - 计算 numpy 矩阵中 true 的周围(python)

转载 作者:太空宇宙 更新时间:2023-11-04 08:32:29 24 4
gpt4 key购买 nike

我想做一个类似扫雷的东西

输入矩阵:

matrix = [[true, false, false],
[false, true, false],
[false, false, false]]

如果场上有炸弹,我不认为炸弹在周围。

我考虑过用 numpy convolve 做这件事,但我正在努力研究如何遍历矩阵并始终检查实际字段的左、上、右和下字段(在边框的情况下,我检查“空"肯定是 0 的字段)

enter image description here

最佳答案

这是一个使用 scipy.signal.convolve2d 的解决方案:

import scipy
import numpy as np

# Input matrix, can be left as boolean
matrix = np.array([[True, False, False],
[False, True, False],
[False, False, False]])

# Our dougnut filter
W = np.array([[1, 1, 1],
[1, 0, 1],
[1, 1, 1]])

# Single convolve
res = convolve2d(matrix, W, 'same')

我们得到了准确的结果:

res
array([[1, 2, 1],
[2, 1, 1],
[1, 1, 1]])

关于python - 计算 numpy 矩阵中 true 的周围(python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51782558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com