跳转到内容

数字信号处理/离散数据

来自维基教科书,开放的书籍,开放的世界

连续数据是大多数人熟悉的东西。一个简单的类比:当一个模拟数据传感器(例如,你的眼睛)激活(你睁开眼睛)时,它会立即开始接收输入(你看到阳光),它将输入(光线)转换为所需的输出(视神经信号),并将数据发送到目的地(你的大脑)。它毫不犹豫地这样做,并持续这样做,直到传感器关闭(你闭上眼睛)。输出通常被称为数据“流”;一旦开始,它可能会永远运行,除非有什么东西告诉它停止。现在,如果我们能够用一个连续函数的数学表达式来定义我们的数据,而不是一个物理传感器,我们就可以计算出数据流中任何点的我们的数据值。重要的是要意识到,无论数据流的开始和结束限制之间的时间间隔有多小,这都提供了无限 (∞) 个数据点的可能性。

这让我们想到了离散数据的相关概念。离散数据是非连续的,只存在于输入间隔的某些点,从而使我们处理有限数量的数据点。不可能在没有数据的时间点获取离散数据集的值。

与视觉的类比将是使用频闪灯的照明。所看到的场景由一系列图像组成。由于两个图像之间所有的信息都丢失了,因此频闪灯照明的频率应该足够高,以至于不会错过运动物体的运动。这些数据也可以通过数学函数定义,但该函数是有限的,并且只能在输入的离散点进行评估。这些被称为“离散函数”,以区别于连续函数。

离散函数和数据使我们能够处理有限数量的数据点。

集合和序列

[编辑 | 编辑源代码]

离散数据以集合的形式显示,例如

X[n] = [1 2 3& 4 5 6]

我们将使用“&”符号来表示在零点出现的数据项。现在,通过为 n 填充值,我们可以从我们的序列中选择不同的值

X[0] = 3
X[-2] = 1
X[3] = 6

我们可以在我们想要的任何地方移动零点。同样重要的是要注意,我们可以在任何一边用零填充序列,只要我们跟踪零点

X[n] = [0 0 0 0 1 2 3& 4 5 6] = [1 2 3& 4 5 6]

事实上,我们假设我们序列中没有明确值的任何点都等于零。因此,如果我们有相同的集合

X[n] = [1 2 3& 4 5 6]

我们知道我们给定范围之外的每个值都为零

X[100] = 0
X[-100] = 0

茎叶图

[编辑 | 编辑源代码]

离散数据经常用茎叶图表示。茎叶图用点标记数据点,并在 t 轴(水平时间轴)和点之间画一条垂直线

F[n] = [5& 4 3 2 1]


关于符号

[编辑 | 编辑源代码]

我们用来表示离散集零点的符号是随意选择的。关于该主题的教科书通常使用箭头、句号或下划线来表示集合的零位置。以下是一些示例

            |
            v
Y[n] = [1 2 3 4 5]
            .
Y[n] = [1 2 3 4 5]
            _
Y[n] = [1 2 3 4 5]

所有这些东西在维基教科书中都太难写了,因此我们决定使用一个和号 (&) 来表示零点。和号在本手册中没有其他用途,因此希望我们可以避免一些混淆。

采样是将连续数据转换为离散数据的过程。采样过程会对给定输入信号的值进行快照,在必要时进行舍入(对于离散值系统),然后输出离散数据。采样器的常见示例是模数转换器 (ADC)。

假设我们有一个基于时间 (t) 的函数。我们将此连续时间函数称为 f(t)

其中 u(t) 是单位阶跃函数。现在,如果我们想对该函数进行采样,从数学上来说,我们可以将离散值代入 t,然后读取输出。我们将我们的采样输出表示为 F[n]

F[n] = 0 : n ≤ 0
F[1] = f(1) = 2
F[2] = f(2) = 4
F[100] = f(100) = 200

这意味着我们的 F[n] 输出序列如下

F[n] = [0& 2 4 6 8 10 12 ...]

我们对信号进行数字化(采样),对该信号进行一些神奇的数字信号处理,然后我们对结果怎么办?通常,我们希望将该数字结果转换回模拟信号。问题是采样过程不能完美地表示每个信号。具体来说,奈奎斯特-香农采样定理指出,采样率为的采样信号可以完美重构的最大频率为。举个例子,音频 CD 的采样率为每秒 44100 个样本。这意味着音频 CD 上可以表示的最大频率为 Hz。人类可以听到大约 20000 Hz 的频率。由此我们可以得出结论,音频 CD 非常适合存储人类的音频数据,至少从采样率的角度来看是这样的。将数字表示转换为模拟表示的设备称为数模转换器 (DAC)。


华夏公益教科书