2024-04-20 06:53:07 发布
网友
假设我有一个100x100的黑色jpeg。每个像素每次迭代都有1%的几率变白,我执行30个循环
如果生成它更好,我想可能是某种100x100数组,其中每个值从黑色(0)开始,一些变为白色(1),然后将此数组转换为打印在控制台上的图像或保存的图像(用于每次迭代)
如果可能的话,我想进一步添加一个几率修饰符,根据圆曲线的高度,其中一些列的几率比其他列高:中心的几率最大,向外的几率越小
我该怎么做呢?如果圆方程部分不能做,没问题。只要换个方格就够了
这会让你走:
import numpy as np from scipy.misc import imsave N = 100 def iterate(img, filename, it_num): swaps = np.random.choice((0, 255), size=(N,N)) img = np.clip(img + swaps, 0, 255) imsave(filename + '_it_' + str(it_num) + '.jpg', img) if np.all(img): return None else: return img img = np.zeros((N, N), dtype=np.uint8) it = 1 while img is not None: img = iterate(img, 'output', it) it += 1
最后一个图像,满255应该是白色的,但实际上是黑色的。我不知道为什么,但我也不知道这是否重要
你的圆方程部分不是很精确,我跳过了。使用numpy的随机工具可能没那么难
这会让你走:
最后一个图像,满255应该是白色的,但实际上是黑色的。我不知道为什么,但我也不知道这是否重要
你的圆方程部分不是很精确,我跳过了。使用numpy的随机工具可能没那么难
相关问题 更多 >
编程相关推荐