我学会了如何使用这份很棒的PDF实现像素一次的Perlin噪声,但显然它非常慢。
第一个想法是批量生成 - 代替从0.0到1.0遍历每个像素,生成一个numpy.linspace
,然后使用numpy的矢量化操作来处理它,但这似乎超出了我的能力范围,我总是迷失方向并删除我的所有代码。
有没有好心人可以帮助我?提供尽可能多的示例代码和详细的每一步解释都将对我有所帮助。
编辑:通过“批次”我意味着包含空间中不同点的Perlin噪声值的数组,而不是我的noise()方法仅一次生成一个像素。
我学会了如何使用这份很棒的PDF实现像素一次的Perlin噪声,但显然它非常慢。
第一个想法是批量生成 - 代替从0.0到1.0遍历每个像素,生成一个numpy.linspace
,然后使用numpy的矢量化操作来处理它,但这似乎超出了我的能力范围,我总是迷失方向并删除我的所有代码。
有没有好心人可以帮助我?提供尽可能多的示例代码和详细的每一步解释都将对我有所帮助。
编辑:通过“批次”我意味着包含空间中不同点的Perlin噪声值的数组,而不是我的noise()方法仅一次生成一个像素。
如果我猜得没错的话,Asmagedon想要预先计算他的噪声纹理,然后将它们绘制到不同尺寸的其他目标上。
一种方法是使用scipy.signal.resample,它可以插值和子采样信号。从记忆中来看,它只能一次处理一个维度--只需循环处理各个维度即可。
可能有更好的抗锯齿方法,但这种方法很简单。