Re: обработка изображений с помощью вейвлетов
Автор: Филь Андрей, 03 ноября 2003 года в 11:57:07 В ответ на : Re: обработка изображений с помощью вейвлетов от Алексей в 31 октября 2003 года в 16:09:38: Одномерный случай: Берется вектор отсчетов и сворачивается с двумя фильтрами. (Размер вектора M - кратен степени 2) Первый называется фильтром низких частот, второй высоких. Операция свертки-просто скалярное произведение: берешь первые N отсчетов (если длинна фильтра N) и скалярно умножаешь на фильтр, потом берешь отсчеты с 1 по N+1 (Если считать от 0) и опять умножаешь, если на некотором умножении ты выходишь за границы исходного вектора то вместо несуществующих отсчетов юзаешь те что в начале (Т.Е. Замыкаешь вектор в кольцо) В итоге после свертки с одним из фильтров получашь M новых отсчетов: рузультаты скалярных умножений) делаешь также со 2-м фильтром - получаешь еще M Далее берешь только четные (можно нечетные) Получаешь два вектора по M/2 отсчетов, конкатенируешь и получаешь новый вектор из M отсчетов, пишешь его в исходный, далее по той же схеме обрабатываешь левую половину нового вектора, у той половины опять половину и.т.д. пока левая половина не станет длинны 1. Это и есть результат Вейвлет преобразования. Обратное преобразование аналогично, только движешься наоборот - левую половину сворачиваешь первым фильтром, правую 2, потом суммируешь. Но перед сверткой необходимо повставлять 0 через отсчет. Полученный вектор пишешь на часть старого, и.т.д. пока не получишь исходный. Фильтры в обратном преобразовании уже другие. Двумерный случай: Вначале по строкам, потом по столбцам. Вот тебе кстати немного фильтров первые 2 для декомпозиции вторые для реставрации. db4
|
Ответы:
Ответить на это сообщение