exponenta event banner

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Для параллельных итераций -loop требуется Toolbox™ Parallel Computing. Дополнительные сведения см. в разделе parfor(Панель инструментов параллельных вычислений).

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] Странг, G. и Т. Нгуен. Вейвлеты и банки фильтров. Уэлсли, Массачусетс: Уэлсли-Кембридж Пресс, 1996.

См. также

Приложения

Функции

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