Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

cos-lab3-vorontsov / метода

.pdf
Скачиваний:
49
Добавлен:
11.05.2015
Размер:
1.1 Mб
Скачать

Министерство образования Республики Беларусь Учреждение образования

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра радиотехнических систем

Методические указания

к лабораторной работе

“Преобразование Уолша-Адамара”

по курсу “Цифровая обработка сигналов”

Минск 2010

Цель работы

1.Изучить свойства преобразования Уолша-Адамара.

2.Получить навыки моделирования преобразования Уолша-Адамара в среде Matlab.

1.Теоретические сведения

1.1. Матрицы Адамара и функции Уолша

Определение. Матрицей Адамара называется ортогональная квадратная матрица, элементами которой являются действительные числа 1 и 1.

Простейшей матрицей Адамара является матрица порядка два:

H

1

1

2

.

 

1

1

Для построения матрицы Адамара порядка 2n используется матрица H2 и следующая теорема.

Теорема. Если H2i − матрица Адамара порядка 2i , то

H

 

H

i

H

i

i 1

2

 

2

 

2

 

H2i

H2i

является матрицей Адамара порядка 2i 1. Например, матрицы Адамара H4 и H8 :

 

 

 

 

 

 

1

1

1

1

H

H

 

H

 

 

1

1

1

1

4

2

 

2

 

 

1

1

,

 

H2

H2

1

1

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

1

1

1

1

1

1

1

1

 

 

 

 

 

 

 

1

1

1

1

1

1

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

1

1

1

1

1

1

1

1

H

H

 

H

 

 

1

1

1

1

1

1

1

1

8

4

 

4

 

 

1

1

1

1

1

1

.

 

H4

H4

1

1

 

 

 

 

 

 

 

1

1

1

1

1

1

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

1

1

1

1

1

1

1

1

 

 

 

 

 

 

 

1

1

1

1

1

1

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пронумеруем строки и столбцы матрицы двоичными числами от 0 до N 1, где N 2n − порядок матрицы.

Пусть h hn 1,hn 2...h0 − двоичный номер строки, x xn 1,xn 2...x0 − двоичный номер столбца.

Тогда элемент матрицы Адамара, стоящий на пересечении столбца с номером x и строки с номером h, можно вычислить по следующей формуле:

n 1

hixi

 

 

 

had h;x 1 i 0

,n log2 N .

 

 

(1)

Например, для матрицы H8 получим:

 

 

 

 

 

 

 

 

 

0

0

0

0

1

1

1

1

x2

 

 

 

 

 

0

0

1

1

0

0

1

1

x1

 

 

 

 

 

0

1

0

1

0

1

0

1

x0

 

0

0

0

1

1

1

 

1

1

 

1

1

1

Wal 000,x

0

0

1

1

1

1

1

1

1

1

1

Wal 001,x

0

1

0

 

1

1

1

1

 

1

1

 

Wal 010,x

1

 

1

0

1

1

1

1

1

 

1

1

1

1

1

Wal 011,x

 

 

 

 

 

 

 

 

 

 

 

 

 

Wal 100,x

1

0

0

1

1

1

 

1

1

1

1

1

1

0

1

1

1

1

1

1

 

1

1

1

Wal 101,x

 

 

 

 

 

 

 

 

 

 

 

 

 

Wal 110,x

1

1

0

1

1

1

1

1

1

1

1

1

1

1

 

1

1

 

1

1

 

1

1

 

Wal 111,x

1

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

had 011,101 1 01 10 11 11 1, had 110,111 111 11 01 1 2 1, had 001,100 1 01 00 10 1 0 1.

Строки матриц Адамара можно рассматривать как функции дискретной переменной x, принимающей значения 0,1,2...N 1. Эти функции называются функциями Уолша и обозначаются Wal k,x . Они записаны справа от матрицы. Функции зависят от двух переменных k и x. Переменная k обозначает номер функции, а переменная x − дискретное время. В качестве номера функции берется номер соответствующей строки матрицы Адамара. При этом говорят, что функции упорядочены по Адамару. Важнейшими свойствами функции Уолша являются:

а) ортогональность

 

 

N 1

N, k l,

Wal k,x Wal l,x

k l.

n 0

0,

б) мультипликативность

Wal k,x Wal l,x Wal k l,x , где знак обозначает суммирование по модулю два.

Функции Уолша меандрового типа Wal 000,x , Wal 001,x , Wal 010,x , Wal 100,x называются функциями Радемахера и обозначаются R.

Wal 000,x R0 ,

Wal 010,x R2 ,

Wal 001,x R3 ,

Wal 100,x R1.

Остальные функции Уолша могут быть получены произведением функции Радемахера. Это следует из свойства (6):

Wal 011,x R2

R3 ,

 

Wal 101,x R1 R3 ,

 

Wal 110,x R1

R2,

 

Wal 111,x R1 R2 R3.

 

 

 

 

1.2. Преобразование Уолша-Адамара

 

Введем преобразование Уолша-Адамара. Пусть сигнал S t

представлен

 

совокупностью

своих равностоящих отсчетов

S x ,

x 0,1,2,3...N 1.

 

 

 

 

Выражения

 

 

 

 

 

 

 

n 1

 

 

 

 

N 1

hixi

 

 

B h S x 1 i 0

,

h 0,1,2...N 1;

(2)

 

x 0

 

 

 

 

 

 

 

 

n 1

 

 

 

1

N 1

 

hixi

 

 

S x

B h 1 i 0

, x 0,1,2...N 1

(3)

 

 

N h 0

 

 

 

 

образуют пару дискретных преобразований Уолша-Адамара в показательной форме, где B h − коэффициент прямого преобразования Уолша-Адамара.

Используя матрицу Адамара, запишем преобразование в матричной форме:

B HS,

(4)

S

1

HB,

(5)

 

 

N

 

где B B 0 ,B 1...B N 1 − вектор коэффициентов преобразования УолшаАдамара, S S 0 ,S 1...S N 1 − вектор отсчетов входного сигнала, H − матрица Адамара порядка N .

1.3. Диадный сдвиг, диадная свертка и корреляция

Рассмотрим функцию S x дискретной переменной x, принимающей

значение в интервале 0,1,2...N 1. Функция S x

называется диадным

сдвигом функции S x . Сущность диадного

сдвига заключается

в

перестановке

отсчетов исходной функции. В

частности, на

место

x

становится отсчет форм x .

 

 

 

 

 

 

0 . Осуществим диадный сдвиг ,

Пример:

S x 0

0 1 1 1 1

 

0

т.е. получим

S x

при

4,

 

 

− величина диадного сдвига.

Пронумеруем

все

выборки

исходного

 

сигнала

двоичными

числами

0,1,2...N 1:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0

 

x1

x2

x3

x4

 

x5

x6

x7

 

 

 

 

0

0

 

0

 

0

 

1

1

 

1

 

 

1

 

 

 

 

 

0

0

 

1

 

1

 

0

0

 

1

 

 

1

 

 

4 100

 

 

 

0

 

1

 

0

 

1

 

0

 

1

 

0

 

 

1

 

 

двоичное

 

 

 

 

 

 

 

 

 

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

 

 

S x 0 0

0 0

0 0 0

0

 

 

 

 

 

 

 

 

Произведем диадный сдвиг выборок сигнала:

x0 000 100 100 x4 x1 001 100 101 x5 x2 010 100 110 x6 x3 011 100 111 x7 x4 100 100 000 x0 x5 101 100 001 x1 x6 110 100 010 x2 x7 111 100 011 x3

Это эквивалентно следующей перестановке отсчетов сигнала:

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

 

1

N 1

 

Z n R n

X n Y m n .

(6)

 

 

N n 0

 

Можно доказать, что

1.Спектр функции S x инвариантен относительно диадного сдвига аргумента.

2. Свертка временных последовательностей равна преобразованию Уолша-Адамара от произведения спектров сворачиваемых последовательностей (теорема о свертке). Отсюда следует, что корреляционная функция может быть вычислена при помощи двойного преобразования Уолша-Адамара:

R n

1

H B

 

B

;

B

 

HX ;

B HY ,

 

X

X

 

N

Y

 

 

 

Y

 

 

 

 

 

 

 

 

X и Y − сворачиваемые последовательности,

BX − спектр последовательности X ,

BY − спектр последовательности Y .

1.4. Быстрое преобразование Адамара

Вычисления по формулам (2), (3) требует N N 1 операций. Существуют быстрые алгоритмы, которые требуют только Nlog2 N операций. Их сущность заключается в разбиении матрицы Адамара в произведение слабозаполненных матриц: для N 8 эти матрицы равны

H C1C2C3 , где

 

1

1 0

0 0

0 0

0

 

 

1 0

1

0 0 0

0

0

 

1

1 0

0 0

0 0

0

 

 

0 1

0

1 0 0

0

0

 

 

0 1

1 0

0 0

 

 

 

 

 

 

1

0 0 0

0

 

 

 

0

0

 

 

1 0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C 0

0 1

1 0

0 0

0

C

2

0 1

0

1 0 0

0

0

1

 

0

0

0

1

1

0

0

 

 

 

0

0

0

1

0

1

0

 

 

0

 

 

 

0

 

 

 

0 0

0 1

1 0

 

 

 

 

 

0

0 0 1

0

 

 

0

0

 

 

0 0

1

 

0

0 0

0 0

0 1

1

 

 

0 0

0

0 1 0 1

0

 

 

0 0

0 0

0 1

 

 

 

 

 

 

0

0 0 1

 

 

 

 

0

1

 

 

0 0

0 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

0

 

0

 

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

1

0

 

0

 

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

0

 

 

 

 

 

 

 

 

 

 

 

0

0

1

 

0

 

0

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C 0 0 0 1

 

0

0

0

1

 

 

 

 

 

 

 

 

 

 

3

1 0 0 0

 

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

0 1 0 0

 

0

 

 

 

 

 

 

 

 

 

 

 

0 0 1 0

 

0

0 1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

0 0 0 1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Процесс умножения на матрицу Адамара заключается в последовательном умножении на матрицы C. Этот процесс можно изобразить в виде графа:

x 0 x 1 x1 0

x 0 x 1 x1 1

Этот же граф используется для вычисления обратного быстрого преобразования Адамара (ОБПА). Исключаются только коэффициенты 18. Изменив порядок следования разряженных матриц получим следующий граф для вычисления БПА:

1.5. Энергетический спектр сигнала в базисе функций Уолша

Упорядочение функций по Уолшу wal k, , k 0,1...N 1; 0 N 1

имеет определенный физический смысл. На рис. 1 изображены восемь функций Уолша и пунктирными линиями показаны для сравнения тригонометрические функции базиса Фурье.

В связи со сходством между функциями, упорядоченными по Уолшу и тригонометрическими функциями для первых из них иногда применяют обозначения sal l, и cal l, , называя их соответственно синусной и косинусной функциями Уолша. Значения l отражают величину так называемой частости, которая определяется по количеству пересечения с линией нулевого уровня в заданном интервале значений . Если не имеется пересечений, то считается, что 0. При четном числе w пересечений принимается w2, при нечетном принимается w 1 2. Отсюда следует, что коэффициенты спектра в базисе функций, упорядоченных по Уолшу, несут информацию о различных частостях обрабатываемого сигнала.

N 1

 

 

XW k x n wal k,n ,

k 0...N 1,

(7)

n 0

Рис. 1. Восемь функций Уолша и тригонометрические функции базиса Фурье

Можно определить энергетический спектр по Уолшу PW m как:

P 0 X2

0 ;

P 1 X 2

1 X 2

2 ;

P 2 X 2

3 X2

4 ;

W

W

 

W

W

W

 

W

W

W

 

...

PW m XW2 2m 1 XW2 2m ;

PW N 2 2 XW2 N 3 XW2 N 2 ;

PW N XW2 N 1 .2

Коэффициенты спектра несут информацию об интенсивности пересечения нулевого уровня с определенной частостью.

2. Программное обеспечение

Лабораторная работа выполняется в среде компьютерной математики

Matlab.

3.Предварительное задание

1.Вычислить корреляционную функцию сигнала, используя диадный

сдвиг.

2.Вычислить корреляционную функцию того же сигнала, используя преобразование Уолша-Адамара.

4.Лабораторное задание

1.Построить матрицу Адамара 8-го порядка.

2.Проверить свойства ортогональности и мультипликативности строк матрицы Адамара.

3.Вычислить прямое и обратное преобразования Уолша-Адамара случайного действительного сигнала. Построить графики сигнала и спектра. Определить вычислительные затраты. Сделать выводы.

4.Проверить свойство линейности и инвариантности к диадному сдвигу преобразования Уолша-Адамара. Сделать выводы.

5.Вычислить корреляционную функцию дискретного случайного действительного сигнала с помощью матричного преобразования УолшаАдамара. Построить график корреляционной функции.

6.Вычислить корреляционную функцию с помощью графа быстрого преобразования Уолша-Адамара. Графы необходимо построить в Simulink. Определить вычислительные затраты. Сделать выводы с учетом п.6.

5.Контрольные вопросы

1.Как получить матрицу прямого и обратного преобразования УолшаАдамара N-го порядка.

2.Поясните, что такое базисные функции преобразования УолшаАдамара.

3.Назовите свойства функций Уолша.

4.Что такое диадный сдвиг?

5.Запишите выражения для диадной свёртки и диадной корреляционной функции. Почему эти выражения совпадают?

6.Поясните смысл энергетического спектра в базисе функций Уолша.

Соседние файлы в папке cos-lab3-vorontsov