Считайте данные из спектральной библиотеки ECOSTRESS
считывает спектральные данные только из тех файлов спектра ECOSTRESS, хранивших в заданной директории с заданным ключевым словом в их именах файлов.libData
= readEcostressSig(dirname
,keyword
)
Примечание
Эта функция требует Image Processing Toolbox™ Гиперспектральная Библиотека Обработки изображений. Можно установить Image Processing Toolbox Гиперспектральная Библиотека Обработки изображений из Add-On Explorer. Для получения дополнительной информации об установке дополнений, смотрите, Получают и Управляют Дополнениями.
Задайте имена файлов спектра, чтобы читать из спектральной библиотеки ECOSTRESS как массив ячеек из символьных векторов. Задайте полный путь к файлу каждого файла спектра.
ecostressfiles = [{'soil.utisol.hapludult.none.all.87p707.jhu.becknic.spectrum.txt'},... {'water.seawater.none.liquid.tir.seafoam.jhu.becknic.spectrum.txt'},... {'vegetation.tree.eucalyptus.maculata.vswir.jpl087.jpl.asd.spectrum.txt'},... {'manmade.road.tar.solid.all.0099uuutar.jhu.becknic.spectrum.txt'}];
Считайте и отобразите данные из заданных файлов спектра ECOSTRESS. Функция возвращается, массив структур со строкой для каждого задал файл спектра ECOSTRESS. Каждая строка хранит спектральные данные, считанные из связанного файла.
libData = readEcostressSig(ecostressfiles)
libData=1×4 struct array with fields:
Name
Type
Class
SubClass
ParticleSize
Genus
Species
SampleNo
Owner
WavelengthRange
Origin
CollectionDate
Description
Measurement
FirstColumn
SecondColumn
WavelengthUnit
DataUnit
FirstXValue
LastXValue
NumberOfXValues
AdditionalInformation
Wavelength
Reflectance
⋮
Извлеките детали спектральных данных второго файла из массива структур.
libData(2)
ans = struct with fields:
Name: "Sea Foam"
Type: "Water"
Class: "Sea Water"
SubClass: "none"
ParticleSize: "Liquid"
Genus: [0×0 string]
Species: [0×0 string]
SampleNo: "seafoam"
Owner: "Dept. of Earth and Planetary Science, John Hopkins University"
WavelengthRange: "TIR"
Origin: "JHU IR Spectroscopy Lab."
CollectionDate: "N/A"
Description: "Sea foam water. Original filename FOAM Original ASTER Spectral Library name was jhu.becknic.water.sea.none.liquid.seafoam.spectrum.txt"
Measurement: "Directional (10 Degree) Hemispherical Reflectance"
FirstColumn: "X"
SecondColumn: "Y"
WavelengthUnit: "micrometer"
DataUnit: "Reflectance (percent)"
FirstXValue: "14.0112"
LastXValue: "2.0795"
NumberOfXValues: "2110"
AdditionalInformation: "none"
Wavelength: [2110×1 double]
Reflectance: [2110×1 double]
Извлеките коэффициент отражения и значения длины волны из спектральных данных второго файла.
reflectance = libData(2).Reflectance; wavelength = libData(2).Wavelength;
Постройте спектральную подпись с помощью значений коэффициента отражения и длины волны.
figure plot(wavelength,reflectance) title(['Spectra of ' libData(2).Name]) xlabel('Wavelength') ylabel('Reflectance Value')
Задайте полный путь директории, которая содержит файлы спектра ECOSTRESS.
fileroot = matlabshared.supportpkg.getSupportPackageRoot(); dirname = fullfile(fileroot,'toolbox','images','supportpackages','hyperspectral','hyperdata','ECOSTRESSSpectraFiles');
Считайте и отобразите спектральные данные из всех файлов в директории. Функция возвращает массив структур со строкой для каждого файла спектра ECOSTRESS в заданной директории.
libData = readEcostressSig(dirname)
libData=1×15 struct array with fields:
Name
Type
Class
SubClass
ParticleSize
Genus
Species
SampleNo
Owner
WavelengthRange
Origin
CollectionDate
Description
Measurement
FirstColumn
SecondColumn
WavelengthUnit
DataUnit
FirstXValue
LastXValue
NumberOfXValues
AdditionalInformation
Wavelength
Reflectance
⋮
Извлеките детали спектральных данных 15-го файла.
libData(15)
ans = struct with fields:
Name: "Tap water"
Type: "Water"
Class: "Tap Water"
SubClass: "none"
ParticleSize: "Liquid"
Genus: [0×0 string]
Species: [0×0 string]
SampleNo: "tapwater"
Owner: "Dept. of Earth and Planetary Science, John Hopkins University"
WavelengthRange: "All"
Origin: "JHU IR Spectroscopy Lab. Original filename TAPWATER."
CollectionDate: "N/A"
Description: "Tap water. Original ASTER Spectral Library name was jhu.becknic.water.tap.none.liquid.tapwater.spectrum.txt"
Measurement: "Directional (10 Degree) Hemispherical Reflectance"
FirstColumn: "X"
SecondColumn: "Y"
WavelengthUnit: "micrometer"
DataUnit: "Reflectance (percent)"
FirstXValue: "14.0110"
LastXValue: "0.4000"
NumberOfXValues: "2844"
AdditionalInformation: "none"
Wavelength: [2844×1 double]
Reflectance: [2844×1 double]
Задайте полный путь директории, которая содержит файлы спектра ECOSTRESS.
fileroot = matlabshared.supportpkg.getSupportPackageRoot(); dirname = fullfile(fileroot,'toolbox','images','supportpackages','hyperspectral','hyperdata','ECOSTRESSSpectraFiles');
Считайте и отобразите спектральные данные файлов спектра ECOSTRESS с определенным ключевым словом в их именах файлов. Функция возвращает массив структур со строкой для каждого файла спектра в заданной директории с ключевым словом в их именах файлов.
keyword = 'water';
libData = readEcostressSig(dirname,keyword)
libData=1×3 struct array with fields:
Name
Type
Class
SubClass
ParticleSize
Genus
Species
SampleNo
Owner
WavelengthRange
Origin
CollectionDate
Description
Measurement
FirstColumn
SecondColumn
WavelengthUnit
DataUnit
FirstXValue
LastXValue
NumberOfXValues
AdditionalInformation
Wavelength
Reflectance
⋮
filenames
— Имена файлов ECOSTRESSИмена файлов ECOSTRESS в виде вектора символов, строкового скаляра, массива ячеек из символьных векторов или вектора из строк. Чтобы считать данные из нескольких файлов ECOSTRESS одновременно, используйте массив ячеек из символьных векторов или вектор из строк. Функция считывает данные из файлов в порядке, в котором вы задаете их. Если файлы ECOSTRESS не находятся в текущей папке, необходимо задать полный путь каждого файла.
Типы данных: char |
string
dirname
— Имя директорииИмя директории, содержащей файлы ECOSTRESS в виде вектора символов или строкового скаляра. Если директория не находится в текущей папке, необходимо задать полный путь директории.
Типы данных: char |
string
keyword
— Ключевое слово поиска файлаКлючевое слово поиска файла в виде вектора символов или строкового скаляра. Функция возвращает данные только из файлов спектра ECOSTRESS с заданным ключевым словом в их именах файлов. Вы не можете задать несколько ключевых слов одновременно.
Типы данных: char |
string
libData
— Спектральные данные из файлов ECOSTRESSСпектральные данные из файлов ECOSTRESS, возвращенных как 1 K массивом структур. K является количеством файлов спектра, считанных функцией. Каждый элемент массива структур имеет 24 поля, которые содержат информацию о заголовке файлов спектра.
Имена полей | Описание |
Name | Имя измеренной выборки или материала |
Type | Тип выборки, такой как "mineral" , "rock" , "tree" , или "manmade" |
Class | Класс демонстрационного типа Например, если демонстрационным типом является |
SubClass | Подкласс демонстрационного типа Это поле содержит пустой массив или |
ParticleSize | Размер частицы демонстрационного типа Это поле содержит пустой массив если |
Genus | Род выборки Это поле содержит пустой массив если |
Species | Разновидности выборки Это поле содержит пустой массив если |
SampleNo | Демонстрационный номер Это значение является идентификатором для связанной выборки. |
Owner | Владелец выборки |
WavelengthRange | Область значений длины волны измеренной выборки Значением должен быть |
Origin | Местоположение, из которого были получены данные |
CollectionDate | Дата, в которую была собрана выборка Это значение находится в |
Description | Описание измеренной выборки Это поле предоставляет дополнительную информацию о характеристиках выборки. |
Measurement | Спектральный режим измерения раньше измерял выборку |
FirstColumn | Первый столбец значений данных в файле спектра |
SecondColumn | Второй столбец значений данных в файле спектра |
WavelengthUnit | Измерение модуля для спектральных длин волн выборок Значением для каждого демонстрационного типа является |
DataUnit | Модуль спектрального режима измерения Спектральный режим измерения включает коэффициент отражения, коэффициент пропускания, transittance, и передачу. Модуль является процентом. Это поле соответствует |
FirstXValue | Первое значение в первом столбце значений данных в файле спектра |
LastXValue | Последнее значение в первом столбце значений данных в файле спектра |
NumberofXValues | Общее количество значений данных в первом столбце файла спектра |
AdditionalInformation | Дополнительная информация о выборке Это поле включает информацию, которая не является частью спектральных данных. |
Wavelength | Значения длины волны, в которых были измерены коэффициенты отражения |
Reflectance | Значения коэффициента отражения, измеренные в каждом длины волн |
[1] Meerdink, Сьюзен К., Саймон Дж. Хук, Дэр А. Робертс и Эльза А. Эбботт. “Спектральная Версия 1.0 Библиотеки ECOSTRESS”. Дистанционное зондирование Среды 230 (сентябрь 2019): 111196. https://doi.org/10.1016/j.rse.2019.05.015.
[2] Загрузите Спектральную Библиотеку ECOSTRESS: https://speclib.jpl.nasa.gov / загрузка
hypercube
| sam
| sid
| spectralMatch
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.