sharc

Выполните атмосферную коррекцию с помощью SHARC

Описание

пример

newhcube = sharc(hcube) возвращает атмосферно куб исправленных данных путем вычисления поверхностного сияния или поверхностных значений коэффициента отражения от входа гиперспектральные данные. Функция реализует метод спутникового гиперкуба атмосферной быстрой коррекции (SHARC), чтобы вычислить атмосферно откорректированные гиперспектральные данные.

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

Примечание

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

пример

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

Примеры

свернуть все

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

input = hypercube('EO1H0440342002212110PY_cropped.dat');

Определите плохие числа диапазона с помощью BadBands параметр в метаданных.

bandNumber = find(~input.Metadata.BadBands);

Удалите плохие диапазоны из куба данных.

input = removeBands(input,'BandNumber',bandNumber);

Преобразуйте цифровые числа в значения сияния при помощи dn2radiance функция.

hcube = dn2radiance(input);

Преобразуйте значения сияния в значения коэффициента отражения при помощи radiance2Reflectance функция.

hcube = radiance2Reflectance(hcube);

Вычислите атмосферно исправленные данные при помощи sharc функция.

newhcube = sharc(hcube);

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

inputImg = colorize(hcube,'Method','rgb','ContrastStretching',true);
outputImg = colorize(newhcube,'Method','rgb','ContrastStretching',true);

Отобразите расширенные от контраста изображения RGB входа и выхода атмосферно исправленные данные.

figure('Position',[0 0 700 800])
subplot('Position',[0 0.15 0.3 0.8])
imagesc(inputImg)
title('Input Radiometrically Calibrated Image')
axis off
subplot('Position',[0.45 0.15 0.3 0.8])
imagesc(outputImg)
axis off
title('Output Atmospherically Corrected Image')

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

input = hypercube('EO1H0440342002212110PY_cropped.dat');

Определите плохие числа диапазона с помощью BadBands параметр в метаданных.

bandNumber = find(~input.Metadata.BadBands);

Удалите плохие диапазоны из куба данных.

input = removeBands(input,'BandNumber',bandNumber);

Преобразуйте цифровые числа в значения сияния при помощи dn2radiance функция.

hcube = dn2radiance(input);

Преобразуйте значения сияния в значения коэффициента отражения при помощи radiance2Reflectance функция.

hcube = radiance2Reflectance(hcube);

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

newhcube = sharc(hcube,'DarkPixelLocation',[217 7]);

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

inputImg = colorize(hcube,'Method','rgb','ContrastStretching',true);
outputImg = colorize(newhcube,'Method','rgb','ContrastStretching',true);

Отобразите расширенные от контраста изображения RGB входа и выхода атмосферно исправленные данные.

figure('Position',[0 0 700 800])
subplot('Position',[0 0.15 0.3 0.8])
imagesc(inputImg)
title('Input Radiometrically Calibrated Image')
axis off
subplot('Position',[0.45 0.15 0.3 0.8])
imagesc(outputImg)
axis off
title('Output Atmospherically Corrected Image')

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

свернуть все

Введите гиперспектральные данные в виде hypercube объект. DataCube свойство hypercube объект содержит гиперспектральный куб данных. Пиксельные значения куба данных должны показать или сияние верхней части атмосферы (TOA) или значения коэффициента отражения TOA.

Если пиксельные значения являются цифровыми числами, используйте dn2radiance и dn2reflectance функции для вычисления сияния TOA и значений коэффициента отражения соответственно. Можно также использовать radiance2Reflectance функция для непосредственно вычислительных значений коэффициента отражения TOA от значений сияния.

Аргументы в виде пар имя-значение

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

Пример: ('AtmosphericModel','Tropical','AdjacencyWindow',7)

Атмосферная модель для вычисления оптической толщины общей атмосферы в виде разделенной запятой пары 'AtmosphericModel' и одно из этих значений:

  • '1962 US Standard' — Стандартные атмосферные параметры, которые заданы для атмосферы Земли, переключают широкий спектр температуры и давления. Это - типовая модель и может использоваться для атмосферной коррекции гиперспектральных данных, полученных в различных широтах и сезоны.

  • 'Tropical' — Атмосферные параметры областей в тропической зоне. Область значений широты тропической зоны - [-23 °. 45', 23 °. 45']. Используйте эту модель, если гиперспектральные данные собраны от тропической зоны.

  • 'Midlatitude Summer' — Атмосферные параметры областей в середине зоны широты в течение летнего сезона. Области значений широты для середины зон широты - [23 °. 45', 66 °. 55'] и [-66.5 °,-23.45']. Используйте эту модель, если гиперспектральные данные собраны от середины зон широты в течение лета. Можно знать сезон с даты приобретения, сохраненной как AcquistionTime в метаданных.

  • 'Midlatitude Winter' — Атмосферные параметры областей в середине зоны широты в течение зимнего сезона. Области значений широты для середины зон широты - [23 °. 45', 66 °. 55'] и [-66.5 °, 23.45']. Используйте эту модель, если гиперспектральные данные собраны от середины зон широты в течение зимы. Можно знать сезон с даты приобретения, сохраненной как AcquistionTime в метаданных.

  • 'Subarctic Summer' — Атмосферные параметры областей в субарктической зоне в течение летнего сезона. Области значений широты для субарктических зон - [66 °. 55', 90 °] и [-90 °,-66 °. 55'] степени. Используйте эту модель, если гиперспектральные данные собраны от субарктических зон в течение лета. Можно знать сезон с даты приобретения, сохраненной как AcquistionTime в метаданных.

  • 'Subarctic Winter' — Атмосферные параметры областей в субарктической зоне в течение зимнего сезона. Области значений широты для субарктических зон - [66 °. 55', 90 °] и [-90 °,-66 °. 55'] степени. Используйте эту модель, если гиперспектральные данные собраны от субарктических зон в течение зимы. Можно знать сезон с даты приобретения, сохраненной как AcquistionTime в метаданных.

Местоположение темного пикселя в виде разделенной запятой пары 'DarkPixelLocation' и вектор 1 на 2 формы [x y]. x и y являются пространственными координатами темного пикселя, который будет выбран от синего неопытного работника. Темный пиксель имеет низкое значение коэффициента отражения TOA и используем в вычислениях спектральная освещенность поверхности Земли.

По умолчанию, sharc функция выбирает пиксель минимального значения в синем неопытном работнике как темный пиксель. Обычно область значений длины волны (в микрометрах) для синего неопытного работника [0.45, 0.57]. Значения коэффициента отражения TOA в синем неопытном работнике больше всего затронуты атмосферным туманом. Следовательно, темный пиксель от синего неопытного работника выбран как пиксель кандидата для оценки атмосферных эффектов на гиперспектральных данных.

Размер окна для вычислительного эффекта смежности в виде разделенной запятой пары 'AdjacencyWindow' и положительный целочисленный скаляр. Значение показывает размер окна, сосредоточенного вокруг темного пикселя. Все пиксели, которые лежат в этом окне, используются для оценки эффекта смежности.

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

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

свернуть все

Атмосферно исправленные данные, возвращенные как hypercube объект. DataCube свойство hypercube объект содержит гиперспектральный куб данных. Пиксельные значения куба выходных данных являются поверхностным сиянием или поверхностными значениями коэффициента отражения в зависимости от входа.

  • Если пиксельные значения куба входных данных являются сияниями TOA, пиксельные значения атмосферно исправленных данных при выходе являются поверхностными значениями сияния.

  • Если пиксельные значения куба входных данных являются коэффициентами отражения TOA, пиксельные значения атмосферно исправленных данных при выходе содержит поверхностные значения коэффициента отражения.

Ссылки

[1] Katkovsky, Леонид, Антон Мартинов, Volha Siliuk, Димитрий Иванов и Александр Кохановский. “Быстро Атмосферный Метод Коррекции для Гиперспектральных Данных. Дистанционное зондирование 10, № 11 (28 октября 2018): 1698. https://doi.org/10.3390/rs10111698.

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

| |

Введенный в R2020b
Для просмотра документации необходимо авторизоваться на сайте