标准化 FFT 数据 (FFTW)

2023-12-12

我一直在使用 FFTW 计算标准化 .wav 文件数据的 FFT。然而,我对如何标准化 FFT 输出有点困惑。我一直在使用对我来说显而易见的方法,即除以最高的 FFT 幅度。然而,我已经看到建议除以 1/N 和 N/2(其中我假设 N = FFT 大小)。这些如何作为标准化因素发挥作用?在我看来,这些因素与实际数据之间似乎没有直观的关系 - 那么我错过了什么?

非常感谢您对此提供的任何帮助。


令人惊讶的是,FFT 和 IFFT 没有统一的定义,至少就缩放而言,但对于大多数实现(包括 FFTW),您需要在前向缩放 1/N,并且在相反的方向。

通常(出于性能原因)您会希望将此缩放因子与任何其他校正(例如 A/D 增益、窗口增益校正因子等)合并在一起,以便您只需将一个组合缩放因子应用于 FFT 输出垃圾箱。或者,如果您只是生成以 dB 为单位的功率谱,那么您可以对从功率谱箱中减去的单个 dB 值进行校正。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

标准化 FFT 数据 (FFTW) 的相关文章

  • 更改 Android 中的媒体音量?

    我可以更改媒体音量吗 如何 到目前为止我用过这个 setVolumeControlStream AudioManager STREAM MUSIC 但有一个搜索栏并且想要更改媒体音量 而不是铃声音量 那么有人可以告诉我如何更改媒体音量onC
  • 如何将 MP3 音频文件读入 numpy 数组/将 numpy 数组保存到 MP3?

    有没有办法从 MP3 音频文件中读取 写入 MP3 音频文件numpy具有类似 API 的数组scipy io wavfile read https docs scipy org doc scipy 0 14 0 reference gen
  • 使用 Google Translate API 获取单词的发音

    我正在尝试将法语单词的发音保存到 wav 或 mp3 文件中 我想知道 Google Translate API 上是否有任何地方 因为它有发音功能 可以让我实现这个目标 其他库也可以工作 自从提出这个问题以来 从谷歌翻译中 抓取 MP3
  • 如何让位置音频在 SceneKit 中工作?

    我在使位置音频在 SceneKit 中工作时遇到问题 从 Xcode 生成的 SceneKit 游戏模板开始 我将以下代码添加到handleTap 方法的末尾 let ship scnView scene rootNode childNod
  • iPhone 应用程序需要 AAC 许可证吗?

    AAC 是一种音频编解码器 AAC 旨在成为 MP3 格式的后继者 在相似的比特率下 AAC 通常可以实现比 MP3 更好的音质 维基百科上的 AAC http en wikipedia org wiki Advanced Audio Co
  • 使用react-native测量音频的响度

    我正在创建一个应用程序 Android 来使用本机反应录制手机中的语音 一项要求是实时测量声音的响度并基于它制作动画 我尝试使用react native audio库 但问题是响度监控仅在IOS中支持 我检查了世博会音频库 但找不到方法 有
  • 基本矩阵错误?

    我试图通过扫描从相机拍摄的两个图像 检测图像中的特征 匹配它们 创建基本矩阵 使用相机内在函数计算基本矩阵 然后分解它以找到旋转和翻译 这是matlab代码 I1 rgb2gray imread 1 png I2 rgb2gray imre
  • Java Sound可以用来控制系统音量吗?

    Java 声音优惠FloatControl各种声音线路功能的实例 以及MASTER GAIN http docs oracle com javase 7 docs api javax sound sampled FloatControl T
  • 有没有办法降低 scipy/numpy 精度以减少内存消耗?

    在我的 64 位 Debian Lenny 系统 4GByte RAM 4GByte 交换分区 上 我可以成功执行以下操作 v array 10000 random 512 512 512 dtype np int16 f fftn v 但
  • matlab中简单正弦波的傅里叶变换

    我尝试显示简单正弦波的频谱 因为我们知道具有固定频率的单个正弦波必须在其频谱中出现峰值我编写了这段代码 但我无法得到这个峰值我的代码中有什么问题 clc nsteps 200 number of signal elements in tim
  • HTML5 音频暂停不起作用

    document getElementById s currentRadio currentSong pause 目前这并没有暂停音频 而播放它效果很好 document getElementById s currentRadio curr
  • 如何在 Visual Studio Code 中包含编译器标志?

    我有一个程序试图在使用 fftw 函数的 Visual Studio Code 调试器中运行 它用命令编译 g dimer cpp std c 11 lfftw3 在我的计算机上的终端上 而不会抱怨未定义的引用 但是 在生成 launch
  • 如何禁用 WebBrowser 控件中的点击声音

    我使用 Javascript 单击网络浏览器控件中的链接 但我不想听到IE的 咔哒 声 有什么办法可以做到这一点吗 P S 我不想更改系统设置 我见过这个 如何仅在您的应用程序中禁用网络浏览器 点击声音 https stackoverflo
  • 如何在电话铃声、收到短信等时暂停音乐?

    我正在尝试检测 Android 声音并在它们发出噪音时暂停我的应用程序的音乐 暂时或永久 这段代码似乎什么也没做 stop暂停音乐并p写入日志 它永远不会被调用 public class PollyPrissyPants extends A
  • 如何在C#中剪切、编辑和合并OGG文件?

    我有一个 ogg vorbis 文件 我必须用它执行两个操作 将文件的一部分从一个位置剪切到另一个位置 将另一个文件与现有文件合并 如何在 C 中执行这两个操作 你可以使用 libzplay 来做到这一点http libzplay sour
  • 在 Android 媒体播放器上播放 MediaStore 中的音频

    有没有办法通过使用 MediaPLayer 播放从 MediaStore 获得的音频 或者我走的方向完全错误 到目前为止 我已经查看了 MediaStore Audio 但没有什么能真正帮助我 我只需要知道我是否走在正确的轨道上 首先 我假
  • #define 内存地址声明

    这个 define 语句有什么作用 它用于定义内存地址 但我不明白 uint32 t 部分 define GPxDAT uint32 t 0x6FC0 通常用于访问映射到地址空间的硬件寄存器 或者一些特定的内存地址 硬件寄存器应定义为vol
  • ffmpeg 命令行,用于使用 Windows 7 从 Decklink 卡捕获(和录制)720p 音频和视频

    我正在尝试使用 Windows 7 720p 从 blackmagic Decklink 捕获卡捕获音频和视频 但我似乎无法正确获取 ffmpeg 命令行设置 ffmpeg list devices true f dshow i 虚拟 ds
  • AVAudioPlayer 重置当前播放的声音并从头开始播放

    我在使用 AVAudioPlayer 时遇到问题 我想重置当前正在播放的播放器并再次播放 我尝试以下但没有运气 声音播放一次 但第二次我选择按钮时它会停止声音 第三次再次启动声音 Stop the player and restart it
  • 需要在状态改变时关闭MediaRecorder播放的声音

    我已尝试在下面的链接中找到的更改 但没有效果 如何在状态改变时关闭 MediaRecorder 播放的声音 https stackoverflow com questions 6804205 how to shut off the soun

随机推荐

  • Kotlin - 当前实例的返回类型

    我正在 Kotlin 中构建一个验证库 基类是abstract并实现适用于所有类型的方法 isNotNull例如 abstract class Validator
  • 通过 QTcpSocket 发送任何结构

    在写入套接字之前如何将结构转换为 char 形式 Use 数据流 它具有处理 Qt 类的字节顺序 字节顺序 和序列化的优点 简单地将结构转换为 char 可能会导致很多问题 包括字节顺序 编译器填充等 我建议使用流
  • 修改正在运行的SKAction的速度

    我有这个代码 implementation MyScene SKAction delayAction Inside a method delayAction SKAction waitForDuration 3 0 self runActi
  • 在 Rails 中批量导入 CSV?

    我正在使用 FasterCSV 将上传的文件导入到模型中 它非常适合小文件 然而 当我尝试导入大型数据集 21 000 行 时 需要很长时间 并且实时服务器上的浏览器超时 这是我当前的工作代码 logcount 0 Attendee tra
  • 在 python 中使用自定义步骤进行循环

    我可以在 python 中制作简单的 for 循环 例如 for i in range 10 然而 我不知道如何制作更复杂的 这在 C 中非常容易 如何在 python 中实现这样的 for 循环 for w n w gt 1 w w 2
  • 对三个数字进行排序的更简单方法

    有没有更简单更好的方法来解决这个问题 因为 我使用了太多变量 我用了这么多if else声明 我使用蛮力方法做到了这一点 编写一个程序 接收三个整数作为输入并按升序输出数字 不要使用循环 数组 include
  • Web API:无法序列化内容类型的响应正文

    我正在使用 ASP NET MVC 5 Web Api 我现有的应用程序包含许多 api 最近我实现了自定义 JsonConverter 它将根据时区转换日期 public class CustomInfoConverter JsonCon
  • TypeError - python 中的客户端错误

    我用 python 创建了一个客户端 服务器代码 服务器运行良好并侦听 8000 端口 但是当我通过客户端连接到它然后尝试向服务器发送消息时 出现以下错误 Traceback most recent call last File C Use
  • 如何检索 ADO.NET SqlCommand 的结果?

    我正在使用 ASP NET 我想查找表中的行数 我知道这是 SQL 代码 select count from topics 但是如何让它显示为数字呢 我想做的就是运行该代码 如果它 0 显示一件事 但如果它大于 0 显示其他内容 这是我到目
  • 如何将QLineEdit背景变成进度条

    该代码创建一个对话框QLineEdit and a QPushButton 单击按钮时我想要QLineEdit变成一个进度条 显示按下按钮触发的过程的进度 当该过程完成时QLineEdit应该恢复到正常的 LineEdit 外观 如何实现这
  • 检查字符串是否以以下结尾

    我想检查字符串是否以以下结尾 v number 例如 hello world false hello world v2 true hello world v false hello world v88 true 不完全确定如何执行此正则表达
  • “与 Google 集成”按钮消失

    这是我们的 Google Apps Marketplace 应用程序的列表 该按钮也从我们集成的每个页面上消失了 当我在应该出现该按钮的页面上查看浏览器中的控制台日志时 我看到对此网址的调用 https apis google com ad
  • 根据序列号重命名匹配的文件

    假设我有一堆 mac 屏幕截图的文件 Screen Shot 2018 11 09 at 12 37 37 PM png Screen Shot 2018 11 10 at 4 53 02 PM png Screen Shot 2018 1
  • Chartjs - 如何在 x 轴标签上获取过去 7 天的数据?

    我试图在折线图的 x 轴上获取过去 7 天的信息 使用 Chartjs 做这个的最好方式是什么 Thanks 您可以使用以下代码实例化过去 7 天的图表 let start new Date end new Date start setDa
  • 优化行为测试套件

    我有一个测试套件 其中有 20 个功能文件 并且正在执行 100 MySQL CRUD 操作 大约需要 5 分钟才能完成 如果我手动进行测试 最多需要大约 7 分钟 我需要知道的是 我需要做什么才能优化整个流程 Note 平行跑者不支持对于
  • 无法在 Ionic 2 项目中使用 cordova 文件插件读取文件

    我正在尝试使用Cordova 文件插件读取移动设备中保存的图像 这样我就可以获得它的 Base64 编码 我需要远程存储它 问题在于 resolveLocalFilesystemUrl 方法本应提供一个 File Entry 对象 但似乎返
  • 何时使用 git 子树?

    有什么问题git subtree解决 我何时以及为什么应该使用该功能 我读到它是用于存储库分离 但为什么我不直接创建两个独立的存储库 而是将两个不相关的存储库合并为一个呢 这个 GitHub 教程解释了如何执行 Git 子树合并 我有点知道
  • PHP 致命错误:找不到类“Dotenv”

    我有一个项目 我尝试运行它 但出现以下错误 PHP Fatal error Class Dotenv not found in home maras Documents eCodile debtorcare server bootstrap
  • 使用包“cmprsk”在 R 中自定义竞争风险图

    我正在尝试使用 R 和包定制竞争风险图cmprsk 具体来说 我想覆盖默认情况 即对于竞争事件使用颜色 对于不同组使用线型 这是我的可重现的示例 library ggplot2 library cmprsk library survmine
  • 标准化 FFT 数据 (FFTW)

    我一直在使用 FFTW 计算标准化 wav 文件数据的 FFT 然而 我对如何标准化 FFT 输出有点困惑 我一直在使用对我来说显而易见的方法 即除以最高的 FFT 幅度 然而 我已经看到建议除以 1 N 和 N 2 其中我假设 N FFT