exponenta event banner

hypermnf

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

    Описание

    пример

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

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

    пример

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

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

    Примечание

    Для выполнения этой функции требуется библиотека гиперспектральных изображений Toolbox™ обработки изображений. Можно установить библиотеку гиперспектральных изображений панели инструментов обработки изображений из проводника надстроек. Дополнительные сведения об установке надстроек см. в разделе Получение надстроек и управление ими.

    Примеры

    свернуть все

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

    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 Вычисляют полосы главных компонентов без центрирования спектральных полос в кубе входных данных.

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

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

    свернуть все

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

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

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

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

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

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

    Ссылки

    [1] Зеленый, A.A., М. Берман, П. Свицер и доктор медицины Крейг. «Преобразование для упорядочения многоспектральных данных с точки зрения качества изображения с последствиями для удаления шума». IEEE Transactions on Geoscience and Remote Sensing 26, No. 1 (январь 1988 года): 65-74. https://doi.org/10.1109/36.3001.

    Представлен в R2020a