62
Основы цифровой Основы цифровой обработки сигналов обработки сигналов Алексей Лукин [email protected] «Введение в компьютерную графику» лекция 11.10.2012

Основы цифровой обработки сигналов

  • Upload
    heidi

  • View
    64

  • Download
    2

Embed Size (px)

DESCRIPTION

«Введение в компьютерную графику» лекция 11 . 10 .20 12. Основы цифровой обработки сигналов. Алексей Лукин [email protected]. План лекции. Основные определения Дискретизация, теорема Котельникова Линейные системы Дискретное преобразование Фурье Спектральный анализ - PowerPoint PPT Presentation

Citation preview

Page 1: Основы цифровой обработки сигналов

Основы цифровой Основы цифровой обработки обработки сигналовсигналов

Алексей Лукин[email protected]

«Введение в компьютерную графику»лекция 11.10.2012

Page 2: Основы цифровой обработки сигналов

План лекцииПлан лекции

Основные определенияОсновные определения Дискретизация, теорема КотельниковаДискретизация, теорема Котельникова Линейные системыЛинейные системы Дискретное преобразование ФурьеДискретное преобразование Фурье Спектральный анализСпектральный анализ Фильтрация, быстрая сверткаФильтрация, быстрая свертка Приложения: подавление шума, компрессия Приложения: подавление шума, компрессия

mp3mp3

Page 3: Основы цифровой обработки сигналов

СигналыСигналы

Сигнал – скалярная функция от одного или Сигнал – скалярная функция от одного или нескольких аргументовнескольких аргументов

s(t) – звук

Примеры сигналов

f(x,y) – изображение

Page 4: Основы цифровой обработки сигналов

СигналыСигналы Аналоговые (непрерывные)Аналоговые (непрерывные)

►Примеры:Примеры: звук в воздухе или в проводе, идущем от микрофоназвук в воздухе или в проводе, идущем от микрофона изображение (до ввода в компьютер)изображение (до ввода в компьютер) запись показаний датчиказапись показаний датчика

Цифровые (дискретные)Цифровые (дискретные)►Примеры:Примеры:

звук в компьютере (одномерный массив чисел)звук в компьютере (одномерный массив чисел) изображение в компьютере (двумерный массив чисел)изображение в компьютере (двумерный массив чисел) запись показаний датчика в компьютере (одномерный запись показаний датчика в компьютере (одномерный

массив)массив)

3 2 1 0 1 2 3

Одномерный цифровой сигнал

Page 5: Основы цифровой обработки сигналов

Оцифровка сигналовОцифровка сигналов

1.1. Дискретизация по времениДискретизация по времени ((аргумент функции)аргумент функции)

2.2. Квантование по амплитуде Квантование по амплитуде (значение функции)(значение функции)

АЦП (ADC) – аналогово-цифровой преобразовательПараметры: частота дискретизации, разрядность квантования

(пример: 44.1 кГц, 16 бит – формат Audio CD)

Page 6: Основы цифровой обработки сигналов

Оцифровка сигналовОцифровка сигналов

При каких условиях по цифровому сигналу При каких условиях по цифровому сигналу можно точно восстановить исходный можно точно восстановить исходный аналоговый?аналоговый?

Предположим, что значения амплитуд в Предположим, что значения амплитуд в цифровом сигнале представлены точноцифровом сигнале представлены точно

Введем понятие спектра аналогового Введем понятие спектра аналогового сигнала:сигнала:

dtetxX ti 2)()(

(разложение на синусоиды с различными частотами)

deXtx ti2)()(

x(t) – исходный сигналX(ν) – спектр, т.е. коэффициенты при гармониках с частотой ν

ptipte pt sincos

Page 7: Основы цифровой обработки сигналов

Теорема КотельниковаТеорема Котельникова

ПустьПусть

1.1. спектр сигнала спектр сигнала x(t) x(t) не содержит частот выше не содержит частот выше F, F, т.е. т.е. X(X(νν)=0 )=0 за пределами отрезка за пределами отрезка [-F, F][-F, F]

2.2. дискретизация сигнала дискретизация сигнала x(t) x(t) производится с производится с частотой частотой FFs s , , т.е. в моменты времени т.е. в моменты времени nT, nT, здесь здесь T= FT= Fss

-1-1

3.3. FFss > 2F > 2F Тогда исходный аналоговый сигнал Тогда исходный аналоговый сигнал x(t) x(t) можно можно

точно восстановить из его цифровых отсчетовточно восстановить из его цифровых отсчетов x(nT), x(nT), пользуясь интерполяционной формулойпользуясь интерполяционной формулой

n

nTtSincnTxtx )()()(tF

tFtSinc

s

s

sin

)(

Page 8: Основы цифровой обработки сигналов

Теорема КотельниковаТеорема Котельникова

Как выглядят интерполирующие Как выглядят интерполирующие sinc-sinc-функциифункции??

n

nTtSincnTxtx )()()(tF

tFtSinc

s

s

sin

)(

Бесконечно затухающие колебания

Page 9: Основы цифровой обработки сигналов

Теорема КотельниковаТеорема Котельникова

Реконструкция аналоговых сигналов. Реконструкция аналоговых сигналов. Sinc-Sinc-интерполяция.интерполяция.

n

nTtSincnTxtx )()()(

Page 10: Основы цифровой обработки сигналов

Эффект ГиббсаЭффект Гиббса

Применимость Применимость sinc-sinc-интерполяции для изображенийинтерполяции для изображений Эффект ГиббсаЭффект Гиббса: : пульсации сигнала при пульсации сигнала при

ограничении его спектраограничении его спектра

Цифровые отсчеты sinc-интерполяция другая интерполяция

Page 11: Основы цифровой обработки сигналов

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

Что будет, если условия теоремы Котельникова не Что будет, если условия теоремы Котельникова не выполнены?выполнены?

Пусть звук не содержит частот выше 20 кГц. Тогда, Пусть звук не содержит частот выше 20 кГц. Тогда, по теореме Котельникова, можно выбрать частоту по теореме Котельникова, можно выбрать частоту дискретизации 40 кГц.дискретизации 40 кГц.

Пусть в звуке появилась помеха с частотой 28 кГц. Пусть в звуке появилась помеха с частотой 28 кГц. Условия теоремы Котельникова перестали Условия теоремы Котельникова перестали выполняться.выполняться.

((aliasingaliasing))

Page 12: Основы цифровой обработки сигналов

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

Проведем дискретизацию с частотой 40 кГц, а затем Проведем дискретизацию с частотой 40 кГц, а затем – восстановим аналоговый сигнал – восстановим аналоговый сигнал sinc-sinc-интерполяцией.интерполяцией.

Помеха отразилась от половины частоты Помеха отразилась от половины частоты дискретизации в нижнюю часть спектра и дискретизации в нижнюю часть спектра и наложилась на звук. Помеха переместилась в наложилась на звук. Помеха переместилась в слышимый диапазон. Алиасинг.слышимый диапазон. Алиасинг.

((aliasingaliasing))

Page 13: Основы цифровой обработки сигналов

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

Как избежать наложения спектров?Как избежать наложения спектров? Применить перед оцифровкой анти-алиасинговый Применить перед оцифровкой анти-алиасинговый

фильтрфильтр► Он подавит все помехи выше половины частоты Он подавит все помехи выше половины частоты

дискретизации (выше 20 кГц) и пропустит весь сигнал дискретизации (выше 20 кГц) и пропустит весь сигнал ниже 20 кГц.ниже 20 кГц.

► После этого условия теоремы Котельникова будут После этого условия теоремы Котельникова будут выполняться и алиасинга не возникнет.выполняться и алиасинга не возникнет.

► Следовательно, по цифровому сигналу можно будет Следовательно, по цифровому сигналу можно будет восстановить исходный аналоговый сигнал.восстановить исходный аналоговый сигнал.

((aliasingaliasing))

Page 14: Основы цифровой обработки сигналов

Линейные системыЛинейные системы

Система – преобразователь сигналаСистема – преобразователь сигнала

Линейность:Линейность:

Инвариантность к сдвигу:Инвариантность к сдвигу:

Hx(t) y(t)

))(()( txHty

))(())(( txHtxH

))(())(())()(( tzHtxHtztxH

)())(( 00 ttyttxH

Page 15: Основы цифровой обработки сигналов

Импульсная Импульсная характеристикахарактеристика

Единичный импульс Единичный импульс δδ[n][n]

Разложение произвольного сигнала на взвешенную Разложение произвольного сигнала на взвешенную сумму единичных импульсовсумму единичных импульсов

Page 16: Основы цифровой обработки сигналов

Импульсная Импульсная характеристикахарактеристика

Отклик системы на единичный импульсОтклик системы на единичный импульс

h[n] – h[n] – импульсная характеристика системы импульсная характеристика системы (импульсный отклик системы)(импульсный отклик системы)

Page 17: Основы цифровой обработки сигналов

Импульсная Импульсная характеристикахарактеристика

Вычисление Вычисление отклика линейной отклика линейной системы на системы на произвольный произвольный входной сигналвходной сигнал

СверткаСвертка][][][ nxnhny

k

khknxny ][][][

h[n] – ядро свертки

Page 18: Основы цифровой обработки сигналов

Линейные системыЛинейные системы

Итак, любая линейная инвариантная к сдвигу Итак, любая линейная инвариантная к сдвигу система производит операцию свертки входного система производит операцию свертки входного сигнала со своей импульсной характеристикой.сигнала со своей импульсной характеристикой.

Важное свойство линейных систем:Важное свойство линейных систем:

При подаче на любую линейную систему синусоиды, При подаче на любую линейную систему синусоиды, на выходе получается синусоида той же частоты, на выходе получается синусоида той же частоты, что и на входе. Измениться могут только ее что и на входе. Измениться могут только ее амплитуда или фаза.амплитуда или фаза.

Следствие: линейные системы удобно Следствие: линейные системы удобно анализировать, раскладывая любые входные анализировать, раскладывая любые входные сигналы на синусоиды.сигналы на синусоиды.

Page 19: Основы цифровой обработки сигналов

Двумерные Двумерные фильтрыфильтры

Как работают фильтрыКак работают фильтры

010

121

010

6

1],[ pkKer

Коэффициенты фильтра,ядро свертки 3x3,«функция размытия точки»

-1 ≤ k ≤ 1,-1 ≤ p ≤ 1

Page 20: Основы цифровой обработки сигналов

Примеры Примеры фильтровфильтров

Простейшее размытиеПростейшее размытие

Константное размытиеКонстантное размытие

““box-box-фильтрфильтр””(любой размер фильтра)(любой размер фильтра)

Гауссово размытиеГауссово размытие(любой размер фильтра)(любой размер фильтра)

121

232

121

15

1],[ pkKer

2

22

2exp

1],[

pk

SumpkKer

SumpkKer

1],[

Page 21: Основы цифровой обработки сигналов

Примеры Примеры фильтровфильтров

Повышение резкостиПовышение резкости

Нахождение границНахождение границ

ТиснениеТиснение

121

2222

121

10

1

010

141

010

+ модуль, нормировка, применение порога…

010

101

010

+ сдвиг яркости,

нормировка…

Page 22: Основы цифровой обработки сигналов

Звук и слухЗвук и слух

Диапазон звуковых сигналов и пороги восприятияДиапазон звуковых сигналов и пороги восприятия

100 1000 10000

2 2 22 5 5 52x10-6

2x10-5

2x10-4

2x10-3

2x10-2

2x10-1

2

20

2x102

Page 23: Основы цифровой обработки сигналов

Звук и слухЗвук и слух

Звуковые волны поступают на улитку, возбуждая ее Звуковые волны поступают на улитку, возбуждая ее колебанияколебания

Жесткость улитки меняется с расстоянием, поэтому Жесткость улитки меняется с расстоянием, поэтому каждая часть резонирует в своем частотном каждая часть резонирует в своем частотном диапазонедиапазоне

Image from Wikipedia

Page 24: Основы цифровой обработки сигналов

Звук и слухЗвук и слух

К разным частям улитки подходят различные К разным частям улитки подходят различные группы нервов, передающие в мозг информацию об группы нервов, передающие в мозг информацию об амплитуде и фазе колебанийамплитуде и фазе колебаний

Таким образом, улитка раскладывает звук на Таким образом, улитка раскладывает звук на частотные составляющиечастотные составляющие

Image from Wikipedia

Page 25: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Зачем раскладывать сигналы на синусоиды?Зачем раскладывать сигналы на синусоиды?► Анализ линейных системАнализ линейных систем► Особенности слухового восприятияОсобенности слухового восприятия► Хорошо разработана теория и практикаХорошо разработана теория и практика

Дискретное преобразование Фурье (ДПФ)Дискретное преобразование Фурье (ДПФ)

► Для вещественного сигналаДля вещественного сигнала

Прямое и обратное преобразования ФурьеПрямое и обратное преобразования Фурье

sincosexp ii

2

0

2

0

2

0

2sin

2cos

)(2cos][

N

kk

N

kk

N

k

kk N

knB

Nkn

ANnk

Cnx

1

0

2exp

1][

N

kk N

iknX

Nnx

Page 26: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Базисные функцииБазисные функции дискретного дискретного преобразования Фурье для преобразования Фурье для сигнала длины сигнала длины N = 8N = 8..

Имеем Имеем N/2 + 1 = N/2 + 1 = 5 5 различных базисных различных базисных частот.частот.

Имеем Имеем N+2 N+2 базисные базисные функции, 2 из которых функции, 2 из которых тождественно равны нулю.тождественно равны нулю.

Количество информации не Количество информации не изменяется: изменяется: NN чисел чисел

Page 27: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Базисные функции образуют Базисные функции образуют N-N-мерный мерный ортогональный базис в пространстве ортогональный базис в пространстве N-N-мерных мерных векторов исходных сигналов.векторов исходных сигналов.

Следовательно, разложение обратимо, т.е. по Следовательно, разложение обратимо, т.е. по коэффициентам разложения (коэффициентам разложения (AAkk, B, Bkk) ) можно точно можно точно восстановить исходный дискретный сигнал.восстановить исходный дискретный сигнал.

Обратное преобразование Фурье – вычисление Обратное преобразование Фурье – вычисление суммы конечного ряда Фурье (сложить суммы конечного ряда Фурье (сложить N N штук штук N-N-точечных синусоид со своими коэффициентами).точечных синусоид со своими коэффициентами).

Page 28: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Прямое преобразование Фурье – вычисление Прямое преобразование Фурье – вычисление скалярных произведений сигнала на базисные скалярных произведений сигнала на базисные функции:функции:

Для вычисления всех коэффициентов по этому Для вычисления всех коэффициентов по этому алгоритму требуется примерно алгоритму требуется примерно NN22 умножений: умножений: очень много при больших длинах сигнала очень много при больших длинах сигнала N.N.

1

0

2cos][

2 N

ik N

kiix

NA

1

0

2cos][

1 N

ik N

kiix

NA

1

0

2sin][

2 N

ik N

kiix

NB

12

,...,1 N

k

2,0N

k

2,...,0

Nk

Page 29: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Быстрое преобразование Фурье (БПФ, Быстрое преобразование Фурье (БПФ, FFTFFT) – ) – ускоренный алгоритм вычисления ДПФускоренный алгоритм вычисления ДПФ► Основан на периодичности базисных функций (много Основан на периодичности базисных функций (много

одинаковых множителей)одинаковых множителей)► Математически точен (ошибки округления даже Математически точен (ошибки округления даже

меньше, т.к. меньше число операций)меньше, т.к. меньше число операций)► Число умножений порядка Число умножений порядка N·logN·log22N, N, намного меньше, намного меньше,

чем чем NN22

► Ограничение: большинство реализаций Ограничение: большинство реализаций FFT FFT принимают принимают только массивы длиной только массивы длиной N = 2N = 2mm

Существует и обратное БПФ (Существует и обратное БПФ (IFFT)IFFT) – такой же – такой же быстрый алгоритм вычисления обратного ДПФ.быстрый алгоритм вычисления обратного ДПФ.

Page 30: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Входные данные Входные данные FFTFFT► N = 2N = 2mm, , размер размер FFTFFT► Входной вектор длины Входной вектор длины N, N, иногда в комплексном иногда в комплексном

представлениипредставлении

Выходные данные Выходные данные FFTFFT► Коэффициенты Коэффициенты AAkk и и BBkk, , иногда записанные в иногда записанные в

комплексном представлениикомплексном представленииkk iBA

Page 31: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Как вычислить и отобразить спектр сигнала?Как вычислить и отобразить спектр сигнала?1.1. Взять нужный отрезок сигнала длины Взять нужный отрезок сигнала длины 22mm; ; если нужный если нужный

отрезок короче – дополнить его нулямиотрезок короче – дополнить его нулями

2.2. Если нужно – умножить сигнал на весовое окно, Если нужно – умножить сигнал на весовое окно, плавно спадающее к краям (для уменьшения размытия плавно спадающее к краям (для уменьшения размытия спектра)спектра)

3.3. Вычислить Вычислить FFTFFT

4.4. Перевести комплексные коэффициенты в полярную Перевести комплексные коэффициенты в полярную форму: получить амплитуды и фазыформу: получить амплитуды и фазы

5.5. Отобразить график зависимости амплитуды от частотыОтобразить график зависимости амплитуды от частоты

Примеры весовых окон

Page 32: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Отображение спектра звукаОтображение спектра звука► График зависимости амплитуды от частотыГрафик зависимости амплитуды от частоты► Низкие частоты – слева, высокие – справаНизкие частоты – слева, высокие – справа► Часто применяется логарифмический масштаб частот Часто применяется логарифмический масштаб частот

и амплитуди амплитуд: “log-log-: “log-log-спектрспектр””► Временное и частотное разрешение спектраВременное и частотное разрешение спектра

Децибелы:0

1lg20A

AD

A1 – амплитуда измеряемого сигнала,A0 – амплитуда сигнала, принятого за начало отсчета (0 дБ)Разница на 6 дБ – разница по амплитуде в 2

раза,разница на 12 дБ – разница по амплитуде в 4 раза.Часто за 0 дБ принимается либо самый тихий слышимый звук, либо самый громкий звук, который может воспроизвести аудио-устройство.

Page 33: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Размытие спектраРазмытие спектра► Что если частота сигнала не совпадает с одной из Что если частота сигнала не совпадает с одной из

собственных частот собственных частот FFT?FFT? (т.е. на отрезок взятия (т.е. на отрезок взятия спектра укладывается нецелое число периодов спектра укладывается нецелое число периодов сигнала)сигнала)

► Размытие спектраРазмытие спектра► Равенство амплитудных спектров у циклических Равенство амплитудных спектров у циклических

сдвигов сигналасдвигов сигнала

совпадающая частота несовпадающая частота

Page 34: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Прямоугольное (нет окна) Hamming

Blackman Kaiser

Формулы и картинки: http://en.wikipedia.org/wiki/Window_Function

примеры весовых оконпримеры весовых окон

Page 35: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Размытие спектра: весовые окнаРазмытие спектра: весовые окна► Умножение сигнала на весовое окно устраняет Умножение сигнала на весовое окно устраняет

разрывы в периодическом продолжении сигнала, разрывы в периодическом продолжении сигнала, делая его более гладкимделая его более гладким

► Боковые лепестки спектра синусоиды подавляются Боковые лепестки спектра синусоиды подавляются (в (в зависимости от типа весового окна)зависимости от типа весового окна)

► Главный лепесток спектра синусоиды расширяется Главный лепесток спектра синусоиды расширяется (чем (чем уже окно во временной области, тем сильнее расширение в частотной уже окно во временной области, тем сильнее расширение в частотной области)области)

совпадающая частота несовпадающая частота

Page 36: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Двумерное ДПФДвумерное ДПФ► Базисные функции имеют вид двумерных синусоид с Базисные функции имеют вид двумерных синусоид с

разными углами наклона и фазамиразными углами наклона и фазами

Вычисление двумерного ДПФВычисление двумерного ДПФ1.1. Прямой способ – скалярные произведения со всеми Прямой способ – скалярные произведения со всеми

базисными функциями. Очень много операций.базисными функциями. Очень много операций.

2.2. Быстрый способ – декомпозиция на одномерные ДПФБыстрый способ – декомпозиция на одномерные ДПФ

M

mj

N

ni 22sin

Page 37: Основы цифровой обработки сигналов

Преобразование ФурьеПреобразование Фурье

Быстрое вычисление двумерного ДПФБыстрое вычисление двумерного ДПФ1.1. Вычислить одномерные комплексные ДПФ от каждой Вычислить одномерные комплексные ДПФ от каждой

строки изображения. Результаты записать в виде строки изображения. Результаты записать в виде комплексных массивов «обратно» в промежуточное комплексных массивов «обратно» в промежуточное «комплексное» изображение.«комплексное» изображение.

2.2. Вычислить одномерные комплексные ДПФ от каждого Вычислить одномерные комплексные ДПФ от каждого столбца промежуточного комплексного изображения. столбца промежуточного комплексного изображения. Комплексные результаты записать «обратно». Это и Комплексные результаты записать «обратно». Это и есть коэффициенты двумерного ДПФ.есть коэффициенты двумерного ДПФ.

Одномерные ДПФ можно считать с помощью Одномерные ДПФ можно считать с помощью FFTFFT

Page 38: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Отображение спектров изображенийОтображение спектров изображений► Спектр – это изображение, показывающая зависимость Спектр – это изображение, показывающая зависимость

амплитуды от частоты и от направления синусоиды.амплитуды от частоты и от направления синусоиды.► Амплитуды отображаются в виде яркостей.Амплитуды отображаются в виде яркостей.► Нулевая частота – в центре спектра, низкие частоты Нулевая частота – в центре спектра, низкие частоты

вокруг центра, высокие – дальше от центра.вокруг центра, высокие – дальше от центра.► Спектр обычно продублирован отражением от нулевой Спектр обычно продублирован отражением от нулевой

частоты.частоты.► В реальных изображениях чаще всего гораздо В реальных изображениях чаще всего гораздо

большие амплитуды имеют низкие частоты (и большие амплитуды имеют низкие частоты (и постоянная составляющая). Поэтому постоянную постоянная составляющая). Поэтому постоянную составляющую иногда удаляют, или применяют составляющую иногда удаляют, или применяют логарифмический масштаб отображения амплитуд, логарифмический масштаб отображения амплитуд, чтобы пара самый мощных гармоник не скрыла чтобы пара самый мощных гармоник не скрыла остальные, менее мощные, но тоже существенные остальные, менее мощные, но тоже существенные гармоники.гармоники.

ωy

ωx

Page 39: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Примеры изображений и их спектровПримеры изображений и их спектров

Видно, что спектр одной синусоиды – это точка(не забываем про симметричное отражение спектра)

Две синусоиды – две точки

ωy

ωx

ωy

ωx

Page 40: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ Примеры изображений и их спектровПримеры изображений и их спектров

По спектру прослеживаются преобладающие направления в исходной картинке

Много высоких частот в спектре – много мелких деталей в исходном изображении

Page 41: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ Примеры звуков и их спектровПримеры звуков и их спектров

Песня (стерео запись)

Нота на гитаре

Page 42: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ

Отображение спектра звука: спектрограмма Отображение спектра звука: спектрограмма (сонограмма)(сонограмма)► Спектрограмма – график зависимости амплитуды от Спектрограмма – график зависимости амплитуды от

частоты и от времени, показывает изменение спектра частоты и от времени, показывает изменение спектра во времениво времени

► Short Time Fourier Transform (STFT)Short Time Fourier Transform (STFT)

m

miemwmnxnSTFT ][][],[

Page 43: Основы цифровой обработки сигналов

Спектральный анализСпектральный анализ Примеры звуков и их спектрограммПримеры звуков и их спектрограмм

Нота на гитаре

Page 44: Основы цифровой обработки сигналов

Спектральный Спектральный анализанализ

Отображение спектра звука: спектрограмма Отображение спектра звука: спектрограмма (сонограмма)(сонограмма)► Спектрограмма – график зависимости амплитуды от Спектрограмма – график зависимости амплитуды от

частоты и от времени, показывает изменение спектра частоты и от времени, показывает изменение спектра во времениво времени

► Низкие частоты – снизу, высокие – сверхуНизкие частоты – снизу, высокие – сверху► Время идет справа налевоВремя идет справа налево► Амплитуда – яркость или цветАмплитуда – яркость или цвет► Частотное и временное разрешениеЧастотное и временное разрешение► Short Time Fourier Transform (STFT)Short Time Fourier Transform (STFT)

Показывает изменение спектра во времени

Page 45: Основы цифровой обработки сигналов

Быстрая сверткаБыстрая свертка

Прямое вычисление: Прямое вычисление: M·N M·N умножений (умножений (M – M – размер ядра размер ядра свертки, свертки, N – N – длина сигнала)длина сигнала)

Теорема свертки: сверткаТеорема свертки: свертка** во временной области во временной области эквивалентна умножению в частотной области, эквивалентна умножению в частотной области, умножение во временной области эквивалентно умножение во временной области эквивалентно сверткесвертке** в частотной области. в частотной области.

Алгоритм быстрой свертки:Алгоритм быстрой свертки:1.1. Вычислить спектры сигнала и ядра сверткиВычислить спектры сигнала и ядра свертки (FFT) (FFT)

2.2. Перемножить эти спектрыПеремножить эти спектры

3.3. Вернуть полученный спектр во временную область Вернуть полученный спектр во временную область ((IFFT)IFFT)

Почему это быстрее?Почему это быстрее? Потому что переход в частотную Потому что переход в частотную область и обратно быстрый: область и обратно быстрый: FFTFFT

* Речь идет о т.н. круговой свертке* Речь идет о т.н. круговой свертке

Page 46: Основы цифровой обработки сигналов

Быстрая сверткаБыстрая свертка

Как изменяется длина сигнала при свертке? Она Как изменяется длина сигнала при свертке? Она увеличивается на длину ядра минус 1 увеличивается на длину ядра минус 1 (т.к. каждый (т.к. каждый входной отсчет превращается в ядро и они складываются с входной отсчет превращается в ядро и они складываются с наложением)наложением)

Значит, если взять сигнал длины Значит, если взять сигнал длины N, N, ядро длины ядро длины M M и и произвести свертку через произвести свертку через FFT FFT размера размера N, N, то результат то результат свертки свертки (длины (длины N+M-1)N+M-1) не поместитсяне поместится в результате в результате IFFT IFFT ((длины длины N)N). . Произойдет Произойдет круговая сверткакруговая свертка (заворачивание (заворачивание

результата по времени)результата по времени)..

Следовательно, для предотвращения круговой Следовательно, для предотвращения круговой свертки надо взять размер свертки надо взять размер FFT FFT как минимум как минимум N+M-1N+M-1

Page 47: Основы цифровой обработки сигналов

ФильтрацияФильтрация

Спектры сигналов при свертке перемножаютсяСпектры сигналов при свертке перемножаются Следовательно, свертка (фильтрация) меняет спектр Следовательно, свертка (фильтрация) меняет спектр

сигналасигнала Свойства фильтров:Свойства фильтров:

► Частотная характеристика фильтра (АЧХ)Частотная характеристика фильтра (АЧХ)► Полосы пропускания (Полосы пропускания (pass-band)pass-band), подавления, подавления (stop-band) (stop-band), ,

срезасреза (transition band) (transition band)

► Линейность ФЧХЛинейность ФЧХ► Длина фильтраДлина фильтра

* =Перемножение амплитуд = сложение децибелов

Page 48: Основы цифровой обработки сигналов

ФильтрацияФильтрация

Проектирование фильтровПроектирование фильтров: : метод весового окнаметод весового окна► Построение фильтра с линейной фазой по Построение фильтра с линейной фазой по

произвольной заданной частотной характеристикепроизвольной заданной частотной характеристике► Частотная характеристика приближается с любым Частотная характеристика приближается с любым

заданным уровнем точностизаданным уровнем точности► Основная идея: взять обратное ДПФ от требуемой АЧХ Основная идея: взять обратное ДПФ от требуемой АЧХ

и применить к ядру весовое окно и применить к ядру весовое окно (подробности – в (подробности – в методичке)методичке)

Идеальный НЧ-фильтр Один из реальных НЧ-фильтров

Page 49: Основы цифровой обработки сигналов

ФильтрацияФильтрация

Применения фильтрацииПрименения фильтрации► Подавление помех и шумовПодавление помех и шумов► Анти-алиасингАнти-алиасинг► Звуковые эквалайзеры: улучшение качества Звуковые эквалайзеры: улучшение качества

звука, компенсация искажений звуковой звука, компенсация искажений звуковой аппаратуры, творческие задачи в звукозаписиаппаратуры, творческие задачи в звукозаписи

► Моделирование реверберацииМоделирование реверберации► Обработка изображений: эффекты, коррекцияОбработка изображений: эффекты, коррекция► Фильтрация – составная часть многих других, Фильтрация – составная часть многих других,

более сложных алгоритмовболее сложных алгоритмов

Page 50: Основы цифровой обработки сигналов

Единичный импульсЕдиничный импульс

Простейшее размытиеПростейшее размытие

Двумерные фильтрыДвумерные фильтры

],[ nm

121

232

121

15

1],[ pkKer

ωy

ωx

ωy

ωx

Page 51: Основы цифровой обработки сигналов

Константное размытие 3х3Константное размытие 3х3

Константное размытие 5х5Константное размытие 5х5

Двумерные фильтрыДвумерные фильтры

SumpkKer

1],[

SumpkKer

1],[

ωy

ωx

ωy

ωx

Page 52: Основы цифровой обработки сигналов

Повышение четкостиПовышение четкости

Выделение границВыделение границ

Двумерные фильтрыДвумерные фильтры

121

2222

121

10

1

010

141

010

ωy

ωx

ωy

ωx

Page 53: Основы цифровой обработки сигналов

Виды шумов и искаженийВиды шумов и искажений

Источники шумов и искаженийИсточники шумов и искажений►На заре звукозаписи – ограничения аппаратуры На заре звукозаписи – ограничения аппаратуры ►Сейчас – бюджетная аппаратура, неидеальные Сейчас – бюджетная аппаратура, неидеальные

условия записи, архивные материалыусловия записи, архивные материалы

Шумы иискажения

СтационарныеИмпульсные Искажения

Щелчки винилаЦифровые выпадения

Шум магнитной лентыНаводка 50 Гц

Нелинейные искаженияФильтрация

Проблема по-прежнему актуальна!

Page 54: Основы цифровой обработки сигналов

ШумоподавлениеШумоподавление

Аддитивный шумАддитивный шум

Метод спектрального вычитания

][][][ nnoisencleanndirty

Шум предполагается стационарным,т.е. не меняющимся во времени (средняя мощность, спектр)

Page 55: Основы цифровой обработки сигналов

ШумоподавлениеШумоподавление

Простейшие методы: гейт Простейшие методы: гейт (1940) (1940)

подавление сигналов ниже определенной амплитуды

Page 56: Основы цифровой обработки сигналов

Стационарные шумыСтационарные шумы

Общий принцип подавленияОбщий принцип подавления1.1. Преобразование, компактно локализующее Преобразование, компактно локализующее

энергию (энергию (energy compaction)energy compaction)

2.2. Модификация коэффициентов преобразования Модификация коэффициентов преобразования (подавление коэффициентов, соответствующих (подавление коэффициентов, соответствующих шуму)шуму)

3.3. Обратное преобразование (восстановление Обратное преобразование (восстановление очищенного сигнала)очищенного сигнала)

Page 57: Основы цифровой обработки сигналов

Спектральное Спектральное вычитаниевычитание

Спектральное вычитание для Спектральное вычитание для аудиосигналоваудиосигналов

1.1. STFTSTFT

2.2. Оценка спектра шума по участку без полезного Оценка спектра шума по участку без полезного сигналасигнала

3.3. «Вычитание» спектра шума из спектра сигнала«Вычитание» спектра шума из спектра сигнала

4.4. Обратное Обратное STFTSTFT

Spectral Subtraction,Short-Time Spectral Attenuation

STFT

Оценкаспектра шума

InverseSTFT

x[t] X[f,t]–

W[f]

S[f,t] s[t]

Схема алгоритма спектрального вычитания

Page 58: Основы цифровой обработки сигналов

ШумоподавлениеШумоподавление

Многополосная интерпретацияМногополосная интерпретация

x[n] Банкфильтров(анализ) …

Gate

Gate

Gate

… …

y[n]Банкфильтров(синтез)

Пороги срабатывания гейтов зависятот уровня шума в каждой частотной полосе

Гейт (gate) – устройство, подавляющее тихие сигналы(громкие пропускаются без изменения)

Page 59: Основы цифровой обработки сигналов

Слуховая маскировкаСлуховая маскировка

Сильные звуки Сильные звуки ((masker)masker) маскируют более маскируют более слабые слабые ((maskee)maskee)

►Одновременная маскировкаОдновременная маскировка►ВременнВременнаая маскировка (прямая и обратная)я маскировка (прямая и обратная)

Page 60: Основы цифровой обработки сигналов

Слуховая маскировкаСлуховая маскировка

Маскировка тонами, шумами и общий порог Маскировка тонами, шумами и общий порог маскировкимаскировки

Шаг квантования выбирается Шаг квантования выбирается пропорциональным порогу маскировкипропорциональным порогу маскировки

Page 61: Основы цифровой обработки сигналов

Алгоритм Алгоритм mp3mp3

Кодирование аудиоданных с потерямиКодирование аудиоданных с потерями

Схема кодера mp3

mp3-файлx[n]

FFT

Банкфильтров

Q Huffman

Психоакустическийанализ

Page 62: Основы цифровой обработки сигналов

Применения ЦОСПрименения ЦОС

Компрессия изображений Компрессия изображений ((JPEG, JPEGJPEG, JPEG--2000)2000)

Компрессия аудио Компрессия аудио ((mp3, aac, …)mp3, aac, …)

Мобильная телефонияМобильная телефония ЗвукозаписьЗвукозапись ШумоподавлениеШумоподавление, , исправление исправление

искаженийискажений Обработка и распознавание речиОбработка и распознавание речи

и многое другоеи многое другоеhttp://imaging.cs.msu.ru/dspcourse