我有一个将numpy数组切片成圆形的代码。我希望只恢复圆形中包含在某个角度范围内的值,并屏蔽数组。例如:用圆形上0到45度之间的(x,y)位置屏蔽原始数组。
有没有一种Pythonic的方法来实现这个功能?
以下是我的(简化后的)原始代码:
import numpy as np
matrix = np.zeros((500,500))
x = 240
y = 280
radius = 10
mask=np.ogrid[x-radius:x+radius+1,y-radius:y+radius+1]
matrix[mask]
提前感谢您。
编辑:我忽略了半径可以变化的事实。