exponenta event banner

wdencmp

Деноизирование или сжатие

Описание

пример

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',X,wname,N,THR,SORH,KEEPAPP) возвращает деноизированную или сжатую версию XC входных данных X полученные путем пороговой обработки вейвлет-коэффициентов с использованием глобального положительного порога THR. X - действительный вектор или матрица. [CXC,LXC] является N-уровневая структура вейвлет-декомпозиции XC (см. wavedec или wavedec2 для получения дополнительной информации. PERFL2 и PERF0 - L2-norm показатели восстановления и сжатия в процентах соответственно. Если KEEPAPP = 1, коэффициенты аппроксимации сохраняются. Если KEEPAPP = 0, коэффициенты аппроксимации могут быть пороговыми.

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

[___] = wdencmp('lvl',X,wname,N,THR,SORH) использует пороговые значения, зависящие от уровня THR. Коэффициенты аппроксимации сохраняются.

[___] = wdencmp('lvl',C,L,wname,N,THR,SORH) использует структуру вейвлет-разложения [C,L].

Примеры

свернуть все

Denoise 1-D данные о потреблении электроэнергии с использованием глобального порога Донохо-Джонстона.

Загрузите сигнал и выберите сегмент для обессоливания.

load leleccum; indx = 2600:3100;
x = leleccum(indx);

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

[thr,sorh,keepapp] = ddencmp('den','wv',x);
xd = wdencmp('gbl',x,'db3',2,thr,sorh,keepapp);
subplot(211)
plot(x); title('Original Signal');
subplot(212)
plot(xd); title('Denoised Signal');

Figure contains 2 axes. Axes 1 with title Original Signal contains an object of type line. Axes 2 with title Denoised Signal contains an object of type line.

Деноизировать изображение в аддитивном белом гауссовом шуме с использованием универсального порога Донохо-Джонстона.

Загрузите изображение и добавьте белый гауссов шум.

load sinsin
Y = X+18*randn(size(X));

Использовать ddencmp для получения порогового значения.

[thr,sorh,keepapp] = ddencmp('den','wv',Y);

Денуази изображение. Используйте порядок 4 Symlet и двухуровневую вейвлет-декомпозицию. Постройте график исходного изображения, шумного изображения и денонсированного результата.

xd = wdencmp('gbl',Y,'sym4',2,thr,sorh,keepapp);
subplot(2,2,1)
imagesc(X)
title('Original Image')
subplot(2,2,2)
imagesc(Y)
title('Noisy Image')
subplot(2,2,3)
imagesc(xd)
title('Denoised Image')

Figure contains 3 axes. Axes 1 with title Original Image contains an object of type image. Axes 2 with title Noisy Image contains an object of type image. Axes 3 with title Denoised Image contains an object of type image.

Входные аргументы

свернуть все

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

Типы данных: double

Коэффициенты вейвлет-расширения данных, которые должны быть сжаты или деноузированы, заданные как действительный вектор. Если данные одномерны, C - выходной сигнал wavedec. Если данные являются двумерными, C - выходной сигнал wavedec2.

Пример: [C,L] = wavedec(randn(1,1024),3,'db4')

Типы данных: double

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

Для сигналов, L - выходной сигнал wavedec. Для изображений, L - выходной сигнал wavedec2.

Пример: [C,L] = wavedec(randn(1,1024),3,'db4')

Типы данных: double

Имя вейвлета, определяемого как вектор символов или строковый скаляр, используемый для обличения или сжатия. Посмотрите wavemngr для получения дополнительной информации. wdencmp использование wname для создания N-уровневая вейвлет-декомпозиция X.

Уровень вейвлет-разложения, заданный как положительное целое число.

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

  • Для дела 'gbl', THR является скаляром.

  • Для одномерного регистра и 'lvd' опция, THR - длина N действительный вектор, содержащий пороговые значения, зависящие от уровня.

  • Для двумерного регистра и 'lvd' опция, THR является 3-by-N матрица, содержащая зависящие от уровня пороги в трех ориентациях: горизонтальной, диагональной и вертикальной.

Типы данных: double

Тип пороговых значений для выполнения:

  • 's' - Мягкое пороговое значение

  • 'h' - Жесткий порог

Посмотрите wthresh для получения дополнительной информации.

Установка аппроксимации порога, указанная как 0 или 1. Если KEEPAPP = 1, коэффициенты аппроксимации не могут быть пороговыми. Если KEEPAPP = 0, коэффициенты аппроксимации могут быть пороговыми.

Типы данных: double

Выходные аргументы

свернуть все

Деноизированные или сжатые данные, возвращаемые как действительный вектор или матрица. XC и X имеют одинаковые размеры.

Коэффициенты вейвлет-расширения деноизированных или сжатых данных XC, возвращенный как действительный вектор. LXC содержит число коэффициентов по уровням.

Размер коэффициентов вейвлет-расширения денозированных или сжатых данных XC, указанный как вектор или матрица положительных целых чисел. Если данные одномерны, LXC является вектором положительных целых чисел (см. wavedec для получения дополнительной информации. Если данные являются двумерными, LXC является матрицей положительных целых чисел (см. wavedec2 для получения дополнительной информации.

Оценка сжатия, возвращенная как реальное число. PERF0 - процент пороговых коэффициентов, равный 0.

PERFL2 = 100 * (вектор-норма CXC / вектор-норма C) 2, если[C,L] обозначает структуру вейвлет-разложения X.

Если X является одномерным сигналом и 'wname' ортогональный вейвлет, PERFL2 сокращается до

100‖XC‖2‖X‖2

Алгоритмы

Процедуры обессоливания и сжатия содержат три стадии:

  1. Разложение.

  2. Пороговое значение.

  3. Реконструкция.

Эти две процедуры отличаются на этапе 2. При сжатии для каждого уровня в вейвлет-декомпозиции выбирается порог и к коэффициентам детализации применяется жесткое пороговое значение.

Ссылки

[1] ДеВор, Р. А., Б. Джаверт и Б. Дж. Люсье. «Сжатие изображения с помощью вейвлет-преобразования». Транзакции IEEE по теории информации. Том 38, номер 2, 1992, стр. 719-746.

[2] Донохо, Д. Л. «Прогресс в вейвлет-анализе и WVD: десятиминутный тур». Прогресс в вейвлет-анализе и приложениях (Y. Meyer, и S. Roques, eds.). Gif-sur-Yvette: Editions Frontières, 1993.

[3] Донохо, Д. Л. и И. М. Джонстоун. «Идеальная пространственная адаптация с помощью Wavelet Shrinkage». Биометрика. Том 81, стр. 425-455, 1994.

[4] Донохо, Д. Л., И. М. Джонстоун, Г. Керкячарян и Д. Пикар. «Wavelet Shrinkage: асимптопия?» Журнал Королевского статистического общества, серия B, том 57, № 2, стр. 301 - 369, 1995.

[5] Донохо, Д. Л. и И. М. Джонстоун. «Идеальное обесценение в ортонормированной основе, выбранной из библиотеки оснований». C. R. Acad. Sci. Paris, Ser. I, Vol. 319, pp. 1317-1322, 1994.

[6] Донохо, Д. Л. «Снятие шума с помощью мягкого порогования». Транзакции IEEE по теории информации. Том 42, номер 3, стр. 613-627, 1995.

Расширенные возможности

.

См. также

Функции

Приложения

Представлен до R2006a