单面噪声与Perlin噪声
image-processing
4
0

我想知道为什么单纯形问世之后,今天Perlin噪声仍然如此受欢迎。单纯噪声是由Ken Perlin亲自制造的,并且认为是要接管他的旧算法,该算法对于较大的尺寸和更好的质量(没有可见的伪影)来说很慢。

单面噪声在2001年问世,在那10年中,我只见过人们谈论Perlin噪声时,涉及到生成地形的高度图,创建程序纹理等等。

有人可以帮我吗,Simplex噪声是否有缺点?我听说有传言说Perlin噪声在处理1D和2D噪声时会更快,但我不知道它是否成立。

谢谢!

参考资料:
Stack Overflow
收藏
评论
共 5 个回答
高赞 时间 活跃

肯·佩林(Ken Perlin)为他的单纯噪声算法申请了专利。据我所知,他的经典算法并未获得专利。

收藏
评论

只是一些轶事经验,我之所以使用经典Perlin噪声是因为Ken Perlin具有经典Perlin噪声的C实现 ,同时提供了改进的Perlin噪声的Java实现 。尽管听起来很傻,但是经典的Perlin噪点更容易复制并粘贴到程序中,因此这就是我使用它的原因。我一直打算移植该Java实现,但是经典的Perlin看起来运行良好,所以我从不费力添加它。

Stefan Gustavson具有一些很好的Simplex Noise C实现,此处

收藏
评论

对经典Perlin噪声的某些偏爱可能是因为能够使用导致已知的视觉特性的已知值,而不是花费时间来寻找使用单形噪声获得等效输出所需的输入参数。

[简单噪声]的视觉特性略有不同,因此它并不总是直接替代经典噪声。依赖于经典噪声的详细特征(例如精确的特征大小,值的确切范围或高阶统计量)的应用程序可能需要进行一些修改,才能在使用单工噪声时看起来不错。
Stefan Gustavson的Simplex噪声揭秘

收藏
评论

如果仅仅是因为这个名字,我一点也不惊讶。您必须在Perlin噪声和Simplex噪声之间进行选择。后者较新并且具有一些优点。但是,您知道,这听起来像是两者的“简单”版本。我会去比较复杂的一个。噪音应该很复杂,不是吗?

人们倾向于非理性。

收藏
评论

“如果没有破裂,请不要修复它。”

看看您是否可以找到任何人告诉您为什么Simplex更好。我发现“它更快并且扩展到多个维度”和“尝试简化噪声以降低高维噪声函数的复杂性”。我们大多数人都在2或3个维度上工作,如果幸运的话可以做4个工作。

我认为可以公平地说,Perlin的实时使用率太低,难以处理,对于大多数用途而言,标准Perlin噪声就足够了。在预渲染中(例如在电影行业中使用),时间并不是很重要,因为渲染总是很慢。在实时仿真中,我们有足够的方法来减少正在进行的处理的范围,以致您不太可能每几纳秒/毫秒生成大量的噪声图-这只是基本的实时优化。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号