Считайте данные из спектральной библиотеки ECOSTRESS
считывает спектральные данные только из файлов спектра ECOSTRESS, хранящихся в указанной директории, с заданным ключевым словом в именах их файлов.libData
= readEcostressSig(dirname
,keyword
)
Примечание
Эта функция требует библиотеки Image Processing Toolbox™ гиперспектральной визуализации. Можно установить библиотеку Image Processing Toolbox Hyperspectral Imaging Library из 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: [0x0 string]
Species: [0x0 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: [2110x1 double]
Reflectance: [2110x1 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 | Модуль режима спектральных измерений Спектральный режим измерения включает отражающую способность, пропускающую способность, транзитность и передачу. Единица модуля - процент. Это поле соответствует |
FirstXValue | Первое значение в первом столбце значений данных в файле спектра |
LastXValue | Последнее значение в первом столбце значений данных в файле спектра |
NumberofXValues | Общее количество значений данных в первом столбце файла спектра |
AdditionalInformation | Дополнительная информация о выборке Это поле включает информацию, которая не является частью спектральных данных. |
Wavelength | Значения длины волны, при которых измерялись отражения |
Reflectance | Значения отражательной способности, измеренные на каждой длине волны |
[1] Meerdink, Susan K., Simon J. Hook, Dar A. Roberts и Elsa A. Abbott. «Спектральная библиотека ECOSTRESS версии 1.0». Дистанционное зондирование окружения 230 (сентябрь 2019): 111196. https://doi.org/10.1016/j.rse.2019.05.015.
[2] Загрузите спектральную библиотеку ECOSTRESS: https://speclib.jpl.nasa.gov/download
hypercube
| sam
| sid
| spectralMatch
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.