问题标签 [frequency-analysis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何使用 lucene 的 shingleanalyzerwrapper + standardanalyzer + indexreader?
我希望你能帮助我解决这个问题。我打算做什么:给定一个正确的文本,我想计算没有停用词的每个词干化标记 ngram 的频率(换句话说,停用词已经被删除)。
这是这种情况:我正在使用 ShingleAnalyzerWrapper + StandardAnalyzer 使用 IndexWriter 索引一些文本,并且当我向 IndexWriter 添加文档时(如下所示: indexwriter.addDocument(doc, analyzer); 其中分析器再次是 ShingleAnalyzerWrapper + StandardAnalyzer )。
但问题是:当我得到术语频率和术语时,停用词似乎被下划线取代。
这是输入:
String text = "to i want to to i want to linked";
String text2 = "super by hard easy";
这是输出:
term: |freq:6
term: _|freq:2
term:_ hard|freq:1
term:_ i|freq:2
term:_ link|freq:1
term:easy|freq:1
term :hard|freq:1
term:hard easy|freq:1
term:i|freq:2
term:i want|freq:2
term:link|freq:1
term:super|freq:1
term:super _|freq: 1
学期:想要|频率:2
学期:想要 _|频率:2
如果有什么不清楚的地方,请问我,这样我会尽量让自己更清楚
谢谢您的帮助
iphone - 将 AudioQueueBufferRef 数据传递给 FFT 函数!
我正在尝试通过 iphone 上的麦克风计算给定声音过程的频率。
我已经阅读了有关 FFT 的所有帖子(包括所有苹果代码示例,例如 aurioTouch、SpeakHere),但没有解决这个问题。
我正在使用 AudioQueue,但是如何从 AudioQueue 回调函数 (MyInputBufferHandler) inBuffer->mAudioData 传递原始数据“AudioQueueBufferRef”。到实际 FFT "DSPSplitComplex" 数据类型,所以我可以计算它。所有这些都使用 Accelerate 框架。
FFT 函数。
我还没有找到关于如何做到这一点的任何地方。请帮忙!
c++ - 为初学者实现实时频谱
我想开发一个应用程序,它将音频(.wav)作为输入并显示其实时同步频谱。从我所看到的主题来看,这需要波的傅立叶变换。有人可以建议我应该从哪里开始吗?可能的参考资料和书籍。我想了解实时频谱实现的细节,而不是我非常熟悉的 GUI 的开发(在 C# 和 C++ 中)。
frequency - 傅立叶变换 -
我一直在对这个主题进行大量研究,我终于找到了方向。下面是我正在使用的 java 代码中的两个复数:-9771.0 - j2125.0 -16184.09634718744 - j53968.71008512241
我知道幅度/幅度可以通过执行 sqrt(a^2 + b^2) 来计算,据我所知。我已经阅读了有关采样率的信息,但我需要单独对此进行更好的解释,并希望指出正确的方向以获取知识。我已经完成了功率谱图,但我需要在纸上做这个,所以我会知道如何获得频率。
r - R绘制具有特定模式的字符串的频率
给定一个包含字符串的列的数据框。我想绘制具有某种模式的字符串的频率。例如
我想绘制包含模式“cd”的字符串的频率任何人有一个快速的解决方案?
algorithm - 解释计数草图算法
有人可以解释计数草图算法的工作原理吗?例如,我仍然无法弄清楚如何使用哈希。我很难理解这篇论文。
java - 如何将一组离散的数据传输到频域并返回(最好是无损的)
我想获取一个大小约为 70-80k 的字节数组,并将它们从时域转换为频域(可能使用 DFT)。到目前为止,我一直在关注 wiki 并获得了此代码。
据我所知,这可以找到每个频率窗口/箱的幅度。然后我穿过窗户,找到震级最高的那一个。我在该频率上添加了一个标志,以便在重建信号时使用。我检查重建的信号是否与我的原始数据集匹配。如果它没有找到下一个最高频率窗口,并在重建信号时标记它。
这是我用来重建信号的代码,我很确定这是非常错误的(它应该执行 IDFT):
freqUsed 是一个布尔数组,用于标记在重建信号时是否应使用频率窗口。
无论如何,这是出现的问题:
- 即使使用了所有频率窗口,也不会重建信号。这可能是由于...
- 有时 Math.exp() 的值太高,因此返回无穷大。这使得难以获得准确的计算。
- 虽然我一直关注 wiki 作为指南,但很难判断我的数据是否有意义。这使得测试和识别问题变得困难。
脱离问题:
我对此很陌生,并不完全了解所有内容。因此,感谢任何帮助或见解。感谢您花时间阅读所有内容,并提前感谢您提供的任何帮助。任何帮助真的会很好,即使你认为我这样做是最糟糕的可怕方式,我想知道。再次感谢。
-
编辑:
所以我更新了我的代码,如下所示:
对于原始变换和:
为逆变换。虽然我仍然担心它不能正常工作。我生成了一个包含单个正弦波的数组,它甚至无法分解/重建它。关于我缺少什么的任何见解?
r - 如何对 R 中的数据点运行高通或低通滤波器?
我是R的初学者,我试图在没有找到任何东西的情况下找到有关以下内容的信息。
图中绿色图形由红色和黄色图形组成。但是假设我只有绿色图表之类的数据点。如何使用低通/高通滤波器提取低频/高频(即近似红色/黄色图表) ?
更新:图表是用
更新 2:使用signal
包中的 Butterworth 过滤器建议我得到以下信息:
计算有点工作,signal.pdf 几乎没有给出关于W
应该有什么值的提示,但最初的 octave 文档至少提到了让我前进的弧度。我的原始图表中的值没有选择任何特定的频率,所以我最终得到了以下不那么简单的频率:f_low = 1/500 * 2 = 1/250
和f_high = 1/500 * 2*10 = 1/25
采样频率f_s = 500/500 = 1
。然后我为低通/高通滤波器(分别为 1/100 和 1/50)选择了介于低频和高频之间的 f_c。
actionscript-3 - 傅立叶系数的结果对窗口大小非常敏感?
我正在尝试使用闪存中的窗口傅立叶级数制作频率分析仪,但我的窗口大小极大地影响了系数的大小。
我正在使用教科书中的公式来计算每一帧的系数:
其中deltax是样本之间的时间间隔,pcmFloatValue是 *n*deltax* 处的时域值。在教科书中,积分限制是0到2PI,然后积分除以PI......但我认为我可以将它用于任何区间并消除除法。
所以我获取频率大小的代码在这里:
number是以 Hz 为单位的频率,frameba是 44100 Hz 音频的单声道采样。我每抓到一个frameba就调用这个函数,它对应于这段代码:
所以问题是,当我有时改变窗口时,这两个系数的幅度变得非常大,而且它不是线性的。当窗口为 42 毫秒时,我得到如下值:
当我将其设置为 100 毫秒时:
...,3.487381020768127,7.610466058045129,45.780152579896324,77.46963149803167,35.531672823487014,0.6057853252694128,...
当我将其设置为 500 毫秒时:
所以它的平均大小不会不断增加。我不确定我是否做错了什么,我是否正确地考虑了这一点?