exponenta event banner

smileMetric

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

    Описание

    пример

    [oxystd,carbonstd,oxyderiv,carbonderiv] = smileMetric(hcube) вычисляет средние производные в колонке и их стандартные отклонения для признаков поглощения кислорода и диоксида углерода в наборе гиперспектральных данных. Эти значения можно использовать для обнаружения спектрального эффекта улыбки в наборе гиперспектральных данных. Дополнительные сведения см. в разделе Индикаторы улыбки.

    Примечание

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

    Примеры

    свернуть все

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

    hcube = hypercube('EO1H0440342002212110PY_cropped.dat');

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

    [oxystd,carbonstd,oxyderiv,carbonderiv] = smileMetric(hcube);

    Выполните уменьшение спектральной улыбки, используя метод на основе преобразования с максимальной долей шума (MNF).

    correctedData = reduceSmile(hcube,'Method','MNF');

    Вычислите средние значения производных в столбце и их стандартные отклонения для характеристик поглощения кислорода и диоксида углерода в гиперспектральном наборе данных с поправкой на улыбку correctedData.

    [noxystd,ncarbonstd,noxyderiv,ncarbonderiv] = smileMetric(correctedData);

    Постройте график средних значений производных в столбце характеристики поглощения кислорода для обоих нескорректированных гиперкубов hcube и гиперкуб с поправкой на улыбку correctedDataи отобразить их стандартные отклонения.

    figure
    plot(oxyderiv,'LineWidth',2)
    hold on
    plot(noxyderiv,'LineWidth',2)
    hold off
    axis tight
    grid on
    xlabel('Cross-track positions (Columns)')
    ylabel('Derivatives for oxygen absorption features')
    legend({'Before smile correction','After smile correction'},'Location','northwest');
    annotation(gcf,'textarrow',[0.4 0.4],[0.6 0.5],...
        'String',['Standard deviation = ' num2str(oxystd)]);
    annotation(gcf,'textarrow',[0.7 0.7],[0.3 0.2],...
        'String',['Standard deviation = ' num2str(noxystd)]);

    Постройте график средних значений производных в столбце характеристики поглощения диоксида углерода для обоих нескорректированных гиперкубов hcube и гиперкуб с поправкой на улыбку correctedDataи отобразить их стандартные отклонения.

    figure
    plot(carbonderiv,'LineWidth',2)
    hold on
    plot(ncarbonderiv,'LineWidth',2)
    hold off
    axis tight
    grid on
    xlabel('Cross-track positions (Columns)')
    ylabel('Derivatives for carbon-dioxide absorption features')
    legend({'Before smile correction','After smile correction'},'Location','southwest');
    annotation(gcf,'textarrow',[0.4 0.4],[0.7 0.85],...
        'String',['Standard deviation = ' num2str(carbonstd)]);
    annotation(gcf,'textarrow',[0.7 0.7],[0.3 0.45],...
        'String',['Standard deviation = ' num2str(ncarbonstd)]);

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

    свернуть все

    Входные гиперспектральные данные, указанные как hypercube объект. DataCube имущества hypercube объект сохраняет гиперспектральный куб данных. Для расчета среднего значения в колонке производных признаков поглощения кислорода и диоксида углерода hypercube объект должен иметь максимальную половину ширины (FWHM) значения в Metadata собственность.

    Примечание

    • Для вычисления среднего значения в столбце производных признаков поглощения кислорода входные гиперспектральные данные должны содержать данные в диапазоне длин волн 760-785 нм в видимом и ближнем инфракрасном диапазоне (ВНИР).

    • Для вычисления среднего значения в столбце производных признаков поглощения диоксида углерода входные гиперспектральные данные должны содержать данные в диапазоне длин волн коротковолнового инфракрасного диапазона (SWIR) 2010 - 2025 нм.

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

    свернуть все

    Колонка означает производные для признаков поглощения кислорода, возвращаемые в виде N-элементного вектора ряда. N - количество столбцов во входном гиперспектральном кубе данных. Если входной гиперспектральный куб данных имеет тип double, то выходной вектор имеет тип данных double. В противном случае тип данных выходного вектора будет single.

    Колонка означает производные для признаков поглощения диоксида углерода, возвращаемые в виде вектора строки N-элемента. N - количество столбцов во входном гиперспектральном кубе данных. Если входной гиперспектральный куб данных имеет тип double, то выходной вектор имеет тип данных double. В противном случае тип данных выходного вектора будет single.

    Стандартное отклонение столбца означает производные для признаков поглощения кислорода, возвращаемые как скаляр. Этот скаляр можно использовать для обнаружения наличия спектрального эффекта улыбки в гиперспектральных данных. Если значение oxystd низкая, то шансы на то, что данные будут иметь эффект улыбки, меньше в диапазоне VNIR.

    Стандартное отклонение столбца означает производные для характеристик поглощения диоксида углерода, возвращаемые в виде скаляра. Этот скаляр можно использовать для обнаружения наличия спектрального эффекта улыбки в гиперспектральных данных. Если значение carbonstd низкая, то шансы на то, что данные будут иметь эффект улыбки, меньше в диапазоне SWIR.

    Подробнее

    свернуть все

    Индикаторы улыбки

    Эффект улыбки возникает, когда гиперспектральные данные содержат значительную поперечную кривизну с нелинейными возмущениями вдоль спектрального измерения. Эти нелинейные нарушения возникают только в данных, собранных с помощью гиперспектральных датчиков push-broom, таких как Hyperion EO-1 и SEBASS. Основываясь на [1], можно обнаружить перекрестные изменения в характеристиках поглощения кислорода и диоксида углерода благодаря возможному эффекту улыбки, рассчитав первые производные изображений полос кислорода и диоксида углерода. Первую производную смежных полос В 'вычисляют с использованием изображения полосы поглощения B1 и изображения последующей полосы B2, используя уравнение:

    B '= B2 B1FWHM ve,

    где, FWHM - средняя FWHM двух полос B1 и B2. Этот расчет производных применим как к изображениям полос поглощения кислорода, так и диоксида углерода. Средние значения кислорода и производных диоксида углерода в колонке могут указывать на перекрестную нелинейность, вызванную спектральным эффектом улыбки.

    • Нелинейное, поперечно-дорожечное среднее значений производных признаков поглощения кислорода указывает спектральный эффект улыбки в спектре VNIR.

    • Нелинейное, поперечно-дорожечное значение в столбце значений производных признаков поглощения диоксида углерода указывает спектральный эффект улыбки в спектре SWIR.

    Ссылки

    [1] Дадон, Алон, Эяль Бен-Дор и Арнон Карниели. «Использование вычислений производных и преобразования минимальной доли шума для обнаружения и коррекции эффекта спектральной кривизны (улыбки) в гиперионных изображениях». IEEE Transactions on Geoscience and Remote Sensing 48, No. 6 (июнь 2010 года): 2603-12. https://doi.org/10.1109/TGRS.2010.2040391.

    См. также

    |

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