Дьяконов В.П. Matlab 6.5 SP1 7 0 Simulink 5 6 Обработка сигналов и проектирование фильтров 2005 (1245705), страница 91
Текст из файла (страница 91)
Функции Х = 1яея(яХС,Ьо Н,Н1 Н), Х вЂ”.- 1в Ь(яил,яио,во В,ях Н) Х = ьяяс (яих (еле,: ), ЗХО, -о Н, Нх Н) восстанавливают сигнал, используя соответствуюшие фильтры. 505 в.6. ?[(искретние ста(4ионирное вейвлет-нреобризоиание Пример: 1оаа поакЬ1( явс = явг2(Х,З, 'вуп4'); [са,спб,слз,осы) = вхг2(х,з„'яув4')4 аО = гявг2 (явс, ' яув4 '); аОЬкя = кяяг2(са,сиб,себ,сбб,'яуе4')) егг = вах (~пах (аЬя (Х вЂ” аО) ) ) екгЬ1я = вах (вах (аЬя (Х-аОЬ1в) ) ) екк 2.34Б2е-010 екгЬкв = 2.3482е-010 8.8.3. Дискретное стационарное двумерное вайвлвт-првобразованив — в)в(т2 Дискретное прямое стационарное двумерное вейвлет-преобразование реализуется функцией яи12.
Она используется в следующих формах: БИС = вяе2 (Х,Н, 'впаве' ) или [А, Н,у, Р) = явк2 (Х,Н, 'власе') Функция возвращает стационарное вейвлет-разложение сигнала х на уровне н, используя вейвлет 'ипапе '. и должно быть строго положительным целым числом и я1ке (х,1) и в1яе(х, 2) должны быть кратны 2Н. Выходной трехмерный массив [А, н, ч, Р) содержит коэффициенты аппроксимации на уровне ) в матрице А[:,н[), а матрицы н(:,:,к), ч(:,:,к) и Р(:,:,к) содержатдетальные коэффициенты на уровне ) [горизонтальные, вертикальные и диагональные).
Функция БИС = [Н(:,:,1:и) ) У(:,:,1:Н) 4 Р(:,:,1:и); А(;,:,Н)) или БИС = ввк2 (Х, Н,1о Р, Нг Р) или [А,Н,Ч,Р) = яег2(Х,Н,(о Р,Н) Р) возвращает стандартное вейвлет-разложение для входных фильтров разложения— низкочастотного [.о О и высокочастотного Н[ О. Функция яь 12 играет ключевую роль в обработке изображений на основе вейвлет-преобразования.
Ниже приводится пример, иллюстрирующий это. Он состоит из трех частей: ° загрузка изображения из файла [асега и его вывод на просмотр; ° визуализация декомпозиции изображения; ° просмотр коэффициентов декомпозиции до уровня К. Листинг примера с краткими комментариями; 1оаб евсеев) пЬсо1 = якяе(вар,1): соб Х = всобенак(Х,пЬсо1); япьр1ок(221)4 1наче(соб х) а чквпа11хе гье огк01па1 1ваче. 111)е('огкч[па1 1ваче'); со1огвар(вар) (са,сьб,себ, ссЫ) = явк?(Х, 3, 'вув4'); Еок К = 1".3 а 01япа)1ке гье бесовроякк1оп.
соб са = всобевак(са(.",:,К),пЬсо1): соб сво = исос(еп1аг(сьс1(:,:,К),пЬсо1); соб себ = есобевак (себ (:,:, К), пЬсо1); Глава ]э. Применение вейвлетов 506 сос( сен = мсоеевао (сес( (:,:, К), пЬсо1); Нес = (сос( са,сон сЬЙ)сое сс4),соо сен]; япьр1оь (2, 2, ке1 ) 1 звана (нес1) В соегя . ос ьье Несовроя ь1оп ас 1есе1 к. 1О1е(['аит с)ес.э арргок. ', 'апс) оес. соегя (1ея. ,пцв2ясг(К),')'])) со1оявар (вар) спс] Полученное при запуске этого примера изображение представлено на рис.
8.39. ' ае'::, Оэсс эрр э;,еэрре1:,ссе(е'цее21) ' ОО 1О(] 1ОО 1и) ..:. ":"' ' ' ]:.,;э,;)Ю' ф аспсес."'эрревь эсс се), эссен Осе 2) '("";„'. ',' ":: Яма еесс эррееэ.'епа ем, сээи Ореерз) ав] .,1ОО 1ОО серве) )вере .1(О .. ЮО *;ЗЮ * еяо,с ЕОО'': ": 4 1,,11ОО; 2ДЮ;!'' ЗЮ:*,'.Ьир,.' "ВЮ Рис. 8.39. Пример декомпозиции изображения Рис. 8,39 иллюстрирует суть декомпозиции изображений разного уровня.
Наглядность рисунка несколько снижается из-за отсутствия цвета. 8.6.4. Обратное стационарное двумерное дискретное вейвлет-преобразование — (в(р)82 следую)цие Функции обеспечивают обратное сзационарное двумерное дискретное вейалет-преобразование: Х = 1 ямя2 (ЬИС, 'мпаве'), х =. 1ямс2 (А, н, ч, э, 'мпарее ' ) или Х = зямс2 (Л(:,:,епс1),и,т,о, 'мпаве') восстанавливают сип(ал х, основываясь на многоуровневой стационарной струк- туре вейвлет-разложения онС или [л, н,ы, ()] . Функции Х = ьяеп2 (ЗИС, Ьо Н, Н Н) Х = я 12(ХН(4СЬо НН Н) 507 о. 7. Удале((ие (иумов и сжатие сигналов и изображе((ий или Х = 1вхв2(х(:,:,аоо),Н,У,О,ьо В,Н1 Ю восстанавливают сигнал, используя соответствующие фильтры.
В следующем примере выполняется загрузка файла изображения пбагЫ и оценивается погрешность после прямого вн12 и обратного увнс2 двумерных вейвлет-преобразований: 1оао ЬЬагЬ1( вас = вхь2(Х,З, 'вуа4'); (оа,с1н1,сна,соо] = вхв2(Х,З, 'вув4'); аО = гвхе2 (вас, ' вуа4 '); аО = увхо2 [са, сьс), охс, соо, ' вув4 ' ); егв = оах(вах(аьв(Х-аО))) агвЬгв = вах(вах(аьв(Х-аОЬ1в))) егс 2.3482е-010 еггЬзв 2.3482е-010 Малая величина погрешности указывает, что изображение восстанавливается с очень высокой точностью.
8.7. Удаление шумов и сжатие сигналов и изображений 8.7.4. Принципы очистки сигналов и шумов Для удаления и(умов и сжатия сигналов и изображений используется хорошо известный из техники фильтрации прием — удаление высокочастотных составляющих из спектра сигнала. Однако применительно к вейвлетам есть е)це один путь — ограничение уровня детализирующих коэффициентов. Мы уже видели, что кратковременные особенности сигнала (а к ним можно отнести и шумы в виде множества таких особенностей) создают детализирующие коэффициенты с высоким содержанием шумовых компонентов, имеющих большие случайные выбросы значений сигнала. Задав некоторый порог для нх уровня, и срезав по уровню детализирующие коэффициенты, можно уменьшить уровень шумов. Но, пожалуй, самый интересный аспект этой проблемы заключаешься в том, что уровень ограничения можно устанавливать лля каждого коэффициента отдельно, что позволяет строить адаптивные к изменениям сигнала системы очистки сигналов от шума на основе вейвлетов.
8.4.2. Установка параметров по умолчанию — (Ыепспзр Функция (тяп, 80яя, икар)(рр, Саут] = нсааоар(1Н1, тп2, Х) возвращает параметры, используемые по умолчанию, для компрессии и удаления шумов, используя вейаяеты, в том числе пакетные, для входного вектора или матрицы Х. Матрица Х может представлять собой одномерный или двумерный сигнал. Выходные параметры этой функции следующие: ° тнн — пороговое значение; ° вони — установка жесткого порога; ° кккр)(рр — позволяет сохранить коэффициенты аппроксимации; ° снтт (используется только для пакетного вейвлета) — имя энтропии. 508 Глава 8.
Применение вейвлетвв Входной аргумент ТН1 может принимать два значения: ° 'беп' — для удаления шумов; ° ' свр ' — для сжатия (компрессии). Аргумент ТН2 принимает значение 'чо' для простого вейвлета или 'ир' для пакетного вейвлета. Заметим, что для простого вейвлета функция имеет три выходных параметра: [ТНК, ЯОКН, КЕЕРЛРР) = Соепсвр (1Н1, 'еч', Х) .
Для пакетного вейвлета функция использует четыре выходных параметра: [ТНР„ ЯОКН,КЕЕРяРР,СК1Т) = с(оепсвр(1Н1,'хр',Х). Ниже приведены примеры применения данной функции для гауссового шумового сигнала, заданного (в первой строке) генератором случайных чисел: гпгс = 2055415866; гапс(п('Яееи',тпгг); х = гапоп(1,1000) 4 [гьг,яогь,геерарр) = сЫепсвр('оеп', 'чч',х) [ГЛг1,яогЛ1,хеерарр1) = с$с(епсвр('свр','хг',х) [ГЛг, яогЛ, Хеерарр, сггс) = с(сепсвр('с(еп', 'ер', х) глг = 3.8593 4яогЛ = я Хеерарр = 1 гьг1 0.7003 яогЛ1 л Хеерарр1 1 глг = 4,2911 яогЛ 4 Л Хеерарр = сггг = япге 8.7.3.
Выбор порога для удаления шумов — Т[зве[ест Функция тня = гляе1есг (х, тртк) возвращает пороговое значение лля вектора Х, используя правило выбора, опреде- ленное строкой ТРТВН ° тртК = ' г19гепге' — алаптивнаЯ установка поРога по методу Штейна; ° тртк = 'лепгяпге' — эвристический вариант порога по методу Штейна; ° тртк = 'яс[гно1од' — порог, равный яс[гг(2*1од(1епдгл(х) ) ); ° тртк = 'в1п1вах1' — минимаксный порог. Выбор порогового значения базируется на основной модели вида у=Я[) + е, где е — белый шум [х[(0,!), 509 8. 7.
Удаление шумов а сжатие сигналов и изоаражеаий Примеры применения данной функции даны ниже: дп16 = 20554158ббп сапс(п ('аеещ, попс) ) к = капал (1, 1000) сьг = сьае1есь(к,'г1огапге') сьг1 = сьае1есг (к, 'асбио1оо') сьг2 = сиае1есс(х,'Лепгапге')) гагЗ = Сиае1ес (х, 'вппгвакп') сь 1.8065 Саг1 3.7168 сп 3 = 4 2.2163 8.4.4. Штрафной порог для удаления шума — лиЬрлреп Функция тяя = иввреп (С,;, 81ОМА, аврал) возвращает глобальный порог тнр для удаления шумов. Он получается из правила выбора вейвлет-коэффициентов с использованием пштрафногоп метода Бирге-Массарта (В(гяе-Маббаг().
[С,~] — структура разложения сигнала или изображения, которая должна обрабатываться. 51ПИЯ вЂ” стандартное отклонение белого шума Гаусса в данной модели. дьрид — параметр настройки для «штрафногоп метода. В приведенном ниже примере показана техника очистки сигнала (с файла пойпнша) от шума с построением графиков исходного сигнала и очищенного от шума (рис. 8.40)) 1оас) попав1ва) к = попавпва) ипаве = '*увб'и 1еч = 4п (с,з) = иачеаес(к,1еч,ипаве); апсва = ипопаеас(с,1,1)п а1р)па = 1; Опупп~ юспп! (с-' 14 О, 5 (со' гш: зю всо асс ыю:га).