sharpencnmf

Увеличьте резкость гиперспектральных данных с помощью метода двойной неотрицательной матричной факторизации (CNMF)

    Описание

    пример

    outputData = sharpencnmf(lrData,hrData) увеличивает резкость с низким разрешением гиперспектральных данных, lrData из сцены при помощи метода двойной неотрицательной матричной факторизации (CNMF). Метод CNMF является итерационным подходом, который использует высокое разрешение многоспектральные или панхроматические данные, hrData из той же сцены для увеличения резкости гиперспектральных данных.

    Гиперспектральное повышение четкости изображения увеличивает пространственное разрешение гиперспектральных данных путем плавления информации от высокого разрешения многоспектральные данные или панхроматические данные. Процесс увеличения резкости также называется как image fusion (объединяющий многоспектральные и гиперспектральные данные) или pan-sharpening (объединяющий панхроматические и гиперспектральные данные).

    Примечание

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

    • Количество диапазонов в гиперспектральных данных должно быть больше количества полос в многоспектральных данных. Для панхроматических данных количество диапазонов всегда равняется 1.

    пример

    outputData = sharpencnmf(lrData,hrData,Name,Value) также задает опции с помощью одного или нескольких аргументов пары "имя-значение". Используйте этот синтаксис, чтобы установить значения параметров для метода CNMF.

    Примечание

    Эта функция требует Image Processing Toolbox™ Гиперспектральная Библиотека Обработки изображений. Можно установить Image Processing Toolbox Гиперспектральная Библиотека Обработки изображений из Add-On Explorer. Для получения дополнительной информации об установке дополнений, смотрите, Получают и Управляют Дополнениями.

    Примеры

    свернуть все

    Считайте низкое пространственное разрешение гиперспектральное изображение сцены в рабочую область.

    hcube = hypercube('EO1H0440342002212110PY_hsi.hdr');

    Считайте высокое пространственное разрешение многоспектральное изображение той же сцены в рабочую область.

    pcube = hypercube('EO1H0440342002212110PY_msi.hdr');

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

    newhcube = sharpencnmf(hcube,pcube);

    Оцените изображение RGB гиперспектрального входа, введите многоспектральный, и увеличенный резкость гиперспектральный выход.

    lrData = colorize(hcube,'method','rgb','ContrastStretching',true);
    hrData = colorize(pcube,'method','rgb','ContrastStretching',true);
    outputData = colorize(newhcube,'method','rgb','ContrastStretching',true);

    Отобразите низкое пространственное разрешение, гиперспектральное (HS) изображение, высокое пространственное разрешение, многоспектральное (MS) изображение и выходное изображение HS высокого разрешения.

    figure
    montage({lrData;hrData;outputData})
    title('Low Resolution HS Input | High Resolution MS Input | High Resolution HS Output')

    Считайте низкое пространственное разрешение гиперспектральное изображение сцены в рабочую область.

    hcube = hypercube('EO1H0440342002212110PY_hsi.hdr');

    Считайте высокое пространственное разрешение многоспектральное изображение той же сцены в рабочую область.

    pcube = hypercube('EO1H0440342002212110PY_msi.hdr');

    Увеличьте резкость низкого пространственного разрешения гиперспектральные данные при помощи метода CNMF. Установите пороговое значение сходимости на 0,1.

    newhcube = sharpencnmf(hcube,pcube,'ConvergenceThreshold',0.1);

    Оцените изображение RGB гиперспектрального входа, введите многоспектральный, и увеличенный резкость гиперспектральный выход.

    lrData = colorize(hcube,'method','rgb','ContrastStretching',true);
    hrData = colorize(pcube,'method','rgb','ContrastStretching',true);
    outputData = colorize(newhcube,'method','rgb','ContrastStretching',true);

    Отобразите низкое пространственное разрешение, гиперспектральное (HS) изображение, высокое пространственное разрешение, многоспектральное (MS) изображение и выходное изображение HS высокого разрешения.

    figure
    montage({lrData;hrData;outputData})
    title('Low Resolution HS Input | High Resolution MS Input | High Resolution HS Output')

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

    свернуть все

    С низким разрешением гиперспектральные данные в виде hypercube возразите или 3-D числовой массив, содержащий куб данных. Если входом является hypercube объект, данные считаны из DataCube свойство объекта.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Высокое разрешение вводится в виде hypercube объект, 3-D числовой массив, содержащий куб данных или матрицу. Если входом является hypercube объект, данные считаны из DataCube свойство объекта.

    Вход высокого разрешения является или многоспектральными или панхроматическими данными.

    • Для многоспектральных данных входным значением должен быть hypercube возразите или 3-D числовой массив, содержащий куб данных.

    • Для панхроматических данных входное значение может быть любым из них:

      • hypercube возразите или 3-D числовой массив, содержащий куб данных. Количество диапазонов в кубе данных должно быть 1.

      • Матрица A.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

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

    Пример: cnmf(lrData,hrData,'MaxConvergenceIterations',40)

    Максимальное количество итераций, требуемых для сходимости в виде разделенной запятой пары, состоящей из 'MaxConvergenceIterations' и положительный целочисленный скаляр.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Максимальное количество итераций, требуемых оптимизировать спектральное несмешивание гиперспектральных и многоспектральных данных в виде разделенной запятой пары, состоящей из 'MaxOptimizationIterations' и положительный целочисленный скаляр. Если вход hrData высокого разрешения панхроматическое изображение, спектральное несмешивание выполняется только на гиперспектральных данных.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Порог для сходимости в виде разделенной запятой пары, состоящей из 'ConvergenceThreshold' и положительная скалярная величина. Если вы увеличиваете порог сходимости, точность спектральных уменьшений несмешивания.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Количество endmembers для спектрального несмешивания в виде разделенной запятой пары, состоящей из 'NumEndmembers' и положительный целочисленный скаляр.

    Для значения по умолчанию, sharpencnmf первые количества общее количество endmembers (TotalEM) в гиперспектральных данных при помощи countEndmembersHFC функция. Затем вычисляет количество endmembers для несмешивания пиксельных значений как, min (40, TotalEM).

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

    свернуть все

    Увеличенные резкость гиперспектральные данные, возвращенные как hypercube возразите или 3-D числовой массив.

    Если с низким разрешением гиперспектральный куб данных задан lrData имеет размер P-by-Q-by-C и данные о высоком разрешении hrData имеет размер M-by-N-by-K увеличенный резкость выход

    имеет размер M-by-N-by-C.

    Ссылки

    [1] Yokoya, Naoto, Такеиза Йяири и Акира Ивасаки. “Двойная Неотрицательная Матричная Факторизация, Не смешивающаяся для Гиперспектрального и Многоспектрального Fusion Данных”. Транзакции IEEE на Геонауке и Дистанционном зондировании 50, № 2 (февраль 2012): 528–37. https://doi.org/10.1109/TGRS.2011.2161320.

    Смотрите также

    | | |

    Введенный в R2020b