shearletSystem

Конус-адаптированная полосно-ограниченная система шестеренок

Описание

The shearletSystem объект представляет собой адаптированную к конусу полосно-ограниченную срезающую систему. После того, как вы создаете систему shearlet, вы можете использовать sheart2 для получения преобразования shearlet действительного 2-D изображения. Вы также можете использовать isheart2 для получения обратного преобразования. Предусмотрены дополнительные функции объекта.

Создание

Описание

sls = shearletSystem создает адаптированную к конусу реальную полосно-ограниченную срезную систему для действительного изображения размера 128 на 128 с количеством шкал, равным 4. Система sls представляет собой неразрешенную систему шестеренок. Шестерни, простирающиеся за пределы 2-D частот, периодически расширяются. Использование реальных шестерен с периодическими граничными условиями приводит к реальным коэффициентам шестерни.

Реализация shearletSystem следует подходу, описанному в Häuser и Steidl [6]

пример

sls = shearletSystem(Name,Value) создает адаптированную к конусам полосно-ограниченную шестерню с свойствами, заданными одним или несколькими Name,Value пар. Для примера, shearletSystem('ImageSize',[100 100]) создает шестеренчатую систему для изображений размера 100 на 100. Свойства могут быть заданы в любом порядке как Name1,Value1,...,NameN,ValueN. Заключайте каждое имя свойства в одинарные кавычки (' ') или двойные кавычки (" ").

Примечание

Значения свойств шестеренчатой системы фиксированы. Для примера, если система резьбовых SLS создается с помощью ImageSize из [128 128], вы не можете изменить это ImageSize по [200 200].

Свойства

расширить все

Размер изображения для системы shearlet, заданный как двухэлементный целочисленный вектор [numrows numcolumns] . Изображения должны быть не менее 16 на 16.

Пример: sls = shearletSystem('ImageSize',[100 200]) создает систему shearlet для изображений 100 на 200.

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

Количество шкал в системе shearlet, заданное как положительное целое число, меньше или равное log2 (min ([ M N])) -3, где M и N являются размерностями строки и столбца входа изображения. Для входного изображения 16 на 16, log2 (min ([16 16])) -3 = 4-3 = 1, поэтому наименьшее изображение, совместимое с shearletSystem имеет минимальную размерность 16. Для размера изображения по умолчанию 128 на 128 количество шкал равняется 4.

Пример: sls = shearletSystem('NumScale',1) создает систему шестеренок с NumScales равным 1.

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

Тип системы Shearlet, заданный как 'real' или 'complex'. Реальные шестерни имеют двусторонние 2-D частотные спектры, в то время как комплексные шестерни имеют односторонние 2-D спектры. Если для FilterBoundary задано значение 'periodic', шестеренки в самых мелких пространственных шкалах имеют энергию, которая оборачивается в 2-D частотной характеристике. Для обоих 'real' и 'complex' shearlet systems, преобразования Фурье shearlets являются действительными.

Обработка контура фильтра шестеренки, заданная как 'periodic' или 'truncated'. Когда установлено значение 'periodic'периодически удлиняются шестерни, простирающиеся за пределы 2-D частоты контуров. Когда установлено значение 'truncated', шестерни усекаются на 2-D частотные контуры.

Нормализация анализа системы Shearlet, заданная в виде числа или логического 1 (true) или 0 (false). Когда установлено значение trueсистема shearlet нормирована как система координат Парсеваля, и энергия входного изображения сохранена в коэффициентах преобразования shearlet.

Пример: sls = shearletSystem('PreserveEnergy',true)

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

Точность системы резьбы, заданная как 'double' или 'single'. Все расчеты выполняются с помощью заданной точности.

Примечание

Чтобы получить преобразование shearlet изображения, точность изображения должна совпадать с точностью системы shearlet.

Функции объекта

sheart2Преобразование Ширле
isheart2Обратное преобразование шестеренки
frameboundsГраницы системы координат Shearlet
filterbankФильтры шестеренчатой системы
numshearsКоличество перемычек

Примеры

свернуть все

Загрузка изображения. Создайте две реальные системы шестеренок, которые могут быть применены к изображению. Нормализуйте первую систему так, чтобы энергия сохранялась в коэффициентах преобразования шестеренки. Оставьте вторую систему резьбы с значением по умолчанию (false) нормализация.

load mask
[numRows,numCols] = size(X);
slsA = shearletSystem('ImageSize',[numRows numCols],'PreserveEnergy',true);
slsB = shearletSystem('ImageSize',[numRows numCols]);

Возьмите преобразование shearlet изображения с помощью обеих систем shearlet.

cfA = sheart2(slsA,X);
cfB = sheart2(slsB,X);

Определите энергию входного изображения и обоих наборов коэффициентов преобразования. Подтвердите, что только первая система шестеренок сохранила энергию.

energyA = sum(cfA(:).^2);
energyB = sum(cfB(:).^2);
energyImage = sum(X(:).^2)
energyImage = 2.4655e+09
diffSystemA = abs(energyImage-energyA)
diffSystemA = 4.7684e-07
diffSystemB = abs(energyImage-energyB)
diffSystemB = 1.4869e+07

Ограничения

  • Краевые эффекты действительного преобразования шестеренки неквадратичного изображения могут привести к комплексным коэффициентам. Как реализовано, shearletSystem создает shearlets в области 2-D Фурье. Для реального преобразования шестеренки, шестерни в 2-D области Фурье должны быть симметричными в положительной и отрицательной 2-D частотной плоскости. Шестерни, сконструированные для квадратных изображений, являются симметричными. Однако, когда соотношение сторон изображения увеличивается, сконструированные шестерни становятся менее симметричными. Если поддержка lowpass фильтра в плоскости частот 2-D слишком велика, граничные эффекты могут увеличиться. По возможности используйте квадратные изображения. Дополнительную информацию и стратегии для смягчения эффектов границ см. в разделе «Эффекты границ в реальном значении».

Ссылки

[1] Guo, K., G. Kutyniok, and D. Labate. «Разреженные многомерные представления с использованием анизотропного расширения и операторов сдвига». In Wavelets and Splines: Athens 2005 (G. Chen, and M.-J. Чен, эд.), 189-201. Brentwood, TN: Nashboro Press, 2006.

[2] Guo, K., and D. Labate. Оптимально разреженное многомерное представление с использованием Shearlets. SIAM Journal по математическому анализу. Том 39, № 1, 2007, стр. 298-318.

[3] Kutyniok, G. и W.-Q Lim. «Компактно поддерживаемые шестерни оптимально разрежены». Журнал теории приближения. Том 163, № 11, 2011, стр. 1564-1589.

[4] Shearlets: Multiscale Analysis for Multivariate Data (G. Kutyniok, and D. Labate, eds.). Нью-Йорк: Спрингер, 2012.

[5] ShearLab. https://www3.math.tu-berlin.de/numerik/www.shearlab.org/.

[6] Häuser, S., and G. Steidl. «Fast Finite Shearlet Transform: a tutorial». arXiv preprint arXiv:1202.1773 (2014).

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2019b