Дискретизация: отсчёты, период и частота дискретизации

Как непрерывный сигнал превращают в последовательность чисел и как часто его нужно измерять?

Опубликовано 10 мин чтения

В треках:Программист, этап 3Звукорежиссёр, этап 3

Аналоговый аудиосигнал (analog audio signal)аналоговый аудиосигнал (analog audio signal) — Электрическое напряжение или ток, непрерывные во времени и по значению и представляющие звуковые колебания. В идеальной модели форма сигнала повторяет изменения звукового давления. определён в каждый момент времени, а компьютер хранит только конечный список чисел. Чтобы перейти от одного к другому, сигнал измеряют через равные промежутки времени и записывают результаты по порядку.

От непрерывного сигнала к отсчётам

Пусть x(t)x(t) — напряжение на выходе микрофона (microphone)микрофон (microphone) — Устройство, преобразующее звуковые колебания в электрический сигнал. В идеальной модели напряжение на выходе пропорционально звуковому давлению. из статьи о звуковой волне и аналоговом сигнале. Измерение такого сигнала через одинаковые интервалы времени с сохранением каждого результата называется дискретизацией (sampling)дискретизация (sampling) — Измерение непрерывного сигнала через равные промежутки времени: вместо функции времени сохраняется последовательность отсчётов.. Каждое сохранённое значение — это отсчёт (sample)отсчёт (sample) — Значение сигнала в один момент дискретизации, одно число. В звукозаписи его также называют сэмплом.; в звукозаписи чаще говорят «сэмпл».

Отсчёты нумеруют целыми числами n=0,1,2,…n = 0, 1, 2, \ldots в порядке измерения. Отсчёт с номером nn обозначают x[n]x[n]: квадратные скобки показывают, что аргумент — номер, а не время. Интервал между соседними измерениями называется периодом дискретизации (sampling period)период дискретизации (sampling period) — Интервал времени между соседними отсчётами, обратный частоте дискретизации. Измеряется в секундах. TsT_s, поэтому отсчёт nn взят в момент tn=nTst_n = n T_s (формула 1). Такие же обозначения использует Julius O. Smith в определении ДПФ.

x[n]=x(nTs),n=0,1,2,…x[n] = x(n T_s), \quad n = 0, 1, 2, \ldots
x(t)x(t)
аналоговый сигнал: значение в момент tt, например напряжение в вольтах;
x[n]x[n]
отсчёт с номером nn, в тех же единицах, что и x(t)x(t);
nn
номер отсчёта, целое число без единиц;
TsT_s
период дискретизации, с.

Рисунок 1 показывает два периода (period)период (period) — Время одного полного повторения периодического колебания. Обозначается T, измеряется в секундах и связано с частотой как T = 1/f. чистого тона (pure tone)чистый тон (pure tone) — Синусоидальное звуковое колебание одной частоты. Служит простой моделью для изучения частоты, фазы и громкости. и его отсчёты. Линия — исходный сигнал, вертикальные стебли с кружками — отсчёты: высота стебля равна значению сигнала в момент измерения.

Отсчёты синусоиды 1 кГц при частоте дискретизации 8 кГцСинусоида x(t) на интервале от 0 до 2 мс, два периода, значения от −1 до 1. Через каждые 0,125 мс от нулевой линии к кривой поднимается или опускается стебель с полым кружком на конце — всего 17 отсчётов x[n]. Между двумя соседними отсчётами у вершины отмечен период дискретизации Ts.x01−112 мсtTsсигнал x(t)отсчёты x[n]
Рис. 1. Тон 1 кГц с амплитудой, принятой за 1, и его отсчёты при частоте дискретизации 8 кГц: период дискретизации 0,125 мс, восемь отсчётов на период тона. Значения сигнала между отсчётами не сохраняются.

Между отсчётами в записи ничего нет. Изменения входного сигнала между моментами измерения не сохраняются. Дискретизация делает дискретным время, а значения отсчётов на этом шаге остаются точными.

Период и частота дискретизации

Период дискретизациипериод дискретизации (sampling period) — Интервал времени между соседними отсчётами, обратный частоте дискретизации. Измеряется в секундах. TsT_s — время между соседними отсчётами, в секундах. Обратная величина, число отсчётов в каждом канале за секунду, называется частотой дискретизации (sample rate)частота дискретизации (sample rate) — Число отсчётов в каждом канале за одну секунду, то же число кадров аудиоданных в секунду. Измеряется в герцах: 44 100 Гц означает 44 100 отсчётов на канал в секунду. fsf_s (формула 2). Её измеряют в герцах: 1 Гц здесь означает один отсчёт в секунду (Smith, CCRMA).

fs=1Tsf_s = \frac{1}{T_s}
fsf_s
частота дискретизации, Гц.

Формула имеет тот же вид, что и связь частоты (frequency)частота (frequency) — Число полных колебаний за секунду. Обозначается f и измеряется в герцах; 1 Гц означает одно колебание в секунду. и периода звука f=1/Tf = 1/T из статьи о звуковой волне, но описывает другое. TT и ff — свойства самого сигнала, а TsT_s и fsf_s выбираются при записи и задают, как часто сигнал измеряют. Индекс ss — от английского sampling.

Частота дискретизации компакт-диска — 44 100 отсчётов в секунду (Smith, CCRMA). По формуле 2 период дискретизации Ts=1/44 100≈22,7T_s = 1 / 44\,100 \approx 22{,}7 мкс. Момент отсчёта с номером nn равен nTsn T_s, а за время tt набирается fs⋅tf_s \cdot t отсчётов: одна минута монофонической записи при 44,1 кГц — это 44 100⋅60=2 646 00044\,100 \cdot 60 = 2\,646\,000 отсчётов.

Сколько отсчётов приходится на 10 мс записи при частоте дискретизации 44,1 кГц и в какой момент взят отсчёт с номером 441?

fs⋅t=44 100⋅0,01=441f_s \cdot t = 44\,100 \cdot 0{,}01 = 441 отсчёт: номера от 0 до 440. Отсчёт с номером 441 взят в момент 441⋅Ts=441/44 100=0,01441 \cdot T_s = 441 / 44\,100 = 0{,}01 с, то есть ровно через 10 мс, и открывает следующие 10 мс.

Пример: отсчёты тона 1 кГц

Пусть сигнал — чистый тон частотойчастота (frequency) — Число полных колебаний за секунду. Обозначается f и измеряется в герцах; 1 Гц означает одно колебание в секунду. f=1f = 1 кГц с амплитудой (amplitude)амплитуда (amplitude) — Наибольший модуль отклонения колеблющейся величины от равновесного значения. Для синусоиды обозначается A; единицы совпадают с единицами сигнала., принятой за 1: x(t)=sin⁡(2πft)x(t) = \sin(2\pi f t). Его дискретизируют с частотой fs=8f_s = 8 кГц, как на рисунке 1. По формуле 2 период дискретизации Ts=1/8000=0,125T_s = 1 / 8000 = 0{,}125 мс. Подстановка t=nTst = n T_s из формулы 1 даёт

x[n]=sin⁡(2π⋅ffs⋅n)=sin⁡(πn4)x[n] = \sin\left(2\pi \cdot \frac{f}{f_s} \cdot n\right) = \sin\left(\frac{\pi n}{4}\right)

На один период тона, 1 мс, приходится fs/f=8f_s / f = 8 отсчётов. Таблица 1 перечисляет значения за первый период; дальше они повторяются: x[8]=x[0]x[8] = x[0], x[9]=x[1]x[9] = x[1] и так далее.

Таблица 1. Отсчёты тона 1 кГц с амплитудой 1 при частоте дискретизации 8 кГц, первый период
ntn, мсx[n]
000
10,1250,707
20,251
30,3750,707
40,50
50,625−0,707
60,75−1
70,875−0,707

Значение 0,707 — округлённое sin⁡(π/4)=2/2\sin(\pi/4) = \sqrt{2}/2. Сами по себе восемь чисел на период не говорят, каким был сигнал между ними: через те же точки проходит много разных кривых. Восстановить его однозначно можно только при ограничении на частоты сигнала.

Достаточная частота дискретизации

Чем выше fsf_s, тем больше отсчётов приходится хранить. Нижнюю границу задаёт теорема отсчётов (sampling theorem)теорема отсчётов (sampling theorem) — В принятой низкочастотной модели непрерывный сигнал можно точно восстановить по всем точным равномерным отсчётам, если его спектр лежит строго ниже половины частоты дискретизации. Также известна как теорема Котельникова., в русской литературе — теорема Котельникова: в принятой низкочастотной модели все частоты непрерывного сигнала должны быть строго ниже половины частоты дискретизации (Smith, глава 3.2). «Правильно» здесь значит, что по отсчётам можно в принципе точно восстановить исходный сигнал (Smith, CCRMA). Половину частоты дискретизации называют частотой Найквиста (Nyquist frequency)частота Найквиста (Nyquist frequency) — Половина частоты дискретизации, fₛ/2. В принятой низкочастотной модели точное восстановление по отсчётам требует, чтобы все частоты исходного сигнала были строго ниже этой границы. (формула 3).

fmax⁡<fs2f_{\max} < \frac{f_s}{2}
fmax⁡f_{\max}
наибольшая частота в спектре сигнала, Гц.

Спектр (spectrum)спектр (spectrum) — Представление сигнала через его частотные составляющие: их частоты, амплитуды и фазы. Ограничение спектра задаёт, какие частоты допускаются в сигнале. описывает частотные составляющие сигнала: их частоты, амплитуды и фазы (phase)фаза (phase) — Положение внутри периода колебания, выраженное углом: полный период соответствует 360°, или 2π радиан. Начальная фаза — её значение в момент t = 0.. В формуле 3 ограничена наибольшая из этих частот.

Тон 1 кГц из примера удовлетворяет условию с запасом: fs/2=4f_s / 2 = 4 кГц. Для сравнения таблица 2 приводит две распространённые частоты дискретизации.

Таблица 2. Распространённые частоты дискретизации, период дискретизации и наибольшая частота, которую допускает формула 3
fsTsfs/2Где используется
8 000 Гц125 мкс4 кГцТелефонная связь
44 100 Гц≈22,7 мкс22,05 кГцКомпакт-диск

Половина частоты компакт-диска, 22,05 кГц, лежит выше верхней границы слуха, около 20 кГц, поэтому такая запись передаёт практически весь слышимый звук (Smith, глава 22.3). Телефонной связи хватает около 8 кГц: для естественно звучащей речи достаточно полосы примерно 3,2 кГц, а музыка при такой частоте звучит заметно хуже (Smith, глава 22.3).

Можно ли при частоте дискретизации 8 кГц правильно записать тон 5 кГц?

Нет: fs/2=4f_s / 2 = 4 кГц, а 5 кГц больше этой границы, условие формулы 3 не выполнено. Отсчёты такого тона совпадут с отсчётами синусоиды 3 кГц с противоположным знаком; как это посчитать, показывает формула 5.

Наложение спектров

Теорема отсчётов говорит, когда восстановление возможно, но не говорит, что получится при нарушении условия. Ответ зависит от способа восстановления. Идеальное восстановление превращает каждый отсчёт в функцию sinc (sinc function)функция sinc (sinc function) — Нормированная функция sinc(u) = sin(πu)/(πu), со значением 1 при u = 0. В идеальном восстановлении непрерывного сигнала её сдвинутые копии взвешивают отсчётами и складывают. и складывает их (формула 4). Сумма проходит через все отсчёты и не содержит частот выше fs/2f_s / 2. Если исходный сигнал удовлетворял условию формулы 3, сумма совпадает с ним точно (Smith, CCRMA).

y(t)=∑n=−∞∞x[n]sinc⁡(t−nTsTs),sinc⁡(u)=sin⁡(πu)πuy(t) = \sum_{n=-\infty}^{\infty} x[n] \operatorname{sinc}\left(\frac{t - n T_s}{T_s}\right), \quad \operatorname{sinc}(u) = \frac{\sin(\pi u)}{\pi u}
y(t)y(t)
восстановленный сигнал, в тех же единицах, что и x(t)x(t);
uu
безразмерный аргумент sinc; при u=0u = 0 принимают sinc⁡(0)=1\operatorname{sinc}(0) = 1 по пределу.

Сумма берётся по всем отсчётам, от минус до плюс бесконечности, поэтому формула 4 — математическая модель, а не процедура для конечной записи. В реальном цифро-аналоговом преобразователе (digital-to-analog converter, DAC)ЦАП (digital-to-analog converter, DAC) — Цифро-аналоговый преобразователь: устройство, которое получает цифровые отсчёты и формирует соответствующий им аналоговый электрический сигнал. восстановление выполняют фильтры с конечной крутизной характеристики.

Если тон выше fs/2f_s / 2, формула 4 всё равно даёт сигнал без частот выше этой границы, только уже другой. Для синусоиды его можно найти без суммирования (summation)суммирование (summation) — Сложение значений выражения при переборе указанных индексов. Например, сумма x[n] от n = 0 до N−1 включает ровно N отсчётов.. Замена частоты ff на f−kfsf - k f_s с любым целым kk не меняет отсчётов: sin⁡(2π(f−kfs) n/fs)=sin⁡(2πfn/fs−2πkn)\sin\bigl(2\pi (f - k f_s)\, n / f_s\bigr) = \sin(2\pi f n / f_s - 2\pi k n), а 2πkn2\pi k n — целое число оборотов. Если выбрать kk, ближайшее к f/fsf / f_s, получится частота f′f' в полосе от −fs/2-f_s / 2 до fs/2f_s / 2 (формула 5). Восстановление по формуле 4 даёт синусоиду именно этой частоты, y(t)=sin⁡(2πf′t)y(t) = \sin(2\pi f' t).

f′=f−kfs,k=round⁡(ffs)f' = f - k f_s, \quad k = \operatorname{round}\left(\frac{f}{f_s}\right)
f′f'
частота синусоиды с теми же отсчётами, от −fs/2-f_s/2 до fs/2f_s/2, Гц;
kk
целое число, ближайшее к f/fsf / f_s.

Ниже частоты Найквиста k=0k = 0 и f′=ff' = f: восстановленный тон совпадает с исходным. Выше неё частота меняется. Отрицательная f′f' означает тон частоты ∣f′∣|f'| с противоположным знаком, потому что sin⁡(−a)=−sin⁡a\sin(-a) = -\sin a. Smith описывает такой случай как сдвиг фазыфаза (phase) — Положение внутри периода колебания, выраженное углом: полный период соответствует 360°, или 2π радиан. Начальная фаза — её значение в момент t = 0. на 180° (Smith, глава 3.2). Например, тон 1 кГц при fs=1,5f_s = 1{,}5 кГц: k=1k = 1, f′=1−1,5=−0,5f' = 1 - 1{,}5 = -0{,}5 кГц, и отсчёты совпадают с отсчётами −sin⁡(2π⋅500 t)-\sin(2\pi \cdot 500\,t). Тон 5 кГц при fs=8f_s = 8 кГц даёт f′=−3f' = -3 кГц, тон 9 кГц при той же fsf_s — f′=1f' = 1 кГц со знаком исходного.

Визуализация 2 показывает тот же тон 1 кГц на интервале 0–3 мс при разной частоте дискретизации. Ползунок меняет fsf_s от 1 000 до 16 000 Гц; подпись под графиком пересчитывает TsT_s и число отсчётов. Когда fs<2ff_s < 2f, пунктир рисует синусоиду частоты ∣f′∣|f'| из формулы 5. Он проходит через те же отсчёты, что и исходный тон. Кнопка «1,5 кГц» даёт пример из предыдущего абзаца: 5 отсчётов за 3 мс и пунктир 500 Гц, который начинается вниз, а не вверх.

Визуализация 2Отсчёты синусоиды при разной частоте дискретизации
Отсчёты синусоиды 1 кГц при частоте дискретизации 8 000 ГцСинусоида 1 000 Гц на интервале от 0 до 3 мс, значения от −1 до 1. 25 отсчётов через каждые 125 мкс показаны стеблями с полыми кружками от нулевой линии.
  • сигнал 1 кГц
  • отсчёты

fₛ > 2f. 8 отсчётов на период — синусоида восстанавливается однозначно.

Параметры эксперимента
8 000 Гц
появляется при fs < 2f

Громкость. Результат — чистый тон 1 000 Гц. Перед запуском убавьте громкость, особенно в наушниках.

0:00,00:02,0
30 %

Остановлен

Параметры работают с включённым JavaScript. Рисунок показывает начальное состояние.

Рис. 2. Синусоида f = 1 кГц на интервале 0–⁠3 мс; fₛ = 8 000 Гц, Tₛ = 125 мкс, 25 отсчётов.

Плеер под графиком воспроизводит 2 секунды восстановленного сигнала y(t)y(t) для текущей fsf_s. При 8 кГц звучит исходный тон 1 кГц, при 1,5 кГц — тон 500 Гц: по отсчётам нельзя отличить, какой тон был записан. Компьютер воспроизводит этот фрагмент со своей частотой дискретизации, обычно 44,1 или 48 кГц, но частоту тона задаёт f′f' из формулы 5, а не частота звуковой карты.

Две частоты дискретизации дают нулевые отсчёты. При fs=2f=2f_s = 2f = 2 кГц на период приходится ровно два отсчёта, и при нулевой начальной фазе оба попадают в нули: x[n]=sin⁡(πn)=0x[n] = \sin(\pi n) = 0 для всех nn. С такими отсчётами совпадает синусоида 1 кГц любой амплитуды, в том числе нулевой, поэтому однозначного восстановления нет. По этой причине условие формулы 3 строгое: частоту fs/2f_s / 2 теорема исключает (Smith, CCRMA). При fs=f=1f_s = f = 1 кГц каждый отсчёт взят в одной и той же точке периода, x[n]=sin⁡(2πn)=0x[n] = \sin(2\pi n) = 0. Здесь f′=0f' = 0, и восстановленный сигнал однозначен — постоянный ноль: тон исчезает полностью. Для этих двух значений плеер не воспроизводит звук и объясняет почему.

Тон 1 кГц дискретизуют с частотой 1,2 кГц. С какой синусоидой совпадут отсчёты?

По формуле 5 k=round⁡(1/1,2)=1k = \operatorname{round}(1 / 1{,}2) = 1 и f′=1−1,2=−0,2f' = 1 - 1{,}2 = -0{,}2 кГц. Отсчёты совпадут с синусоидой 200 Гц с противоположным знаком, и плеер при fs=1 200f_s = 1\,200 Гц воспроизведёт тон 200 Гц.

Источники

Связи

Поиск

Ищем по названиям, тексту статей и английским терминам. Например: «частота дискретизации», «Nyquist», «аналоговый сигнал».