Реконструкция изображений с помощью биортогональных вейвлетов

Этот пример показывает, как применение биортогональных вейвлет порядка может повлиять на реконструкцию изображения.

Сгенерируйте фильтры анализа и синтеза для bior3.5 вейвлет. Загрузка и отображение изображения.

[LoD,HiD,LoR,HiR] = wfilters('bior3.5');
load woman
imagesc(X)
colormap gray

Figure contains an axes. The axes contains an object of type image.

Фильтры анализа, LoD и HiD, иметь 5 моментов исчезновения. Фильтры синтеза, LoR и HiR, иметь 3 момента исчезновения. Выполните пятиуровневое вейвлет изображения с помощью фильтров анализа.

[c1,s1] = wavedec2(X,5,LoD,HiD);

Найдите порог, который сохраняет только те коэффициенты вейвлета с величинами в верхних 10 процентах. Используйте порог, чтобы задать нижние 90 процентов коэффициентов равными 0.

frac = 0.1;
c1sort = sort(abs(c1),'desc');
num = numel(c1);
thr = c1sort(floor(num*frac));
c1new = c1.*(abs(c1)>=thr);

Восстановите изображение с помощью фильтров синтеза и пороговых коэффициентов. Отображение реконструкции.

X1 = waverec2(c1new,s1,LoR,HiR);
figure
imagesc(X1)
colormap gray

Figure contains an axes. The axes contains an object of type image.

Выполните пятиуровневое вейвлет изображения с помощью синтезирующих фильтров.

[c2,s2] = wavedec2(X,5,LoR,HiR);

Найдите порог, который сохраняет только те коэффициенты вейвлета с величинами в верхних 10 процентах. Используйте порог, чтобы задать нижние 90 процентов коэффициентов равными 0

frac = 0.1;
c2sort = sort(abs(c2),'desc');
num = numel(c2sort);
thr = c2sort(floor(num*frac));
c2new = c2.*(abs(c2)>=thr);

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

X2 = waverec2(c2new,s2,LoD,HiD);
figure
imagesc(X2)
colormap gray

Figure contains an axes. The axes contains an object of type image.

См. также

| | | |