Применение вейвлет-преобразований

От анализа Фурье к вейвлет-анализу. Некоторые примеры функций вейвлет-анализа в MATLAB. Построение систем полуортогональных сплайновых вейвлет. Применение вейвлет-преобразований для решения интегральных уравнений. Вейвлеты пакета wavelet toolbox.

Рубрика Математика
Вид дипломная работа
Язык русский
Дата добавления 12.04.2014
Размер файла 1,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Рассмотрим для (2.3) метод Бубнова-Галеркина на базе построенных вейвлет-функций степени . Зафиксируем некоторое натуральное , и будем искать решение(2.3) в виде

. (2.4)

Из условий

,

, . (2.5)

Совокупность условий (2.5) представляет собой систему линейных алгебраических уравнений с квадратной матрицей порядка , элементы которой имеют вид

(2.6)

Для классических систем функций в методе Галеркина числа (2.6) оказываются, в основном, ненулевыми и недостаточно малыми, чтобы ими можно было пренебречь и рассматривать СЛАУ (2.5) как разреженную. В случае вейвлет большинство элементов матрицы СЛАУ малы по абсолютной величине.

Теорема 2.1. Найдется такая константа , не зависящая от , что при справедливы оценки

(2.7)

а при

(2.8)

Точно такие же оценки справедливы при замене на или на .

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

Но ортогональна , поэтому

(2.9)

Отсюда

и оценка (2.7) установлена. Оценка (2.8) устанавливается аналогично. Теорема доказана.

Из теоремы следует, что матрица системы (2.5) является псевдоразреженной, т.е. в ней очень много малых по модулю элементов. Учитывая, что СЛАУ для интегральных уравнений Фредгольма второго рода хорошо обусловлены, пренебрегая этими малыми элементами, получим хорошую разреженную аппроксимацию этой матрицы, для которой можно применять алгоритмы для разреженных систем (2.4).

2.4. Тестовый пример

Рассмотрим решение интегральных уравнений (2.3) с помощью метода Галеркина, где

Точное решение этой задачи имеет вид . Матрица СЛАУ (2.5) заменялась разреженной аппроксимацией , элементы определяются формулами

и решалась СЛАУ с матрицей . Результаты счета сведены в три таблицы для вейвлет первой, второй и третьей степени соответственно. В каждой из клеток таблиц 2.1-2.3 содержатся два числа, первое из которых - отношение числа ненулевых элементов матрицы к числу всех элементов матрицы, характеризует разреженность матрицы, а второе -- погрешность приближенного решения в максимум-норме, характеризует близость матриц и . В каждой таблице по вертикали указана величина барьера , а по горизонтали-- число узлов самого мелкого разбиения отрезка .

Таблица 2.1

64

128

256

0.1

0.11;0.22

0.03;0.16

0.01;0.08

0.01

0.16;0.03

0.09;0.05

0.03;0.03

0.001

0.18;0.025

0.10;0.03

0.05;0.03

0.0001

0.22;0.006

0.12;0.009

0.07;0.006

0.00001

0.32;0.001

0.17;0.0018

0.09;0.0001

Таблица 2.2

64

128

256

0.1

0.17;1.0

0.10;1.0

0.05;1.0

0.01

0.21;0.021

0.13;0.002

0.02;0.02

0.001

0.27;0.0002

0.16;0.0003

0.09;0.005

0.0001

0.35;0.0002

0.19;0.0001

0.10;0.0003

0.00001

0.43;0.0002

0.26;0.0001

0.13;0.00001

Таблица 2.3

64

128

256

0.1

0.16;1.0

0.13;1.0

0.09;1.0

0.01

0.22;1.0

0.15;1.0

0.10;1.0

0.001

0.29;1.0

0.17;1.0

0.11;1.0

0.0001

0.32;0.000001

0.19;0.00001

0.12;0.000001

0.00001

0.36;0.0000001

0.22;0.000001

0.13;0.0000001

3. Вейвлеты в системе MATLAB

3.1 Вейвлеты пакета wavelet toolbox

В пакете wavelet toolbox принята классификация вейвлетов - по виду образующей функции и по фамилии ученого, предложившего вейвлет. Ниже приводится список семейств вейвлетов пакета и их краткие базовые имена при использовании в командах и аргументах функций.

- 'haar' - Хаара.

- 'db' - Добеши.

- 'sym' - Симлета.

- 'coif' - Коифлетса.

- 'bior' - биортогональный.

- 'rbio' - обратный биортогональный.

- 'meyr' - Мейера.

- 'dmey' - дискретный Мейера.

- 'gaus' - Гаусса.

- 'mexh' - мексиканская шляпа.

- 'morl' - Морлета.

- 'cgau' - комплексный Гаусса.

- 'shan' - Шеннона.

- 'fbsp' - частотный В-сплайновый.

- 'cmor' - комплексный Морлета.

Семейства вейвлетов, как правило, имеет несколько типов (размера/порядка), которые указываются добавлением к базовому имени определенного числа (чисел), например:db1, 'gaus3', 'bior2.6', 'fbsp2-1-0.5'. Команды вызова информации по вейвлетам:

- >> wavemngr('read') - названия и краткие базовые имена,

- >> wavemngr('read',1) - полный перечень всех семейств и их состава,

- >> waveinfo('семейство') - полная информация о вейвлетах семейства.

Пример - waveinfo('gaus').

Команда (функция) wavemngr позволяет добавлять (с параметром 'add'), удалять, сохранять и считывать новые (собственные) вейвлеты. Форматы команды:

- >> wavemngr(['add',]FN,FSN,WT,NUMS,FILE[,B]),

- >> wavemngr(['add',]FN,FSN,WT,{NUMS,TYPNUMS},FILE[,B]),

где FN - название семейства, FSN - короткое имя семейства, WT - тип вейвлета, NUMS - список параметров вейвлета (разделяются пробелами, конечный с двумя звездочками **), TYPNUMS - формат входного значения ('integer', 'real' или 'string'), FILE - имя mat или m-файла, B - вектор нижней и верхней границы эффективной поддержки вейвлетов (квадратные скобки в перечнях параметров команд указывают на возможность отсутствия или на необязательность данных параметров). Значения параметра WT могут быть следующие: WT=1 для ортогонального вейвлета, WT=2 для биортогонального, WT=3 для вейвлета с масштабирующей функцией, WT-4 без масштабирующей функции, WT=5 для комплексного вейвлета без масштабирующей функции. После добавления семейства в пакет он включается в список информационных команд.

Пример задания функции

wavemngr('add','Mainwave','mnw',1,'1 2 3','mainw1')

Вейвлетная функция wavefun возвращает значения детализирующей psi-функции и связанной с ней масштабирующей phi-функции (функции аппроксимации), если последняя существует. Полный формат (для биортогональных вейвлетов) на сетке :

[Phi1,Psi1,Phi2,Psi2,X]=wavefun('wname',ITER).

Количество точек сетки равно 2ITER. Phi1,Psi1 - векторы функций и разложения (декомпозиции) сигналов (в однострочных массивах), Phi2,Psi2 - векторы функций и восстановления (реконструкции) сигналов. Для ортогональных вейвлетов выходные массивы Phi2 и Psi2 не задаются. Для вейвлетов без масштабирующих функций не задается также массив Phi1. Если массив Х значений оси 'х' не нужен, он также может не задаваться. При расчетах аналитически задаваемых вейвлетов (типа 'gaus') параметр ITER определяет размер сетки и, соответственно, интервал дискретизации вейвлета с учетом конечности его задания.

Пример просмотра процесса итерации вейвлета 'sym2'

iter=10; wav='db2';

for i=1: iter

[phi,psi,x]=wavefun(wav,i); plot(x,psi); hold on

end; hold off

Рис. 3.1

Примечание: Текст программы можно копировать и подставлять непосредствен но в командную строку MATLAB после знака ввода '>>'.

Средняя частота вейвлета определяет положение максимума пика его Фурье-образа на оси частот (в герцах). Формат функции:

- Q=centfrq('wname'[,ITER]),

где ITER - количество итераций, если вейвлет 'wname' не задан аналитической функцией и вычисляется методом итераций.

Пример определения средней частоты и построения сравнительных графиков вейвлета db2 и гармоники с частотой, равной средней частоте вейвлета, приведен на рис. 3.2.

>> f=centfrq('db2',16,'plot'); grid

F=0.6667

Рис. 3.2.

3.2 Различные примеры функций вейвлет-анализа в MATLAB.

Функция intwave - первообразная вейвлет-функции .

Вычисляет первообразную функции как интеграл функции вейвлета `wname' от до переменной точки .

[integ,X]=intwave(`wname',N),

[integ,X]=intwave(`wname').

Значения параметров:

- количество итераций(по умолчанию );

- массив значений переменной . Он состоит из точек, равномерно расположенных на носителе вейвлета с шагом . Если носитель имеет длину , то длина массива равна точка сетки , т.е. концевые точки носителя включаются; integ - значения первообразной функции в точках . Функция аппроксимируется на точках сетки . Выходной массив integ является действительным или комплексным в зависимости от типа вейвлета.

Для биортогональных вейвлетов функция [intdec,x,intrec]=

=intwave(`wname',N) вычисляет интегралы intdec и intrec вейвлет-функций разложения и восстановления . Выражение [integ,X]=intwave(`wname') эквивалентно [integ,X]= intwave(`wname',8).

Пример 1. Для нахождения первообразной вейвлет-функции Добеши запускаем программу MATLAB. После чего перед нами появляется главное меню программы MATLAB, показанный на рис. 3.3.

Рис. 3.3. Главное меню программы MATLAB

Далее в командной строке вводим следующий алгоритм для нахождения первообразной данной вейвлет-функции:

[phi,psi,xval]=wavefun('db4',7);

subplot(211);plot(xval,psi);title('Wavelet');

[integ,xval]=intwave('db4',7);

subplot(212);plot(xval,integ);

title(['Wavelet integrals over [-Inf x] for each value of xval']);

После того как ввод алгоритма закончен, нажимая на клавишу Enter мы вызываем графическое решение примера. Появляться окно с двумя графиками, показанные на рис. 3.4. Первый график - это график самой вейвлет-функции Добеши, а второй - график первообразной этой функции.

Рис. 3.4. График вейвлет-функции Добеши и его первообразной.

Одноуровневое дискретное одномерное вейвлет-преобразование dwt.

В одноуровневом дискретном одномерном вейвлет-преобразовании используются следующие функции:

· dwt - одноуровневое дискретное одномерное вейвлет-преобразование;

· idwt - обратное одноуровневое дискретное одномерное вейвлет-преобразование;

· dwtmode - мода расширения дискретного вейвлет-преобразования.

Дискретное вейвлет-преобразование. функция вычисляет аппроксимирующие коэффициенты cA и детализирующие коэффициенты cD первого уровня вейвлет-преобразования сигнала, заданного вектором . Коэффициенты получаются сверткой сигнала с фильтром разложения нижних частот Lo_D для аппроксимации с фильтром разложения нижних частот Hi_D для детализации, а затем сопровождаются двоичной децимацией.

Команда dwt употребляются в следующих формах:

[cA,cD]=dwt(s,'wname'),[cA,cD]=dwt(s,'wname','mode',MODE),

Функция [cA,cD]=dwt(s,'wname') вычисляет аппроксимирующие коэффициенты cA и детализирующие коэффициенты cD вектора s. Строка wname - имя вейвлета, для которого возможны быстрые алгоритмы. Это - haar, db, sym, coif, bior, rbio, dmey. Функия [cA,cD]=dwt(s,Lo_D,Hi_D) находит вейвлет разложение, как выше, используя вместо имени вейвлета его низкочастотный фильтр разложения Lo_D и высокочастотный фильтр разложения Hi_D.

Параметр MODE определяет метод расширения данных для вейвлет-разложения. Например, [cA,cD]=dwt(s,'db2','mode''sym').

Пример 2. Зададим сигнал . Найдем его разложение, используя вейвлет Хаара, затем - Добеши .

n=1:20;s=sin(0.5*n);

[cal,cd1]=dwt(s,'haar');

subplot(311);plot(s);title('Original signal');

subplot(323);plot(cal);title('Approx. coef. for haar');

subplot(324);plot(cd1);title('Detail coef. for haar');

[ca2,cd2]=dwt(s,'db4');

subplot(325);plot(ca2);title('Approx. coef. for db2');

subplot(326);plot(cd2);title('Detail coef. for db2');

Ниже на рис. 3.5 приведено графическое решение.

Рис. 3.5 Разложение данного сигнала используя вейвлеты Хаара и Добеши

Непрерывное вейвлет-преобразование cwt.

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

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

.

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

Основное отличие команды cwt от дискретного многоуровневого вейвлет-преобразования wavedec заключается в том, что в cwt можно брать любые значения масштабного коэффициента , тогда как в wavedec используются степени двойки.

Для команды cwt предусмотрена возможность графического изображения вейвлет-коэффициентов сигнала , называемое вейвлет-спектрограммой сигнала.

Синтаксис cwt:

COEFS=cwt(s,SCALES,'wname').

COEFS=cwt(s,SCALES,'wname','plot'),

COEFS=cwt(s,SCAKES,'wname',PLOIMODE),

COEFS=cwt(s,SCALES,'wname',PLOTMODE,XLIM).

Функция COEFS=cwt(s,SCALES,ЎЇwnameЎЇ) вычисляет вейвлет-коэффициенты вектора , когда принимает положительные значения из вектора SCALES, используя вейвлет 'wname'. Сигнал вещественный, вейвлет может быть вещественным или комплексным.

Для каждого значения масштабного коэффициента в пределах вектора SCALES вейвлет-коэффициенты вычисляются для и и сохраняются в виде вектора-строки COEFS(i,:), соответствующей -му значению параметра a=SCALES(i).

Результат COEFS является на матрицей, где является длиной вектора SCALES, . Результат COEFS является вещественной или комплексной матрицей в зависимости от типа вейвлета.

Функция COEFS=cwt(s,SCALES,'wname','plot') вычисляет и создает вейвлет-спектрограмму сигнала .

Функция COEFS=cwt(s,SCAKES,'wname',PLOIMODE) вычисляет и создает вейвлет-спектрограмму сигнала . Результат COEFS является на матрицей, она изображается на плоскости в виде матрицы, состоящей из ячеек в количестве - по вертикали и - по горизонтали. Каждая ячейка содержит элемент матрицы коэффициентов и окрашивается в соответствии со значением своего коэффициента. Способ окраски определятся параметром PLOIMODE, значения которого приведены ниже в таблице 3.1.

Таблица 3.1

PLOTMODE

Описание

«lvl»

Окраска меняется от масштаба к масштабу

«glb»

Окраска, сделанная, с учетом всех масштабов

«abslvl» или «lvlabs»

То же, что и «lvl», но с использованием абсолютных значений коэффициентов

«absglb» или «glbabs»

То же, что и «glb», но с использованием абсолютных значений коэффициентов

По умолчанию принят вариант окраски absglb, т.е.

COEFS=cwt(…,'plot') эквивалентно COEFS=cwt(…,'absglb').

Функция COEFS=cwt(s,SCALES,'wname',PLOTMODE,XLIM) вычисляет и создает вейвлет-спектрограмму сигнала с указанием пределов изображения XLIM=[x1 x2] по горизонтали, .

Пример 3. Варианты написания команды.

t=linspace(-1,1,512);s=1-abs(t);

c=cwt(s,1:32,'cgau4');

c=cwt(s,[64 32 16:-2:2 1.5],'morl');

c=cwt(s,1:64,'sym4','abslvl',[100 400]);

Результаты показаны на рис. 3.6.

Рис. 3.6 Вейвлет коэффициенты одномерного сигнала

Функции в MATLAB для удаления шума.

Функция wden автоматическое удаление шума(1-D).

Функция wden автоматически удаляет шум одномерного сигнала , используя вейвлеты. Применяются в виде:

[XD,CXD,LXD]=wden(X,TPTR,SOHR,SCAL,N,'wname'),

[XD,CXD,LXD]=wden(C,TPTR,SOHR,SCAL,N,'wname').

Первая версия функции вычисляет очищенную от шума версию XD выходного сигнала , используя пороговую обработку вейвлет-коэффициентов. Дополнительно находит вейвлет-коэффицинеты [CXD,LXD] разложения очищенного сигнала XD.

Исходные параметры:

· - сигнал;

· TPTR - строка, определяющая выбор порога:

- `rigrsure' - адаптивный выбор порога, используя принцип Штейна и несмещенной оценки риска (SURE);

– `heursure' - эвристический вариант первого выбора;

– `qtwolog' - универсальный порог sqrt(2*log(length(X)));

– `minimaxi' - мини-максный порог;

* SOHR='s' или `h' - выбор мягкого или жесткого;

* SCAL - строка, которая определяет мультипликативное пороговое перемасштабирование. Если шум вне пределов или не белый, то порог должен быть перемасштабирован с использованием оценки уровня шума. Возможны следующие варианты:

- `one' - без перемасштабирования, когда используется базовый метод;

- `sln' - для перемасштабирования порога с использованием оценки уровня шума на базе коэффициентов первого уровня;

- `mln' - для перемасштабирования порога с использованием оценки уровня шума, зависящей от уровня разложения;

* N - уровень вейвлет-разложения и 'wname' - имя ортогонального вейвлета.

Во втором случае функция wden производит тоже самое, но использует уже полученное вейвлет-разложение [C,L] исходного сигнала до уровня N и ортогональный вейвлет ЎЇwnameЎЇ.

Пример 4. Создаем зашумленный сигнал функцией wnoise. Для удаления шума используем мягкий эвристический метод SURE. Разложение берем до уровня 5 по вейвлету sym8.

snr=3;init=2055615866;

[xref,x]=wnoise(3,11,snr,init);

xd=wden(x,'heursure','s','one',5,'sym8');

subplot(311),plot(xref),axis([1 2048 -10 10]);title('original signal');

subplot(312),plot(x),axis([1 2048 -10 10]);title('Noisy signal');

subplot(313),plot(xd),axis([1 2048 -10 10]);title('De-noised signal - heuristic SURE')

Результат показан на рис. 3.7.

Рис. 3.7. График данного сигнала, зашумленного и обесшумленного соответственно.

Функция wdencmp - удаление шума и сжатие при помощи вейвлетов(1-D,2-D).

[XC,CXC,LXC,PRO,PRL2]=

wdencmp(`gbl',X,'wname',N,THR,SORH,KEEPAPP),

[XC,CXC,LXC,PRO,PRL2]=wdencmp(`lvd',X,'wname',N,THR,SORH),

[XC,CXC,LXC,PRO,PRL2]=wdencmp(`lvd',C,L,'wname',N,THR,SORH).

Описание. Случай параметра `gbl'. Функция производит:

· XC - очищенную от шума версию входного сигнала X (1-D или 2-D);

· [CXC,LXC] - структуру вейвлет-разложения сигнала XC;

· PRO - оценку числа обнуленных коэффициентов сигнала X в процентах;

· PRL2 - отношение -норм сжатого и первоначального сигнала в процентах. PRL2=100(norm(CXC)/norm(С))2, где [C,L] - вейвлет-разложение X. Если X - одномерный сигнал и `wname' - ортогональный вейвлет, то PRL2=100.

Функция использует:

· X - сигнал, или изображение;

· `wname' - имя вейвлета и N - уровень вейвлет разложения;

· THR - значение порога;

· SORH='s' или `h' - выбор мягкого или жесткого порогового метода;

· KEEPAPP=1, то коэффициенты аппроксимации не подвергаются пороговой обработке, иначе это возможно.

Функция wdencmp(`gbl',X,'wname',N,THR,SORH,KEEPAPP) выполняет то же самое, используя вейвлет-разложение [C,L] исходного сигнала до уровня N.

В одномерном случае и опции `lvd'. Функция выполняет то же самое, но используя зависимые от уровня пороги, указанные в векторе THR (THR должен иметь длину N). Кроме того, коэффициенты аппроксимации сохраняются.

Для двумерного случая и опции `lvd'. В этом случае THR должен быть матрицей , содержащей зависимые от уровня пороги в трех направлениях: по горизонтали, по диагонали и по вертикали.

Отметим, что сравнительно с wden (автоматическое удаление шума), wdencmp дает больше возможностей и можно осуществить свою стратегию удаления шума. Пример 5. Загружаем изображение девушки. Делаем вейвлет-разложение при . Используем wdencmp для компрессии изображения.

load woman; x=X(100:200,100:200);

nbc=size(map,1);n=5;w='sym2';

[c,l]=wavedec2(x,n,w);thr=20;

[xd,cxd,lxd,perf0,perfl2]=wdencmp('gbl',c,l,w,n,thr,'h',1);

colormap(pink(nbc));

subplot(221),image(wcodemat(x,nbc)),title('Original image');

subplot(222),image(wcodemat(xd,nbc)),title('De-noised image');

xlab1=['2-norm rec.: ',num2str(perfl2)];

xlab2=['% - zero cfs: ',num2str(perf0),'%'];

xlabel([xlab1 xlab2]);

Оригинальное изображение и изображение после удаления шума показано на рис. 3.8.

Рис. 3.8 Данное изображение (слева) и изображение после удаления шума(справа)

Слияние двух изображений

Функция wfusimg - слияние двух изображений. Синтаксис:

XFUS=wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMEH)

[XFUS,TXFUS,TX1,TX2]=

wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH)

wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH,FLAGPLO

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

XFUS=wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH)

возвращает изображение XFUS, полученное слиянием двух оригинальных изображений X1 и X2. Каждый метод слияния, заданный параметрами AFUSMETH и DFUSMETH, определенным способом объединяет коэффициенты разложений X1 и X2 на уровне LEVEL и использует вейвлет WNAME.

Матрицы X1 и X2 должны иметь один и тот же размер и должны быть связаны с изображениями общей цветовой картой colormap. Параметры

AFUSMETH и DFUSMETH определяет метод слияния для приближений и деталей соответственно. Функция

[XFUS,TXFUS,TX1,TX2]=

wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH)

возвращает, в дополнение к матрице XFUS, три объекта класса WDECTREE, ассоциированные с XFUS,X1 и X2 соответственно. Функция

wfusimg(X1,X2,WNAME,LEVEL,AFUSMETH,DFUSMETH,FLAGPLOT)

строит также графики объектов TXFUS,TX1 и TX2.

Fusmeth обозначает AFUSMETH или DFUSMETH. Доступные методы слияния:

· простой - может быть `max','min','mean','img1','img2' или `rand', когда слияние коэффициентов аппроксимаций и деталей, полученных из X1 и X2 , делается выбором максимального, минимального, среднего из соответствующих элементов двух изображений, элемента первого изображения, элемента второго изображения, или случайным выбором элемента;

· зависящий от параметра - в следующей форме:

Fusmeth=struct(`name',nameMETH,'param',paramMETH),

где nameMETH может быть:

– `linear';

– `UD _fusion' - слияние сверху вниз;

– `DU_fusion' - слияние снизу вверх;

– `RL_fusion' - слияние справа налево;

– `UserDEF' - пользовательское слияние.

Пример 6. Восстановленное изображение из двух нечетких изображений. Загружаем две оригинальные нечеткие фотографии. Файлы cathe 1_mat и cathe_2.mat находятся в каталоге C:\ProgramFiles\MATLAB\R2006a\toolbox\wavelet

\wavedemo. Выполняю слияние уровня 5, используя sym4, выбором максимумов абсолютных значений коэффициентов и аппроксимации, и детализации.

load cathe_1;X1=X;

load cathe_2;X2=X;

XFUS=wfusimg(X1,X2,'sym4',5,'max','max');

colormap(map);

subplot(221),image(X1),axis square,title('Catherine 1');

subplot(222),image(X2), axis square,title('Catherine 2');

subplot(223),image(XFUS),axis square,title('Synthesized image');

Рис. 3.9 Восстановленное четкое изображение из двух не четких

Заключение

В данной дипломной работе я рассмотрел основы теории вейвлетов. Детально изучил различные виды вейвлет-преобразований (вейвлеты Хаара, Мейера, Добеши, непрерывные вейвлет-преобразования в одномерном случае, многомерные обобщения непрерывного вейвлет-преобразования), рассмотрел примеры двумерных вейвлетов, построение систем полуортогональных сплайновых вейвлет. Применил вейвлет-преобразования для решения интегральных уравнений. Рассмотрел приближенное решение задач для уравнений типа свертки и метод Бубнова-Галеркина. Изучил особенности системы MATLAB для исследования вейвлет-преобразований. С помощью системы MATLAB получил графическое представление поведения различных вейвлет-преобразований. Рассмотрел применение вейвлет-преобразований для улучшения качества изображения. Исследовал полученные решения интегральных уравнений с помощью системы MATLAB.

Список использованных источников

1. Астафьева Н.М. Вейвлет-анализ: основы теории и примеры применения. УФН. - 1996. - Т. 166. - № 11.-С. 1145-1170.

2. Астафьева Н. М. Вейвлет-преобразований. Основные свойства и примеры применения. М.: ИКИ РАН. 1994. № 1891. 56 с.

3. В. С. Владимиров, В. В. Жаринов. Уравнения математической физики. М.: Физматлит, 2004.

4. В.И.Воробьев, В.Г. Грибунин "Теория и практика вейвлет-преобразования" Военный университет связи С-Петербург, 1999г. 208с.

5. Добеши И. Десять лекций по вейвлетам. - М.; Ижевск: РХД, 2001.

6. Дремин И. М., Иванов О. В., Нечитайло В. А. Вейвлеты и их использование // Успехи физических наук. 2001. Т.171. C.465-561.

7. Дьяконов В. П., Абраменкова И. В. MATLAB. Обработка сигналов и изображений. Специальный справочник. СПб: Питер, 2002.

8. Захаров В.Г. Вейвлет анализ: теория и приложения. Часть 1. Непрерывное вейвлет-преобразование. - Пермь: ПГУ, 2003. - 100с.

9. Краснов М. Л. Интегральные уравнения: введение в теорию. -- М.: Наука, 1975.

10. Лотоцкий Р.В. Применение преобразования всплесков для сжатия графических изображений. // Проблемы управления и информатики №4, 2000 с. 116-127.

11. Лукьяненко В.А. Некоторые алгоритмы приближенного решения интегральных уравнений типа свертки // Динам.системы. - 1992. Вып.11. - С.124-132.

12. Малоземов В. Н., Певный А. Б., Третьяков А. А. Быстрое вейвлетное преобразование дискретных периодических сигналов и изображений // Проблемы передачи инф. 1998. Т. 34. Вып. 2. С. 77-85.

13. Новиков И.Я., Стечкин С.Б. Основы теории всплесков // Успехи мат.наук - 1998.-53, № 6(324).

14. Смоленцев Н.К. Основы теории вейвлетов. Вейвлеты в MATLAB. - Москва: ДМК Пресс, 2008г. - 448с.

15. Чуи К. Введение в вейвлеты. - М.: Мир, 2001, 412с.

16. Яковлев А. Н. Основы вейвлет-преобразования сигналов. М.: Физматлит, 2003. 176 с.

17. Grossman A, Morlet J, SIAM J Math. Anal. 15 723(1984).

Размещено на Allbest.ur


Подобные документы

  • Плоскость частота-время для анализа и сравнения частотно-временных локализационных свойств различных базисов. Понятие базисных функций. Прямое и обратное преобразование Фурье. Сущность дискретного вейвлет-преобразования и примеры функции вейвлет.

    курсовая работа [486,0 K], добавлен 21.11.2010

  • Идея и возможности вейвлет-преобразования. Свойства вейвлетов: непрерывное прямое и обратное образование. Понятие и оценка преимуществ, сферы применения дискретного вейвлет-преобразования. Поиск изображений по образцу. Многомасштабное редактирование.

    курсовая работа [2,0 M], добавлен 27.04.2011

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

    реферат [1,6 M], добавлен 25.05.2010

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

    курсовая работа [6,4 M], добавлен 13.08.2011

  • Уравнения Фредгольма и их свойства как классический пример интегральных уравнений с постоянными пределами интегрирования, их формы и степени, порядок формирования и решения. Некоторые приложения интегральных уравнений. Общая схема метода квадратур.

    курсовая работа [97,2 K], добавлен 25.11.2011

  • Определение, свойства и примеры функциональных уравнений. Основные методы их решения, доказательство некоторых теорем. Понятие группы функций, применение их при решении функциональных уравнений с несколькими переменными. Класс уравнений типа Коши.

    курсовая работа [86,3 K], добавлен 01.10.2011

  • Параллельные методы решения систем линейных уравнений с ленточными матрицами. Метод "встречной прогонки". Реализация метода циклической редукции. Применение метода Гаусса к системам с пятидиагональной матрицей. Результаты численного эксперимента.

    курсовая работа [661,7 K], добавлен 21.10.2013

  • Аналитические свойства интегральных преобразований. Интеграл Коши на различных кривых. Аналитическая зависимость от параметра. Существование производных всех порядков у аналитической функции. Вывод формулы Коши и формулировка следствий из данной формулы.

    курсовая работа [260,2 K], добавлен 10.04.2011

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

    курсовая работа [231,5 K], добавлен 27.08.2012

  • Общее определение коэффициентов по методу Эйлера-Фурье. Ортогональные системы функций. Интеграл Дирихле, принцип локализации. Случай непериодической функции, произвольного промежутка, четных и нечетных функций. Примеры разложения функций в ряд Фурье.

    курсовая работа [296,3 K], добавлен 12.12.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.