【问题标题】:FFT in JavaScript [closed]JavaScript 中的 FFT [关闭]
【发布时间】:2011-12-10 21:52:00
【问题描述】:

谁能指出我在 JavaScript 中实现快速傅立叶变换的方法?应该只使用一个简单的实数值数组。

谢谢。

【问题讨论】:

  • 有fft功能。还是谢谢。
  • 尚未经过我的测试,但看起来很有希望:nayuki.eigenstate.org/page/free-small-fft-in-multiple-languages
  • 请允许我评论罗伯特·哈维。我知道这个问题有些本地化。但我想请你重新考虑你的行动,因为它很重要。 javascript 中 fft 的重要性在于其“本地化”方面。我假设您对所涉及的所有主题都有深入的了解,但请您重新考虑。
  • 有人可以通过 Emscripten 将 KissFFT 移植到 JS 吗?

标签: javascript fft


【解决方案1】:

您可以搜索任何 Java FFT 算法并将其轻松移植到 javascript。

一个例子,在这里:

这个实现需要两个类 + FFT java code (princeton) + Complex dependency

这可能更容易直接应用: + FFT Java Code (columbia)

这段代码很容易移植到 Javascript,只记住 JavaScript 函数 Math.sin 和 Math.cos 是在弧度上工作,而不是在度数上。

【讨论】:

  • 另请参阅sylvester.jcoglan.com,了解 JavaScript 的线性代数库。
  • Java 与 Javascript 非常不同。实际上,Javascript 和 Java 只是共享一个名称。 Javascript 与 Java 相似,与 C++ 或 PHP 相似。我认为原始问题的作者不想被指向 C++ FFT 库。
  • 如果分析代码,所有类型都是数字(double)。其实你可以使用这段代码,在python上实现。
  • 即使在 2020 年,Java 和 JS 肯定是不同的,但这并不意味着将 Java 代码重写为 JS 并非易事,如果您两者都知道的话。即使您不了解 Java,将其重写为 JS 也比重写 C++ 代码容易很多,因为 Java 和 JS 都没有指针。任何还算过得去的 JS 开发者都能够接受 Java 代码并将其改编为 JS。
猜你喜欢
  • 2012-03-05
  • 2011-02-02
  • 1970-01-01
  • 2011-03-18
  • 2010-12-13
  • 2011-05-12
  • 2013-05-22
  • 2013-07-26
相关资源
最近更新 更多