Поиск:

Ответ в темуСоздание новой темы Создание опроса
> МАТЛАБ и многомаштабное вейвлет-преобразование, алгоритм используемый разработчиками 
:(
    Опции темы
psix
Дата 20.6.2005, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



Знает кто или направит в нужную бумажную или электронную страницу по поводу как работает (изнутри) алгоритм расчета многоуровненого (многомаштабного) вейвлет преобразования конечного сигнала в Матлабе?
Дело вот в чем.
Как известно smile вести расчеты многомаштабного вейвлет-анализа можно в матричном виде (итерационное умножение соответствующих матриц...) или с помощью представления в виде фильтров (свертка фильтров разложения с сигналом...).
Расчеты в матричной форме не йдут с теми что предоставляет матлаб в стадартных функциях.
Беру вот так:
считываю звуковой файл в переменную s длиной N=2^m;
извлекаю параметры НЧ- и ВЧ-фильтров:
[h,g]=wfilters('db4','d');
и произвожу декомпозицию:
[dec,struct]=wavedec(s,m,h,g);
а там далее уже и коэффициенты детализации и аппроксимации.
И вот интересно, что в векторе struct количество коэффициентов детализации на каждом последующем уровне не уменьшается в двое (как по алгортиму Малла), а по форуле floor((length(s)-1)/2)+K. где K - порядок вейвлета, в моём случае получается, значит K=4.
Так вот, отчего же именно так? Неподскажите как работает этот алгоритм (встроенных функций) на кончах сигнала (обрезает фильтр, циклически продолжает, или модифицирует самостоятельно)? Как говорится, интересно знать вглубь об том что напрограммили разработчики и каких теорий при этом придерживались smile




PM   Вверх
podval
Дата 21.6.2005, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



А PDF-файлы, прилагаемые к Матлабу, разве не содержат этой информации?
PM WWW ICQ   Вверх
psix
Дата 22.6.2005, 01:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



видимо они либо по счастливой случайности, либо по злому умыслу не достались такие, а может зрение слепотцой отдаёт мое smile



Это сообщение отредактировал(а) psix - 22.6.2005, 01:54
PM   Вверх
podval
Дата 22.6.2005, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



PM WWW ICQ   Вверх
psix
Дата 22.6.2005, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



Цитата(podval @ 22.6.2005, 08:57)
http://matlab.exponenta.ru/wavelet/book1/5/wavedec.php

ув. podval, да-да-да... smile.
Здесь-то и написано, что число отсчетов в коэффициентах аппроксимации и детализации на уровнях многомасштабного вейвлет разложения определяется этой формулой.
Так вот интересует все же, как, впрочем, и ранее: почему именно ОНА? Потому как в литературе используется деление сигнала на каждом уровне разложения на ДВА, а максимальное количество уровней возможных и из них необходимых определяется самим сигналом, ну и приложением (скорее всего).
Так вот если конечный сигнал длины 2^N раскладывать фильтрами Хаара (тоже что и db1) где два ненулевых момента каждого фильтра, то сигнал полностью "вмещается" в фильтры и в конечном итоге, на последнем уровне остается один отсчет. Это только в данном случае, а если брать например фильтр db4, который имеет уже 8 ненулевых моментов... тогда такой красоты не получается.... Посему, опять же, интересно, как ведут себя стандартные функции в МАТЛАБЕ на границах сигнала: обрезают ли фильтр, модифицируют ли фильтр на концах сигнала, циклически продолжают ли фильтр... либо сам сигнал продолжают нулями и так далее... в этом духе...
PM   Вверх
podval
Дата 23.6.2005, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Я думаю, что циклическая свертка.
PM WWW ICQ   Вверх
psix
Дата 25.6.2005, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



ув.podval так все таки более развёрнутой информации по этому алгоритму не представляется возможным найти?
Просто хотелось узнать для сравнения со сделанным "ручками" (в матричном виде или фильтрами) или программным путем...
PM   Вверх
podval
Дата 25.6.2005, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Что конкретно сделано в Матлабе точно трудно сказать. А сделанное руками мне встречалось именно циклическое продолжение. Я и сам по-другому не делал.
http://basegroup.ru/download/wavelet_utils.htm
PM WWW ICQ   Вверх
podval
Дата 25.6.2005, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



В принципе домашняя страница этого дела http://www.mathworks.com/access/helpdesk/h...oolbox/wavelet/
(раздел Advanced Concepts -> The Fast Wavelet Transform (FWT) Algorithm) говорит о том же:

The length of each filter is equal to 2N. If n = length (s), the signals F and G are of length n + 2N - 1, and then the coefficients cA1 and cD1 are of length
--Resize_Images_Alt_Text--


PM WWW ICQ   Вверх
psix
Дата 26.6.2005, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.1.2005
Где: Н-ск

Репутация: нет
Всего: нет



да, именно на официальном месте обитания Матлаба и с Exponentы узнал про количество отсчетов на уровне разложения, проверив на практике...
СпасиБо!
Знать следует в программных файлах покопаться матлаба...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.1533 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.