Questions tagged «frequency-spectrum»

时域信号的频谱是该信号在频域中的表示。

6
对于图像,频域表示什么?
我只是在学习图像的频域。 如果出现波浪,我可以理解频谱。它表示波中存在哪些频率。如果绘制频谱,则会在和处获得脉冲信号。我们可以使用相应的过滤器来提取特定信息。- ˚F + ˚Fcos(2πft)cos⁡(2πft)\cos(2\pi f t)−f−f-f+f+f+f 但是频谱在图像情况下意味着什么?当我们在OpenCV中对图像进行FFT运算时,会得到一张奇怪的图片。该图像表示什么?它的应用是什么? 我读了一些书,但它们提供了许多数学方程式,而不是物理意义。那么,谁能在图像处理中简单地应用频域的简单解释呢?

2
为什么有这么多计算PSD的方法?
韦尔奇的方法一直是我计算平均采样时间序列功率谱密度(PSD)的首选算法。我注意到还有许多其他计算PSD的方法。例如,在Matlab中,我看到: 使用Burg方法的PSD 使用协方差方法的PSD PSD使用周期图 PSD使用修正的协方差方法 使用多锥度方法(MTM)的PSD 使用Welch方法的PSD 使用Yule-Walker AR方法的PSD 使用短时傅立叶变换的频谱图 光谱估计 这些各种方法的优点是什么?作为一个实际问题,我什么时候要使用Welch的方法以外的方法?

3
“复杂采样”能否打破奈奎斯特?
我曾听到一个轶事,即对复杂信号的采样不必遵循奈奎斯特采样率,而实际上可以用一半的奈奎斯特采样率摆脱。我想知道这是否有任何道理? 从奈奎斯特(Nyquist),我们知道要明确采样信号,我们需要采样至少至少两倍于该信号带宽的信号。(我在这里定义带宽,就像在Wiki链接中定义带宽一样,也就是正频率的占用率)。换句话说,如果我的信号从-B到B存在,那么我至少需要采样> 2 * B才能满足nyquist。如果我将此信号混频到fc,并希望进行带通采样,则需要采样至少> 4 * B。 这对于真实信号来说非常有用。 我的问题是,是否有任何真理到复基带信号(又名,一个只存在于频谱的一侧)需要该语句不被在至少> 2 * B的速率采样的,但实际上可以至少以> B的速率进行充分采样? (我倾向于认为如果是这种情况,这只是语义上的原因,因为您仍然必须在每个采样时间内获取两个样本(一个实数和一个虚数)以完全表示旋转相量,因此严格遵循Nyquist。 ) 你怎么看?

4
如何区分声音与打nor?
背景: 我正在开发一个iPhone应用程序(在 其他几篇 文章中都有介绍),该应用程序在一个人入睡时“听着”打呼//呼吸,并确定是否存在睡眠呼吸暂停的迹象(作为“睡眠实验室”的预屏幕)测试)。该应用程序主要使用“频谱差异”来检测打sn /呼吸,并且在针对睡眠实验室记录(实际上是非常嘈杂的)进行测试时,效果很好(大约为0.85--0.90)。 问题: 我可以通过多种技术过滤掉大多数“卧室”噪音(风扇等),并且经常以人耳无法检测到的S / N级别可靠地检测到呼吸。问题是语音噪音。在后台运行电视或广播(或者只是在远处说话的人)并不罕见,并且声音的节奏与呼吸/打呼closely紧密匹配。实际上,我通过该应用程序记录了已故作者/讲故事者比尔·霍尔姆(Bill Holm)的录音,与打的节奏,水平变化和其他几种测量方法基本上没有区别。(尽管我可以说他显然没有睡眠呼吸暂停,至少在清醒时没有。) 因此,这是一个远景(可能是一系列的论坛规则),但是我正在寻找一些有关如何区分声音的想法。我们不需要以某种方式过滤掉打ore声(这会很好),但是我们只需要一种方法来拒绝被声音过度污染的“太吵”的声音。 有任何想法吗? 发布的文件:我已经在dropbox.com上放置了一些文件: Epica_Storm_the_Noisy_Sorrow_minus_10dB_wav.dat Holm_5db_noisy_wav.dat recordFile20120408010300_first_ten_wav.dat 第一个是相当随机的摇滚(我猜)音乐,第二个是已故的Bill Holm讲话的录音。两者(我将其作为“噪声”样本从打nor中区分出来)都与噪声混合在一起,以使信号模糊。(这使识别它们的任务变得更加困难。)第三档是您的录音的十分钟,真正的三分之一是呼吸,打middle混合,最后三分之一是稳定的打nor。(您咳嗽会得到奖金。) 这三个文件都已从“ .wav”重命名为“ _wav.dat”,因为许多浏览器都使下载wav文件异常困难。下载后,只需将它们重命名为“ .wav”即可。 更新:我以为熵对我来说就是“把戏”,但事实证明,这主要是我所使用的测试用例的特殊性,以及设计得不太好的算法。在一般情况下,熵对我无能为力。 随后,我尝试了一种技术,该技术可以计算每秒采样约8次的整体信号幅度(我尝试过功率,频谱通量和其他多种测量方法)的FFT(使用几种不同的窗口函数)(取自主要FFT周期的统计信息)这是每1024/8000秒)。对于1024个样本,这涵盖了大约两分钟的时间范围。我希望由于打/呼吸与声音/音乐的节奏较慢,我能够看到这种模式(而且它可能也是解决“ 可变性 ”问题的更好方法),但是尽管有提示到处都是模式,没有什么我可以真正锁定的。 (进一步的信息:在某些情况下,信号幅度的FFT会产生一个非常明显的模式,在0.2Hz处有一个很强的峰值,并产生阶跃谐波。可能有某种方法可以计算品质因数的相关值,但似乎需要对约4阶多项式进行曲线拟合,而在手机中每秒进行一次拟合似乎是不切实际的。) 我还尝试对将频谱划分为5个单独的“频段”进行相同的平均幅度FFT。波段是4000-2000、2000-1000、1000-500和500-0。前4个频段的模式通常与总体模式相似(尽管没有真正的“突出”频段,并且在较高频段中的信号通常消失得很小),但500-0频段通常只是随机的。 赏金: 鉴于内森(Nathan)是迄今为止最有成效的建议,尽管纳森(Nathan)没有提供任何新的东西,我还是要给予赏金。但是,如果他们提出了一些好主意,我仍然愿意将其奖励给其他人。


3
级联双二阶部分以实现高阶滤波器的工作原理?
我正在尝试实现8阶IIR滤波器,并且我阅读的每个应用笔记和教科书都说,最好将2阶以上的任何滤波器实现为二阶部分。我tf2sos在MATLAB中使用了二阶部分的系数,这与我预期的4个二阶部分的6x4系数有关。在实施为SOS之前,八阶滤波器需要存储7个先前的采样值(以及输出值)。现在,当实现为二阶部分时,流程如何从输入到输出工作,我是否仅需要存储2个先前的样本值?还是第一个滤波器的输出馈x_in入第二个滤波器,依此类推?
20 filters  filter-design  infinite-impulse-response  biquad  audio  image-processing  distance-metrics  algorithms  interpolation  audio  hardware  performance  sampling  computer-vision  dsp-core  music  frequency-spectrum  matlab  power-spectral-density  filter-design  ica  source-separation  fourier-transform  fourier-transform  sampling  bandpass  audio  algorithms  edge-detection  filters  computer-vision  stereo-vision  filters  finite-impulse-response  infinite-impulse-response  image-processing  blur  impulse-response  state-space  linear-systems  dft  floating-point  software-implementation  oscillator  matched-filter  digital-communications  digital-communications  deconvolution  continuous-signals  discrete-signals  transfer-function  image-processing  computer-vision  3d 

2
使用Goertzel算法实际上能提供更好的频率分辨率吗?
我正在阅读本文,而作者对于Goertzel算法对“频率分辨率”的广泛使用使我有些困惑。 基本问题:使用Goertzel算法实际上是否可以在特定的目标频段上为您提供更高的频率分辨率,还是仅在指定的目标频段上仅有效地计算FFT,但以采样频率除以数字指定的相同频率分辨率即可样本? 例如,假设为100 KHz(固定),数据采样数为10000(也固定)。如果我计算正常的FFT,其中FFT长度也是,那么我的频率分辨率就可以预期为,它将等于10 Hz。这意味着我的垃圾箱间隔了10 Hz,从-50,000 Hz到50,000 Hz。FsFsF_sññNññNFsñFsñ\frac{F_s}{N} 现在让我们说我想使用Geortzel算法仅查看例如20,000-21,000 Hz范围内的频率。如果我用同样的的样本数量,并使用相同的我的FFT的大小,那么什么是我的频率分辨率?还是10 Hz?还是 Hz?ññNññN21 ,000 - 20 ,00010000= 0.121,000-20,00010000=0.1\frac{21,000-20,000}{10000} = 0.1 我有一种感觉,我并没有像通过从0到50,000那样使用相同的 in来评估从21,000到20,000的频率,而是在主瓣上简单地插值,实际上并没有真正提高我的频率分辨率。ññN 这是正确的理解吗?

2
为什么在FFT中会出现频谱泄漏?
我已经尝试使用谷歌搜索和维基百科了,但是除了“这是因为输入信号的频率位于两个区间之间”之外,我没有得到任何答案。 我知道这是原因,但是我不明白的是为什么泄漏似乎扩展到几个相邻的容器,而不是仅一个相邻的容器。 为了说明我在说什么,这里有一些模拟数据(文章末尾的代码): 上面是频率为10的正弦波的FFT频谱(按对数标绘)。采样率为1,采样数为100。该图已进行FFT移位。显然在bin 10处只有一个峰值,其余的则处于数值误差的数量级左右。 这是产生的频率为10.1的频谱。显然,与直接相邻的垃圾箱相比,存在更多的垃圾箱“泄漏”。 这是频率为10.5的图。 问题:为什么会出现这种泄漏,为什么会泄漏到所有其他垃圾箱,而不是直接相邻的垃圾箱? 代码,适合任何有兴趣的人(Python代码) import numpy as np import matplotlib.pyplot as plt xFreq = 10.5 xSize = 100.0 xPeriod = xSize/xFreq x = np.linspace(1,xSize,xSize) data = np.sin(2*np.pi*x/xPeriod) fft = np.fft.fft(data) fft = np.fft.fftshift(fft) fig = plt.figure() ax = fig.add_subplot(111) ax.plot(abs(fft), "o") ax.set_yscale('log') plt.show() 我将xFreq值从更改10.0为10.5,等等。

4
如何从FFT计算频谱平坦度?
好的,光谱平坦度(也称为维纳熵)定义为光谱的几何平均值与其算术平均值的比值。 Wikipedia和其他参考资料说明了功率谱。那不是傅立叶变换的平方吗?FFT产生一个“振幅频谱”,然后求平方得到“功率频谱”? 基本上,我想知道的是spectrum = abs(fft(signal)),其中哪些是正确的? spectral_flatness = gmean(spectrum)/mean(spectrum) spectral_flatness = gmean(spectrum^2)/mean(spectrum^2) 维基百科的定义似乎直接使用幅度: 其中x(n)代表区间数n的大小。F l a t n e s s = ∏ñ− 1n = 0x (n )---------√ñ∑ñ− 1n = 0x (n )ñ= 经验(1ñ∑ñ− 1n = 0lnx (n ))1个ñ∑ñ− 1n = 0x (n )F升一种ŤñËss=∏ñ=0ñ-1个X(ñ)ñ∑ñ=0ñ-1个X(ñ)ñ=经验值⁡(1个ñ∑ñ=0ñ-1个ln⁡X(ñ))1个ñ∑ñ=0ñ-1个X(ñ) \mathrm{Flatness} = \frac{\sqrt[N]{\prod_{n=0}^{N-1}x(n)}}{\frac{\sum_{n=0}^{N-1}x(n)}{N}} = \frac{\exp\left(\frac{1}{N}\sum_{n=0}^{N-1} \ln x(n)\right)}{\frac{1}{N} …

2
对于这种特定的移位/比例不变模板匹配,哪种图像处理技术是理想的?
我最初在这里讨论的问题已经演变,并且在我研究更多并获得新信息后可能会变得更简单。 最重要的是,我希望能够使用计算机视觉/图像处理技术来检测此处显示的这种模式。如您所见,理想的模式由四个“ ping”组成。对象识别应该是: 移位不变 在水平方向上,图像将是周期性的。(即,向右推动,在左侧出现,反之亦然)。 (幸运的是)从纵向看,它不是周期性的。(即,推到顶部或底部,它将停止)。 比例尺不变(如您所见,ping的“厚度”可能有所不同。) 我可以继续进行下去,但是我已经附上了涵盖我意思的图像,请参见以下内容: 当然,从这个家庭可以看出,它们也可以处于不同的“规模”: 最后,这是一些我可能实际收到的“现实”场景,可能会有噪音,当您移到底部时,行可能会“褪色”,当然,图像上会有很多虚假的线条,伪像等 当然,作为最后的结局,这种“极端”场景很有可能出现: 因此,我想再次寻求一些指导,以指导我在这里应该使用哪些计算机机器视觉技术,以便获得最佳效果。 检测出图案的出现情况,如您所见,在这里我需要进行平移和缩放不变,并且在实际情况下也能获得不错的结果。(好消息是,我不需要它是旋转不变的)。到目前为止,我唯一能想到的想法就是二维关联。 我要补充一点,实际上,我没有彩色图像-我只会得到一个数字的数字,所以我想我们所说的是“灰度”。 提前致谢! PS对于它的价值,我可能会使用开放式CV。 编辑#1: 根据评论,我在此处添加了您要求的详细信息: 对于定义数据的特征,我们可以假设以下内容: 每个ping的水平长度可以变化,但是我知道它的上限和下限。在此范围内的任何事物为是,在外部事物为否。(例如,我知道ping的长度可以在1到3秒之间的任何位置)。 所有ping必须为“可见”(是),但是,最后一行可能会丢失,并且仍然要说“是”。否则否。 每个ping的垂直长度(“厚度”)可以变化,但同样,也要知道上下边界。(类似于您在这些图像中看到的内容)。在该范围内的任何事情都为是。外面没有东西。 如果是,则每个ping之间的高度应始终相同。如果不是,则为否。(例如,您可以看到所有ping相对于彼此的高度如何,在垂直轴上约为110)。因此110 +/- 5可以为是,其他任何条件都必须为否。 我想就是这样-但是,请让我知道我还能添加什么...(此外,此处显示的所有内容都应注册为YES,顺便说一句)。

9
为什么我们在时域中使用窗口而不是FFT修改频谱和进行逆FFT
我以为DSP可以通过对信号的一部分进行FFT来完成,修改FFT产生的样本(因为它们代表了我们信号的频谱+噪声),并去除了任何不想要的信号,然后进行逆FFT来获取时间滤波信号的域表示(噪声已被移除)。但是,此操作尚未完成,而是使用窗口函数在时域中完成所有工作。为什么? 如果我们在时域中乘以窗函数,而不是在频域中将窗函数的频率响应与信号频谱进行卷积,那该如何计算呢?我的意思是,如果我们只是通过将信号乘以滤波器的频率响应来完成频域中的所有工作,那就像滤波对吗?但是在这里,我们使用时域来完成时域中的所有工作。 ->让我们看看我的困惑来自何处。对于模拟滤波器,例如低通滤波器,我们具有类似频率响应的脉冲。当我们对信号进行滤波时,我们实际上是将信号的频谱乘以类似于滤波器的频率响应的脉冲。这将使信号中的所有频率都超过一个截止值而降至0。这就是低通滤波器的工作原理。为什么不对数字滤波器也一样?

1
术语:频谱,频谱图,频谱仪,超声图等
根据DSP图形或仪器输出的正确或可接受的命名约定,频谱,频谱图,频谱仪和类似术语这两个词之间的区别是什么,以及哪种类型的图表,图形,CRT显示等最能恰当地描述。 补充:另外,我在几本关于频谱与时间的图形的书中也发现了超声图。因此,什么时候优先使用上述术语之一,反之亦然?

3
如何绘制频率与小波变换幅度的关系?
我正在运行Morlet连续小波变换。我有wscalogram信号,现在我想要绘制频率幅值,如下图所示。但是我不知道该怎么做: 我已经使用scal2freqMATLAB函数将标度转换为伪频率。另外,我的信号中的某些频率具有较大的阻尼比(4%),因此它们在图中不太清晰可见。如何夸大这些高阻尼模式? 我正在使用MATLAB,这是我的代码: % Import the text4.txt to matlab workspace. and save it under name "data" t=linspace(0,30,301); Fs=ceil(inv(t(2)-t(1))); x=data(:,4); % use x=data(:,3),x=data(:,5) too. first column is time,second is refrence wname = 'morl'; scales = 1:1:256; coefs = cwt(x,scales,wname,'lvlabs'); freq = scal2frq(scales,wname,1/Fs); surf(t,freq,abs(coefs));shading('interp'); axis tight; xlabel('Seconds'); ylabel('Pseudo-Frequency (Hz)'); axis([0 30 0 …

1
通过MUSIC使用特征向量估计信号的基本频率
内容: (免责声明:这不是通信问题)。 我正在尝试估计真实的周期性信号的基本频率。通过将原始信号与脉冲信号进行匹配滤波来构造此信号。(匹配的过滤器)。结果信号具有以下特征: 这是周期性的。(基本为1 /周期),这就是我试图估计的值。 它是不固定的时间。具体地,周期脉冲的幅度可以在幅度上变化。(例如,一个脉冲可以为低,而另一个脉冲可以为高,而下一个脉冲又可以为低,并且在该介质之后一个,等等)。 我相信它的频率是固定的(只要您接受变化的幅度,但不改变频带)。 它具有谐波失真。我的意思是,(如果我错了,请纠正我),但是信号中的单个脉冲不是正弦波,而是像高斯,三角形,半抛物线等“笨拙”的形状。 。 我正在尝试估计该信号的基本频率。 当然,有时原始信号不过是噪声而已,但它仍会通过路径并得到匹配滤波。(稍后会详细介绍)。 我尝试过的 现在,我知道许多基本的频率估算器,例如 自相关方法 YIN及其所有依赖项 FFT方法。 等等, 尹:我还没有尝试过尹。 FFT方法:FFT方法将为您提供所有谐波和基波,但是我注意到,由于基波并不总是最高峰,因此它特别挑剔,特别是对于这种非平稳业务。很快,您会发现自己试图确定多个峰中的哪个峰是基本峰,这成为一个难题。 自相关:自相关方法似乎比FFT方法要好,但是它仍然对时域信号的幅度不规则敏感。自相关方法测量中心波瓣到下一个最高波瓣之间的距离。该距离对应于基本距离。但是,在非平稳情况下,此副瓣可能太低,您可能会在某些阈值方案中错过它。 然后我想到也许可以使用像MUSIC这样的子空间方法来估计基本面。经过测试,我发现它确实确实给出了一些非常不错的结果-它在与信号基频相对应的频率处稳健地(甚至在非平稳情况下)达到峰值。(将您要查找的信号数设置为2,它将检索基本信号-即,选择信号协方差矩阵的2个最高特征向量(对应于特征值的最大值),丢弃它们,然后构造从剩余的噪声子空间中,将您的假设复杂正弦曲线投射到它们上,进行倒数运算,瞧,这是一个很好的伪频谱)。 问题与解答: 话虽如此,我仍然想理解为什么它会更好。 在MUSIC中,我们丢弃信号子空间并使用噪声子空间。在我看来,信号子空间的特征向量实际上是某种“最适合”的-实际上它们是最佳匹配滤波器。因此:为什么不直接使用信号子空间特征向量呢?(我知道它不再是MUSIC了,但是为什么使用噪声子空间更好呢?) 最后,最后一个问题是,尽管这种方法对于非平稳信号(如上所定义)似乎更健壮,但问题在于,即使系统中只有噪声,我现在总是会得到答案!(如上所述,当您没有周期性信号时,原始的预匹配滤波信号有时可能只是白噪声)。 可能存在什么方法来抵消这种情况?我尝试查看特征值,在只有信号的噪声与有信号的情况下,它们的衰减还有更多的“曲率”,但我担心它可能不够鲁棒。 奖金: 协方差矩阵的特征向量何时正弦于VS?是什么决定它们是否是正弦曲线?他们为什么不摆正呢?还是在此处插入其他形状的信号?

2
逆和弦和弦识别
目前,复音音乐转录似乎并不是一个可以解决的问题。 一小部分问题的逆过程如何。是否有某种频谱特征(来自STFT)可用于消除概率空间中的某些和弦?(例如,此声音片段很可能不包含任何C#和弦,或任何种类的小和弦,或者这是单个音符而不是和弦等) 假设音频片段或多或少是静止的(消除了瞬态攻击等),并且大多数或所有单个音符的泛音很可能会出现。(这个问题不是关于和弦。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.