Эта статья не содержит достаточного контекста для тех, кто не знаком с предметом . ( Октябрь 2009 ) |
Стационарное вейвлет-преобразование ( SWT ) [1] — это алгоритм вейвлет-преобразования, разработанный для преодоления недостатка инвариантности к трансляции дискретного вейвлет-преобразования ( DWT ). Инвариантность к трансляции достигается путем удаления понижающих и повышающих дискретизаторов в DWT и повышения дискретизации коэффициентов фильтра с коэффициентом на th уровне алгоритма. [2] [3] [4] [5] SWT — это изначально избыточная схема, поскольку выход каждого уровня SWT содержит то же количество выборок, что и вход, — поэтому для разложения N уровней возникает избыточность N в вейвлет-коэффициентах. Этот алгоритм более известен как « algorithm à trous » на французском языке (слово trous означает «дырки» на английском языке), что относится к вставке нулей в фильтры. Он был введен Хольшнайдером и др. [6]
Базовый алгоритм дискретного вейвлет-преобразования (DWT) адаптирован для получения стационарного вейвлет-преобразования (SWT), которое не зависит от источника. Подход SWT прост, он заключается в применении подходящих фильтров верхних и нижних частот к данным на каждом уровне, что приводит к генерации двух последовательностей на последующем уровне. Без использования методов понижения частоты дискретизации длина новых последовательностей сохраняется такой же, как и у исходных последовательностей. Вместо того, чтобы использовать децимацию, похожую на стандартное вейвлет-преобразование, которое удаляет элементы, фильтры на каждом уровне корректируются путем их дополнения нулями, как объясняется в следующем: [7]
где — оператор, который перемежает заданную последовательность нулями для всех целых чисел .
это оператор бинарного прореживания
это фильтр с весами
это фильтр с весами
Конструкция фильтров заключается в вставке нуля между каждой соседней парой элементов в фильтре и соответственно.
Обозначение в качестве исходной последовательности требуется перед определением стационарного вейвлет-преобразования.
где
Следующая блок-схема иллюстрирует цифровую реализацию SWT.
На приведенной выше диаграмме фильтры на каждом уровне представляют собой расширенные версии предыдущего (см. рисунок ниже).
Ниже приведены некоторые применения SWT.
SWT может использоваться для повышения разрешения изображения с целью обеспечения лучшего качества изображения. Главным недостатком повышения разрешения изображения с помощью обычного метода, интерполяции , является потеря высокочастотных компонентов. [8] Это приводит к сглаживанию интерполяции, что приводит к размытости изображения с отсутствием или уменьшением количества мелких деталей, резких краев. Информация о высокочастотных компонентах (краях) имеет решающее значение для достижения лучшего качества изображения сверхразрешенного изображения.
Сначала он разлагает входное изображение на различные изображения поддиапазонов, применяя одноуровневое DWT. Есть три изображения поддиапазонов для захвата высокочастотных компонентов входного изображения. После этого следует реализация SWT, ее цель — смягчить потерю информации, вызванную понижением частоты дискретизации в каждом поддиапазоне DWT. Укрепленные и исправленные высокочастотные поддиапазоны формируются путем суммирования высокочастотных поддиапазонов из DWT и SWT, и в результате выходное изображение имеет резкие края.
Традиционная процедура шумоподавления в основном состоит из первого преобразования сигнала в другой домен, затем применения пороговой обработки и, наконец, выполнения обратного преобразования для восстановления исходного сигнала. Стационарное вейвлет-преобразование вводится для разрешения явления Гиббса, вызванного процессом сдвига в дискретном вейвлет-преобразовании . Это явление влияет на качество изображения (шумы) после процесса восстановления. Модифицированная процедура проста, сначала выполняется стационарное вейвлет-преобразование сигнала, пороговая обработка и, наконец, обратное преобразование. Краткое объяснение показано ниже:
В отличие от дискретного вейвлет-преобразования, SWT не понижает частоту дискретизации сигнала на каждом уровне. Вместо этого он сохраняет исходную частоту дискретизации на протяжении всего процесса разложения, и это обеспечивает эффективную инкапсуляцию высоко- и низкочастотных компонентов. Поскольку шум часто распространяется по всем масштабам с небольшим вкладом в величину, пороговая обработка реализуется как следующий шаг к вейвлет-коэффициентам. Коэффициенты ниже определенного порогового уровня устанавливаются равными нулю или уменьшаются, что приводит к разделению сигнала и шума. После удаления или подавления шумовых коэффициентов, которые процесс реконструкции не учитывает, очищенный от шумов сигнал становится более четким.
Шумоподавление сигнала также широко используется в биомедицинском шумоподавлении сигнала (ЭКГ), [9] шумоподавлении изображения. Эффективность SWT в шумоподавлении сигнала делает его ценным инструментом в реальных приложениях в различных областях.
Вот пример применения стационарного вейвлет-преобразования к ЛЧМ-сигналу, закодированный с помощью python3:
pip установить numpypip установить matplotlibpip установить pywt
импортировать numpy как npимпортировать matplotlib.pyplot как pltимпорт pywt
# Генерация чирп-сигналаt = np.linspace ( 0 , 1 , 1000 , конечная точка = Ложь ) частота = 10 + 20 * tchirp_signal = np.sin ( 2 * np.pi * частота * t ) # Выполнить стационарное вейвлет-преобразование (SWT)вейвлет = 'db1' # вейвлет Добешиуровень = 3 # Уровень разложенияcoeffs = pywt.swt ( chirp_signal , wavelet , level ) # Коэффициенты # Построить исходный сигнал ЛЧМplt . рисунок ( figsize = ( 12 , 6 ))пл . подсюжет ( уровень + 2 , 1 , 1 )plt . plot ( t , chirp_signal )plt . title ( 'Оригинальный сигнал Chirp' )plt . легенда ()# Построить график коэффициентов SWTдля i в диапазоне ( уровне ): plt . подсюжет ( уровень + 2 , 1 , i + 2 ) plt . plot ( t , coeffs [ i ][ 0 ]) plt . plot ( t , coeffs [ i ][ 1 ]) plt . title ( f 'SWT Коэффициенты - Уровень { i } ' )plt.tight_layout ( )plt . показать ()