【问题标题】:Extracting perturbation from .wav file从 .wav 文件中提取扰动
【发布时间】:2019-12-19 10:34:45
【问题描述】:

我有 2 个 .wav 文件,一个包含原始音频 (original.wav),而另一个包含由音频对抗示例攻击代码生成的扰动 (attacked.wav)。

如何通过将 original.wav 文件与被攻击的.wav 文件进行比较,最好使用 python3 将扰动提取为单独的 perturbation.wav 文件

【问题讨论】:

  • 我认为你应该使用open().read()函数来读取wav文件内容,然后创建一个函数def compare_waves()来提供答案。我不确定什么是“扰动”,但如果你能把它写成数学,你可以用 Python 来做。
  • 如果您更新您的问题以发布您的代码,我们可以对其进行处理,直到您找到可行的解决方案
  • 谢谢我设法解决了,很简单。第一次处理音频,对音频库不是很熟悉。 :)

标签: python audio signal-processing pcm noise-reduction


【解决方案1】:

这样想……你有一个值 7,然后你用一个未知的力量扰乱它,导致你的原始值变成值 9……你可以使用这两个执行什么算术运算识别扰动的值?

不要想太多……一旦你解决了这个思想实验,同样的原则也适用于解决你的问题……

提示 ...降噪耳机的工作原理与此相同

现在回到您的挑战...音频是随时间变化的曲线...您的 wav 音频文件可以打开并解析为此音频曲线,其称为 PCM 格式...它只是沿此曲线指向...一旦你打开了你的两个文件(假设你的录音都是时间对齐的,所以每个文件的开头代表相同的时间点)然后同时遍历两个文件的音频曲线并执行你在上面发现的相同操作合成一个仅包含扰动音频曲线的输出 wav 文件

在接触任何代码之前,您应该能够理解我们在这里使用的技巧

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 1970-01-01
    • 2011-03-04
    • 2017-01-11
    相关资源
    最近更新 更多