hypermnf

Максимальный шум фракционировал преобразование гиперспектральных данных

    Описание

    пример

    outputDataCube = hypermnf(inputData,numComponents) вычисляет конкретное количество полос numComponents основного компонента при помощи максимальной шумовой части (MNF) преобразовывают. Чтобы достигнуть спектрального сокращения размерности, конкретное количество основных компонентов должно быть меньше количества диапазонов в кубе входных данных.

    Компоненты вывели использование, которое преобразовывают MNF, также называются ненастроенными основными компонентами, и MNF преобразовывают основные компоненты (PC) расположений в уменьшающийся порядок качества изображения PC.

    пример

    [outputDataCube,coeff] = hypermnf(inputData,numComponents) также возвращает коэффициенты MNF, оцененные через диапазоны куба входных данных.

    [___] = hypermnf(inputData,numComponents,'MeanCentered',flag) вычисляет MNF, преобразовывают от сосредоточенных диапазонов среднего значения. Опция для среднего значения, сосредотачивающего каждый диапазон в кубе входных данных, задана flag.

    Примечание

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

    Примеры

    свернуть все

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

    hcube = hypercube('indian_pines.dat');

    Вычислите 10 полос основного компонента гиперспектральных данных и связанных коэффициентов преобразования.

    [outputDataCube,coeff] = hypermnf(hcube,10);

    Отобразите первые 10 диапазонов в кубе входных данных.

    figure
    montage(hcube.DataCube(:,:,1:10),'BorderSize',[10 10],'Size',[2 5],'DisplayRange',[]);
    title('First 10 Spectral Band Images')

    В целях визуализации перемасштабируйте значения основного компонента, чтобы находиться в диапазоне [0, 1]. Отобразите все полосы основного компонента, извлеченные из куба данных. Полосы основного компонента располагаются в порядке уменьшения качества изображения (или увеличение уровня шума).

    figure
    rescalePC = rescale(outputDataCube,0,1);
    montage(rescalePC,'BorderSize',[10 10],'Size',[2 5]);
    title('Principal Component Bands of Data Cube')

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

    свернуть все

    Введите гиперспектральные данные в виде 3-D числового массива, которые представляют гиперспектральный куб данных размера M-by-N-by-C или hypercube объект. Если входом является hypercube объект, функция читает куб данных, сохраненный в DataCube свойство объекта. Гиперспектральный куб данных должен быть действительным и неразреженным.

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

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

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

    Индикатор для среднего значения, сосредотачивающего диапазоны в виде одного из этих значений:

    • true или 1 — Средний центр каждый диапазоны в кубе входных данных путем вычитания среднего значения диапазонов прежде, чем вычислить MNF преобразовывает.

    • false или 0 — Вычислите полосы основного компонента без среднего значения, сосредотачивающего диапазоны в кубе входных данных.

    Типы данных: логический

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

    свернуть все

    MNF преобразовал куб данных, возвращенный как 3-D числовой массив размера M-by-N-by-numComponents. Пространственная размерность куба выходных данных - то же самое как тот из куба входных данных. Спектральная размерность куба выходных данных равна количеству основных компонентов, заданных во входе.

    Если тип входных данных является двойным, тип выходных данных является также двойным. В противном случае тип выходных данных является одним.

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

    Коэффициенты MNF, возвращенные как матрица размера C-by-numComponents. C является количеством диапазонов в кубе входных данных. Каждый столбец coeff содержит коэффициенты для одного основного компонента. Столбцы находятся в порядке качества изображения основного компонента.

    Если тип входных данных является двойным, тип данных coeff является также двойным. В противном случае тип данных является одним.

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

    Ссылки

    [1] Зеленый, A.A., М. Берман, П. Свицер и доктор медицины Крэйг. “Преобразование для Упорядоченного расположения Многоспектральных Данных в терминах Качества изображения с Последствиями для Удаления шума”. Транзакции IEEE на Геонауке и Дистанционном зондировании 26, № 1 (январь 1988): 65–74. https://doi.org/10.1109/36.3001.

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

    | |

    Введенный в R2020a