exponenta event banner

assignData

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

    Описание

    пример

    newhcube = assignData(hcube,row,column,band,data) назначает указанное data в гиперспектральный куб данных. Функция считывает куб данных, хранящийся в hypercube объект hcube, назначает новые данные спектральным полосам band в местоположениях, указанных row и columnи возвращает новый hypercube объект.

    Примечание

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

    Примеры

    свернуть все

    Считывание гиперспектральных данных из файла формата ENVI.

    hcube = hypercube('paviaU.dat');

    Нормализуйте значения отражательной способности к диапазону [0, 1].

    data = rescale(hcube.DataCube);

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

    newhcube = assignData(hcube,':',':',':',data);

    Укажите индексы строк и столбцов интересующей области (ROI). Присвойте всем индексам в ROI нулевое значение.

    row = 180:220;
    column = 125:160;
    newhcube = assignData(newhcube,row,column,':',0);

    Отображение исходной и измененной версий спектрального диапазона.

    fig = figure('Position',[0 0 800 500]);
    axes1 = axes('Parent',fig,'Position',[0.06 0.05 0.45 0.8]);
    imagesc(hcube.DataCube(:,:,10),'Parent',axes1);
    title('Original Data')
    colorbar
    axis off
    axes2 = axes('Parent',fig,'Position',[0.55 0.05 0.45 0.8]);
    imagesc(newhcube.DataCube(:,:,10),'Parent',axes2);
    title('Modified Data')
    colorbar
    axis off
    colormap gray  

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

    свернуть все

    Входные гиперспектральные данные, указанные как hypercube объект. DataCube имущества hypercube содержит гиперспектральный куб данных.

    Индексы строк куба данных, указанные как ':', положительное целое число или вектор положительных целых чисел.

    • Чтобы выбрать все строки в кубе данных, используйте ':'.

    • Чтобы выбрать определенную строку или строки, укажите индекс строки как положительное целое число или вектор положительных целых чисел соответственно. Если куб данных имеет размер M-by-N-by-C, все указанные значения индекса строки должны быть меньше или равны М. Чтобы задать диапазон индексов строк или индексов с регулярным интервалом, используйте colon оператор. Например, row = 1:10.

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

    Индексы столбцов куба данных, указанные как ':', положительное целое число или вектор положительных целых чисел.

    • Чтобы выбрать все столбцы в кубе данных, используйте ':'.

    • Чтобы выбрать определенный столбец или столбцы, укажите индекс столбца как положительное целое число или вектор положительных целых чисел соответственно. Если куб данных имеет размер M-by-N-by-C, все указанные значения индекса столбца должны быть меньше или равны N. Чтобы задать диапазон индексов столбцов или индексов с регулярным интервалом, используйте colon оператор. Например, column = 1:10.

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

    Номера спектральных диапазонов, указанные как ':', положительное целое число или вектор положительных целых чисел.

    • Чтобы выбрать все области в кубе данных, используйте ':'.

    • Чтобы выбрать определенную полосу или полосы, укажите номер полосы как положительное целое число или вектор положительных целых чисел соответственно. Если куб данных имеет размер M-by-N-by-C, все указанные значения номеров полос должны быть меньше или равны C. Чтобы задать диапазон номеров полос или чисел с регулярным интервалом, используйте colon оператор. Например, band = 1:10.

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

    Значения для назначения, заданные как скаляр, вектор, матрица или 3-D массив в зависимости от значений row, column, и band входные данные.

    Если row являетсяЕсли column являетсяЕсли band являетсяdata должно быть
    скалярскалярскалярскаляр
    Вектор М-элементаскалярскалярВектор строки M- элемента или матрица M-by-1 или массив M-by-1-by-1
    скалярВектор N-элементаскалярN- вектор столбца элемента или матрица 1-by-N или массив 1-by-N-by-1
    скалярскалярВектор С-элемента1-by-1-by-C массив
    Вектор М-элементаВектор N-элементаскалярМатрица M-by-N или массив M-by-N-by-1
    Вектор М-элементаВектор N-элементаВектор С-элементаМассив M-by-N-by-C

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

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

    свернуть все

    Вывод гиперспектральных данных, возвращаемых в виде hypercube объект.

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