我有一个数字矩阵(Nx,Ny),我想从该矩阵中选择一个数学形状坐标/组件,因为它可以是一条具有给定斜率的线
我学习了如何创建掩码以及如何以随机方式创建掩码,但我想不起如何在python中生成数学形状掩码
这是我能够开发的一些代码。如果你知道更好的方法,我也会很感激你告诉我
import random
import numpy as np
threshold = 0.85
radius=40
sq7=1/(radius*radius)
matrix=np.zeros((Nx,Ny))
for i in range(0,Nx):
for j in range(0,Ny):
if ((i-Nx*0.5)*(i-Nx*0.5)*sq7+(j-Ny*0.5)*(j-Ny*0.5)*sq7<=1.0):
matrix[i,j]= 1.0 - 0.1*random.random();
else:
matrix[i,j]=-1.0 + random.random();
randoms = np.random.normal(0,scale=0.002, size=matrix[mask].shape)
mask = matrix**2 < threshold
matrix[mask] += randoms * (1 - matrix[mask]**2)
最后,我找到了一个非常简单的方法。我刚刚做的是创建一个新的矩阵,它的维数与我想要屏蔽的矩阵相同,然后通过矩阵本身,并与我的函数值进行比较,我可以很容易地做到这一点。我会把代码留在这里
相关问题 更多 >
编程相关推荐