cwtft2

2D непрерывный вейвлет преобразовывает

Описание

пример

cwtstruct = cwtft2(x) возвращает 2D непрерывный вейвлет преобразовывает (CWT) 2D матрицы, x. cwtft2 использует основанный на преобразовании Фурье алгоритм, в котором 2D преобразования Фурье входных данных и вейвлета анализа умножаются вместе и инвертируются.

пример

cwtstruct = cwtft2(x,'plot') отображает на графике данные и 2D CWT.

пример

cwtstruct = cwtft2(x,Name,Value) дополнительные опции использования заданы одной или несколькими парами значений - Name, Value.

Примеры

свернуть все

Показывает, как изотропный вейвлет не различает ориентацию функций, в то время как анизотропный вейвлет делает. Пример использует мексиканскую шляпу изотропный вейвлет и направленный (анизотропный) вейвлет Коши.

Загрузите и просмотрите шестиугольное изображение.

Im = imread('hexagon.jpg');
imagesc(Im); colormap(jet);

Получите шкалу один 2D CWT и с мексиканской шляпой и с вейвлетами Коши. Задать вектор из углов, идущих от 0 до 15?/8 в? Шаг/8.

cwtcauchy = cwtft2(Im,'wavelet','cauchy','scales',1,...
    'angles',0:pi/8:2*pi-pi/8);
cwtmexh = cwtft2(Im,'wavelet','mexh','scales',1,...
    'angles',0:pi/8:2*pi-pi/8);

Визуализируйте шкалу 2D содействующие величины CWT под каждым углом.

angz = {'0', 'pi/8', 'pi/4', '3pi/8', 'pi/2', '5pi/8', '3pi/4', ...
    '7pi/8','pi', '9pi/8', '5pi/4', '11pi/8', '3pi/2', ...
    '13pi/8' '7pi/4', '15pi/8'};
for angn = 1:length(angz)
    subplot(211)
    imagesc(abs(cwtmexh.cfs(:,:,1,1,angn)));
    title(['Mexican hat at ' angz(angn) 'radians']);
    subplot(212)
    imagesc(abs(cwtcauchy.cfs(:,:,1,1,angn)));
    title(['Cauchy wavelet at ' angz(angn) 'radians']);
    pause(1);
end

Загрузите изображение женщины, получите 2D CWT с помощью вейвлета Morlet и постройте коэффициенты CWT.

load woman;
cwtmorl = cwtft2(X,'scales',1:4,'angles',0:pi/2:3*pi/2,'plot');

Figure Continuous Wavelet Transform 2-D - Wavelet: MORL contains 5 axes objects and other objects of type uicontrol. Axes object 1 with title Original Data contains an object of type image. Axes object 2 contains an object of type image. Axes object 3 contains an object of type image. Axes object 4 contains an object of type image. Axes object 5 contains an object of type image.

Получите 2D CWT звездообразного изображения с помощью вейвлета Morlet по умолчанию, 2^(0:5) шкал, и угол 0.

Im = imread('star.jpg');
cwtout = cwtft2(Im);

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

свернуть все

Входные данные в виде 2D матрицы или трехмерного массива. Если входные данные являются трехмерным массивом, входная матрица является изображением истинного цвета.

Пример: X = imread('stars.jpg');

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

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'wavelet','paul','scales',2^(0:5) задает, чтобы использовать вейвлет Пола и вектор из шкал.

Углы в радианах в виде разделенной запятой пары, состоящей из 'angles' и или скаляр или вектор.

Пример: 'angles',[0 pi/2 pi]

Нормализация, используемая в 2D CWT в виде разделенной запятой пары, состоящей из 'norm' и один из этих векторов символов:

  • 'L2' — Преобразование Фурье вейвлета анализа в данной шкале умножается на соответствующую шкалу. 'L2' нормализация по умолчанию.

  • 'L1' — Преобразование Фурье вейвлета анализа умножается на 1 во всех шкалах.

  • 'L0' — Преобразование Фурье вейвлета анализа в данной шкале умножается на квадрат соответствующей шкалы.

Пример: 'norm','L1'

Шкалы в виде разделенной запятой пары, состоящей из 'scales' и или положительный скаляр с действительным знаком или вектор из положительных вещественных чисел.

Пример: 'scales',2^(1:6)

Анализ вейвлета в виде разделенной запятой пары, состоящей из 'wavelet' и вектор символов, строковый скаляр, структура или массив ячеек. cwtftinfo2 предоставляет всесторонний список поддерживаемых вейвлетов и сопоставленных параметров.

Если вы задаете 'wavelet' как структура, структура должна содержать два поля:

  • name — вектор символов или строковый скаляр, соответствующий поддерживаемому вейвлету.

  • param — массив ячеек параметрами вейвлета.

Если вы задаете 'wavelet' как массив ячеек, wav, массив ячеек должен содержать два элемента:

  • wav{1} — вектор символов или строковый скаляр, соответствующий поддерживаемому вейвлету.

  • wav{2} — массив ячеек параметрами вейвлета.

Пример: 'wavelet',{'morl',{6,1,1}}

Пример: 'wavelet',struct('name','paul','param',{'p',2})

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

свернуть все

2D CWT, возвращенный как структура со следующими полями:

Анализ вейвлета и параметров, возвращенных как структура со следующими полями:

  • wname Имя

  • param Параметры

Константы нормализации, возвращенные как M-by-N матрица, где M является количеством шкал и N, являются количеством углов.

Коэффициенты CWT, возвращенные как массив N-D. Размерности строки и столбца массива равняются размерностям строки и столбца входных данных. Третья страница массива равна 1 или 3 в зависимости от того, являются ли входные данные черно-белым или цветным изображением. Четвертая страница массива равна количеству шкал, и пятая страница массива равна количеству углов.

Шкалы для 2D CWT, возвращенного как вектор-строка.

Углы для 2D CWT, возвращенного как вектор-строка.

Среднее значение входных данных, возвращенных как скаляр

Введенный в R2013b