dwtmode

Режим расширения дискретного вейвлет

Описание

пример

dwtmode(mode) устанавливает режим расширения сигнала или изображения как для дискретных вейвлет, так и для вейвлет в mode. Все функции и инструменты приложения Wavelet Analyzer, включающие либо дискретное вейвлет (1-D и 2-D), либо вейвлет пакета (1-D и 2-D), используют указанный режим расширения DWT.

Режимы расширения обеспечивают опции для решения проблемы искажения границы в анализе сигнала или изображения. Для получения дополнительной информации см. раздел «Эффекты границы».

Примечание

Функции, включающие дискретные вейвлеты преобразования, могут не использовать текущий режим расширения для gpuArray вход. Такие случаи задокументированы на странице с описанием функции.

dwtmode или dwtmode('status') отобразить текущий режим. Если DWTMODE.DEF существует в текущем пути, режим по умолчанию загружается из DWTMODE.DEF в начале MATLAB® сеанс. В противном случае файл DWTMODE.CFG используется.

st = dwtmode или st = dwtmode('status') отобразить и вернуть текущий режим в st.

st = dwtmode('status','nodisp') возвращает текущий режим st и в командном окне MATLAB не отображается текст состояния или предупреждение.

dwtmode('save',mode) сохраняет mode как новый режим по умолчанию для файла DWTMODE.DEF в текущей папке. Если DWTMODE.DEF уже существует в текущей папке, файл перезаписан. Новый режим по умолчанию будет активен как режим по умолчанию в следующем сеансе работы с MATLAB.

Примечание

Чтобы выполнять параллельно любую функциональность, которая зависит от режима расширения, сохраните режим расширения с помощью dwtmode('save',mode) перед запуском parfor цикл, или вызов dwtmode(mode) внутри вашего parfor цикл.

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

Выполнение for- итерации цикла параллельно требуют Parallel Computing Toolbox™. Для получения дополнительной информации см.parfor (Parallel Computing Toolbox).

dwtmode('save') эквивалентно dwtmode('save',CURRENTMODE), где CURRENTMODE представляет текущий режим расширения.

Примеры

свернуть все

Отображение текущего режима расширения сигнала DWT. Если глобальная переменная режима расширения DWT не существует, то по умолчанию это симметризация с полуточкой.

dwtmode
                                                       
*******************************************************
**  DWT Extension Mode: Symmetrization (half-point)  **
*******************************************************
                                                       

Сохраните текущий режим расширения. Переключите режим внутреннего абонента на периодизированный внутренний абонент.

origmode = dwtmode('status','nodisplay');
dwtmode('per','nodisplay')

Отображение текущего режима расширения сигнала DWT.

dwtmode
                                         
*****************************************
**  DWT Extension Mode: Periodization  **
*****************************************
                                         

Восстановите исходный режим расширения.

dwtmode(origmode,'nodisplay')
dwtmode
                                                       
*******************************************************
**  DWT Extension Mode: Symmetrization (half-point)  **
*******************************************************
                                                       

Входные параметры

свернуть все

Режим расширения DWT, используемый для расширения входов, задается как одно из следующих значений.

mode

Режим расширения DWT

'zpd'

Нулевой внутренний номер

'sp0'

Сглаживайте расширение порядка 0

'spd' (или 'sp1')

Сглаживайте расширение порядка 1

'sym' или 'symh'

Симметричное расширение (половина точки): граничное значение симметричной репликации

'symw'

Симметричное расширение (вся точка): граничное значение симметричной репликации

'asym' или 'asymh'

Антисимметричное расширение (половина точки): краевое значение антисимметричной репликации

'asymw'

Антисимметричное расширение (вся точка): краевое значение антисимметричной репликации

'ppd', 'per'

Периодизированное расширение

Если длина сигнала нечетная и mode является 'per'дополнительная выборка, равная последнему значению, добавляется вправо, и расширение выполняется в 'ppd' режим. Если длина сигнала четная, 'per' эквивалентно 'ppd'. Это правило также применяется к изображениям.

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

Примечание

dwtmode обновляет глобальную переменную. Только используйте dwtmode для изменения режима внутренней линии. Избегайте изменения глобальной переменной непосредственно.

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

свернуть все

Режим расширения DWT, возвращенный как символьный массив.

Совет

  • Для большинства вейвлетов или периодическое расширение, или симметричное расширение работает хорошо.

Ссылки

[1] Странг, Г. и Т. Нгуен. Вейвлеты и банки фильтров. Wellesley, MA: Wellesley-Cambridge Press, 1996.

См. также

Приложения

Функции

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