首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >佛陀罗特分形

问佛陀罗特分形
EN

Stack Overflow用户
提问于 2009-09-29 22:38:06
回答 6查看 1.9K关注 0票数 15

我正在尝试实现buddhabrot fractal。我不能理解一件事:我检查的所有实现都选择图像上的随机点来计算粒子逃逸的路径。他们为什么要这么做?为什么不遍历所有像素呢?

随机点的作用是什么?点越多,图片越好,所以我认为所有像素都是最好的图片--我错了吗?

根据我的测试数据:

处理400x400的图片。所以如果我遍历的话,需要160000个像素来迭代。

使用随机抽样,图片只有在一百万个点之后才开始成形。好的结果显示了大约10亿个随机点,这需要几个小时的计算。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-09-30 02:07:17

随机抽样比网格抽样更好,主要有两个原因。首先,因为网格采样会在结果图像中引入类似网格的伪影。第二个原因是网格采样可能无法为收敛的结果图像提供足够的样本。如果在完成栅格过程后需要更多采样,则需要使用稍微偏移的栅格进行另一个过程(以便不对相同的点进行重采样),或者切换到更精细的栅格,这可能会执行比所需更多的工作。随机采样提供了非常平滑的结果,一旦图像收敛或对结果满意,您就可以停止该过程。

我是这项技术的发明者,所以你可以相信我。:-)

票数 32
EN

Stack Overflow用户

发布于 2009-10-03 07:15:16

火焰分形也是如此:佛祖兄弟是关于寻找“吸引子”的,所以即使你从一个随机的点开始,它也会很快地收敛到这些吸引曲线。您通常会避免在迭代中绘制前10个像素,因此起点并不是真正相关的,但是,为了避免将相同的计算做两次,随机采样要好得多。如前所述,它消除了人工制品的风险。

但随机抽样最重要的特征是它具有所有级别的精度(至少在理论上)。这对于分形是非常重要的:它们具有所有级别的精度的细节,因此也需要来自所有级别的输入。

票数 3
EN

Stack Overflow用户

发布于 2009-09-29 14:58:34

虽然我不是百分之百知道确切的原因是什么,但我认为这与效率有更多的关系。如果你打算多次遍历每一个点,它将浪费大量的处理周期来得到一个可能看起来并不是很好的图片。通过进行随机采样,您可以减少需要完成的工作量,并且在给定足够大的样本大小的情况下,仍然可以得到一个很难与迭代所有像素(从视觉角度来看)“区分”的结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1492968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档