问题标签 [hamming-window]

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.

0 投票
2 回答
3202 浏览

python - 汉明窗口,python 2.7

嗨,我有一个非常嘈杂的 FFT。如何应用到我的代码汉明窗口以减少噪音。看我的代码:

plt.show() 是什么 在此处输入图像描述

我需要的是: 在此处输入图像描述

我见过(https://docs.scipy.org/doc/scipy-0.13.0/reference/generated/scipy.signal.hamming.html)和这个(https://docs.scipy.org/doc/numpy -1.13.0/reference/generated/numpy.hamming.html)但仍然不知道如何将其应用于我的代码。有任何想法吗?正如我所说,您在第二张图片中看到了我需要的东西。也许布莱克曼窗口也可以很好地应用,但仍然不知道如何添加它。

应用这个:

给我那个,它看起来不像我想要的图表。

在此处输入图像描述

0 投票
1 回答
697 浏览

matlab - 频域和空间域中的汉明滤波器

我想通过在 MATLAB 中应用汉明滤波器来消除一维信号中的吉布斯伪影。

我所拥有的是k1频域中的信号。我可以通过应用 DFT 来获得时域信号k1

s1 = ifft(ifftshift(k1));

该信号具有吉布斯伪影。现在,我想通过 (A) 将 Hamming 滤波器乘以k1频域和 (B) 将 Hamming 滤波器的 IFFT 与s1空间域中的卷积来删除它。我期望这两个输出相同:

在此处输入图像描述

(A), 的结果s2似乎是正确的,因为信号看起来很模糊并且吉布斯伪影消失了。然而,(B), 的结果s3完全不同且不正确。(B) 中缺少什么?(如果需要,请从此链接下载 k1.m​​at 。)

0 投票
1 回答
86 浏览

python - 在 Python 中表示低通滤波器时的直线

我尝试使用 Hammond Window 实现低通滤波器。截止频率是 0.3,滤波器阶数是 21。我的问题是我有一条直线,它没有穿过表示的点。这是代码:

我已经附上了你的 pyplot 应该是什么样子:正确的情节

这是我的情节:我的错误情节

为什么最后一张图中的红线没有穿过情节的点?任何想法为什么?谢谢!

0 投票
0 回答
211 浏览

r - 具有汉明窗平滑和从自动生成的图中提取数据的 FFT

我需要一些帮助来进行时间序列分析,特别是带有汉明窗平滑的快速傅里叶变换。

TL;博士

  1. fftper() 是 R 中带有汉明窗平滑的 FFT 的适当函数吗?

  2. 如何提取或生成 fftper 输出图的频率值?

  3. 我正在寻找每日周期,因此要将频率数据转换回“时间”变量,我是否将频率值除以 1/24?(例如这里的麻疹示例:http ://web.stanford.edu/class/earthsys214/notes/series.html )

长版

我已经为一堆个体动物的声学检测数据加上了时间戳。对于每个人,我将检测次数按小时分组,并使用频率为 24 的 ts() 将其转换为时间序列(查看检测中的每日模式)。有了这些数据,我想应用汉明窗平滑,然后进行 FFT 并生成这些数据的周期图。我还想提取频率值(x 轴)并将它们从频率转换为时间段(小时)。

我已经设法在 FFT 上生成周期图,并fftper()使用TSSS package. 自动生成的图看起来不错。我现在想提取图中使用的频率值(x 轴值)和功率值(y 轴值),因此我可以将频率(x 轴值)数据转换回时间变量(即使用我认为频率/(1/24)?),然后用ggplot. fftper生成一个spg结构如下的对象:

我可以提取 y 轴值(平滑周期值或功率),FFTpower <- FFT[["smoothed.period"]]但我看不到 x 轴值的存储位置或弄清楚如何生成它们。

有任何想法吗?提前致谢!

虚拟数据:

代码:

0 投票
2 回答
1221 浏览

python - Python:具有重叠和汉明窗口的音频分割

我想做这样的一个想法:

  1. 分割音频文件(将其分成帧) - 为避免信息丢失,帧应重叠。
  2. 在每一帧中,应用一个窗口函数(Hann、Hamming、Blackman 等)——以最小化开始和结束处的不连续性。

我设法将音频文件保存为 numpy 数组:

然后我对整个信号做了一个汉明窗:

但我不知道如何在使用汉明窗之前将我的信号分成帧(段)。请帮我 :)

0 投票
0 回答
49 浏览

c# - 汉明码 - 纠错纠正消息位而不是控制位

您好,我无法在实现汉明代码的代码中查明错误。基本上它的作用是:获取一条消息(比如说ASCII a:01100001)将它乘以矩阵H,从而为该消息生成控制位(奇偶校验位)。我们这样做是为了确保如果某些位(在我的情况下最多 2 位)传输错误,它仍然可以成功解码。我的矩阵 H 是 8x16。所以编码的消息看起来像:0110000110011110(0-7 位是消息位,8-15 位是控制位)

...

如果我在控制位中有 2 个错误,那么理论上我的代码无法解码消息。如果消息位中有 2 个错误,则它会成功解码。如果任何地方出现 1 个错误,它也会成功解码。当我在说索引 14 和 15 中更改两位时,它会检测到索引 6 和 7 中的错误。我认为我的错误在这个函数的某个地方:

您可以在我的 github 上找到完整代码:https ://github.com/janwadolowski/Telecommunication-hamming-code/blob/master/TiPS_1/TiPS_1/Logic.cs

我花了很多时间研究这个函数,以至于我不能再批判性地思考这段代码了。

0 投票
1 回答
298 浏览

python - 带有重叠python的汉明窗口

我正在尝试实现基于二维特征融合的水声船辐射噪声识别综合优化论文。

我最大的问题是将.wav文件转换为二维数组。论文中提到了

数据库中每个原始记录的信号都使用长度为 2048 的汉明窗口进行框定,重叠率为 50%。采样频率 fs=52734 Hz,每个采样持续约 40 ms

并且

利用四阶 Symlet 小波的 7 级 WP 分解将每个原始样本分解为 128 个子带。

我非常感谢使用 Python 理解和实现这一点的任何帮助。