Дьяконов В.П. Matlab 6.5 SP1 7 0 Simulink 5 6 Обработка сигналов и проектирование фильтров 2005 (1245705), страница 35
Текст из файла (страница 35)
- хи зи 4ее еи Рис. 2.5[. Пример построении периодограммы Полученный при этом график представлен на рис. 2.51. Нетрудно заметить, что уже отмечалось, что периодограмма имеет сильно изрезанный график. 2.15.2. Построение графиков спектральной плотности Для построения графиков спектральной плотности служит графическая команда ребр[о[, записываемая в следующем формате: рввр1ог(рхх,и[,'ипььв', 'увеа1е','Еье1е']) Опция 'цпйв' может иметь значение 'гае[/вап)р[е' (по умолчанию) или 'Нв'.
Другая опция увса[е' имеет значения 'дЬ' (по умолчанию) для построения графиков в логарифмическом масштабе или '1[пеаг' для графика в линейном масштабе. Опция 'увса[е' задает масштаб по вертикали, а '[1[[е' — титульную надпись на ) рафике. Для построения периодограмм служит функция [Рхх, е] = регтоаосеам(х[, мгпсои, пГГЕ, Гв, 'саиде')) Обязательным является параметр х — вектор отсчетов сигналов. Параметр ьу)пг]оьу задает тип окна (по умолчанию используется прямоугольное окно), пй[— порядок БПФ, Гв — частота дискретизации и галде — строковый параметр, задает частотный диапазон для возвращаемого вектора Рхх. Если необязательные входные параметры не указаны, то функция строит график спектральной плотности с помощью функции рве]р[о[. Для параметра галде возможно два значения: ° [тусь[[[од — параметр по умолчанию, задающий длину векторов Рхх и Г рав- ную МГ[, что соответствует диапазону частот от О до Ев; 2.
15. Средства визуализации спектра сигналов 175 ° овса]де(] — векторы рхх и Г имеют длину се[1((]ч[ГГ(+ 1)/2), что соответствует диапазону частот от 0 до Га/2 (этот вариант используется по улюлчанию, если вектор х имеет действительные элементы). Следующий пример показывает построение графика зависимости плотности спектральных составляющих сигнала от нормализованной частоты для зашумленного косинусоидального сигнала с частотой 150 Гц: с 0:0.001:0.3) х = соа(2*р1*с*150) в 0.2*гапон(а1хе(с) ) ( [Рхх,и] = ресьос)орсам(х,[],'опев1с)е',512)( рвс)р1ов ( Рхх, и) График этой зависимости представлен на рис. 2,52. Обратите внимание, что в данном случае частота задается в нормированном виде. Рис.
2.52. График зависимости плотности спектральных составлаюп)их от частоты 2.15.3. Построение спектрограмм — вресягап) Для визуализации БПФ служит функция построения спеюпрограмм аресйгап). Это очень мощное и современное средспю визуализации спектра. Он представляется зависимостью амплитуды спектральных составляющих БПФ, вычисляемого в перемещающемся окне, от момента времени, задающего положение окна. Фактически спектрограмма строится в плоскости частота — время, а амплитуда каждой спектральной составляющей определяет цвет построения каждой точки спектрограммы.
При построении спектрограммы используется функциональная окраска. 176 Глава 2. Создание а обработка сигналов Внимание. Увы, на страницах книг спектрограммы воспроизводятся без функциональной цветной окраски. Вместо нее используются оттенки серого цвета. Но. даже в этом случае, спектрогромма является весьма иоформативоои характеристикой сигнала и позволяет зачастую выявлять самые тонкие его особенности. Гак, мы неоднократно демонстрировали возможное(пь выявления закона частотной модуляции сигналов. Данная функция имеет ряд форм записи. В простейшем случае В = врес.
ягаш(а) вычисляется спектрограмма сигнала, с отчетами в векторе х. При э(ом ряд параметров используется по умолчанию: пйй = и)!п(256,!епя(Ь(а)); 15 = 2; )и!п()о)ив периодическое окно Хэннинга с длиной пй) и пцп)онег1ар = 1епд(Ь(чч!пс)оч()/2. В других формах записи могут задаваться различные входные параметры и определяться дополнительные выходные параметры: В = яресдгае(а,пййС) (В, й) = яресчгав(а,пййй, йя) ! В, й, Г) = яресягае [а, еййс, йя) В = яресогяе(а,пййй,йя,егпаее(,певонег1ар)) В = яресчгае(а, й, йя,н1еаое, пепюнег1ар) Если какой то из параметров не задается, то использование пустого списка [) задает его значение по умолчанию. Поскольку назначение всех входных параметров уже не раз обсуждалось, отметим что наряду с амплитудами спектральных составляющих В может возвращаться вектор частот БПФ Г и вектор времен (.
Длина вектора ( равна числу столбцов матрицы В. Параметр пцгпочег1ар залает число отсчетов, на которое происходит перекрытие блоков. При х с комплексными компонентами матрица В будет также содержать комплексные компоненты с числом строк ппГ. Каждый столбец соответствует определенному моменту времени. пропорциональному номеру столбца. Функция вресега(а(...) строит спектрограмму в текущем окне, используя функцию йеаяеяс (Ь, й, 20*1о010 (аЬя (Ь) ) ), ахйя ху, со1егеар()ей) Мы уже не раз приводили эффектные примеры применения функции зресяга(п — рис. 2.5, 2.10 и 2.18.
Остановимся еще на паре примеров. В одном из них строится спектрограмма звуковых колебаний из уже использованного нами тестового файла гп((Ь: 1оаа ей1Ь( яресдгае(вй1Ь, 512, Гя, Кайяег(500, 5), 415) гйг1е('эрессочгапв йог аег)1е чане') Этот простой пример считывает с жесткого диска звуковой файл п)(1Ь и затем строит его спектрограмму, используя для этого окна Кайзера. Полученная спектрограмма представлена на рис. 2.53. Алгоритм вычисления спектрограмм содержит три характерных шага: 1.
Разбивка х на перекрывающиеся блоки. на каждый из которых накладывается окно. 2. Выполнение пШ-точечного БПФ для соответствующего отрезка времени, что создает соответствующий столбец матрицы В, после чего окно перемещается на число точек, равное (1епгзЬЬ (ийпс)сн! — Ьцтонег1ар). Если число точек БПФ превышает количество отсчетов в окне, то перед выполнением БПФ блок дополняется нулями. 177 2. 15. Средства визуализации снектра сигналов Рве.
2.53. Спактрограмма звуковых колебаний 3. При вещественных компонентах х спектрограл~ма строится для положительных частот и матрица В содержит при пй) четном пЩ2+ 1 строк, а при пй1 нечетном (пй+ 1)/2 строк и к = езх ( (и-ссвочех1ар) / (1епуги (ихсс)оы)- лсвочес1ар)) столбцов. При ошибках в построении спектрограммы выдаются следующие сообщения: ° Ке()шгеа чч(пг)отч'а 1епай (о Ье по ягеа(ег йап йе ГЕТ 1епай — число точек не должно превышать числа точек БПФ; ° Ке()ц(геа ХОЧЕК$.АР (о Ье а(пспу 1еаа йап йе чч(прозу 1епай — параметр по- чег1ар должен быть меньше числа точек БПФ; ° Кес(шгеа ромбче )п(еаег ча1цеа )ог )х(ГРТ ап() )х(ОЧЕК( АР— параметры пй и почег1ар должны иметь целые положительные значения'„ ° Кег)ц(гж чес(ог )прц( — входной параметр должен быть вектором.
Подобные спектрограммы широко применяются в электроакустике, поскольку позволяют создавать красочный графический образ звуковых колебаний в котором опытный взгляд может подметить множество особенностей анализируемых звуков. Как шутку, в которой много правды, приведем в заключении спектрограмму колебания из файла чсоа)а (рис. 2.54), входящего в набор демонстрационных файлов системы МАТ1 АВ. и построенную с помощью команд: 1оас) чсоазо аресохае(чсоаао,(),га) Г78 Глава 2. Создание и обработка сигналов Рис. 2.54.
Спсхтрограмма сигнала хсоа)а Внимание. В последнее время помимо Фурье-спектрограмм сигналов стали использоваться вейвлет-спектрограммы, которые имеют ряд преимуи(еств при анализе тонких особенностей сигналов. Техника веивлет-преобразования сигналов и ее инс(прумеип~альные средства (включая вейвлет-спеюпрограммы) рассматривается в главах 5 и 6 данной книги. 2.15.4 Применение функции дискретного Фурье-преобразования — ооегт*е1 Функция у = ооехаае1 (х, 1) для вектора х возвращает результат его дискретного Фурье-преобразования, используя одноименный с ней алгоритм второго порядка (соепае1). если х матрица, то преобразование выполняется для каждого столбца.
Вектор должен содержать целые числа от 1 до )х), где )х) значение первого размера для матрицы х, который больше 1. Функция у = ооехаае1(х, 1,с(ьв) делает тоже в направлении бйш х. Ниже дан пример задания синусоиды, построения ее периодограммы и вывода результатов дискретного преобразования Фурье (рис. 2.55): Га = 1024; та = 1/Га) Г 8( Б = 1024( — та*(0:и-1) ( х = ахо(2*р1*с*С)(ехоохег аоортох(З,1,1); ртох(х,х)) 2. 15.