hyperspectral imaging signature plot

조회 수: 8 (최근 30일)
Alexai
Alexai 2022년 9월 18일
답변: Mandar 2023년 2월 9일
I have hyperspectral imaging raw data.
How can I get like this plot (reflectance, wavelength)
  댓글 수: 3
Alexai
Alexai 2022년 9월 18일
I have raw data(including hdr file)
But I want to know related code.
Rik
Rik 2022년 9월 18일
You didn't answer my question. Have a read here and here. It will greatly improve your chances of getting an answer.
You can also have a look at the answer Sulaymon posted.

댓글을 달려면 로그인하십시오.

답변 (3개)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2022년 9월 18일
It can be obtained with the following steps:
(1) Import your HSI data into MATLAB. In other words, read your hypespectral images. You may use any available apps or HSI data reader apps, or 3rd party developed toolboxes, like this one: https://www.mathworks.com/matlabcentral/fileexchange/61630-matlab-hyperspectral-toolbox
(2) Just plot using plot() command, for instance.
(3) If your HSI data are noisy, you can smooth them by using smooth() or smoothdata(), sgolayfilt().

Image Analyst
Image Analyst 2022년 9월 18일
Read your images into a 3-D array, then do this:
image3d = rand(100, 100, 32); % Create sample data.
[rows, columns, numChannels] = size(image3d)
figure;
hold on;
for row = 1 : rows
fprintf('Plotting spectra from row #%d of %d.\n', row, rows)
for col= 1 : columns
thisSpectra = squeeze(image3d(row, col, :));
plot(thisSpectra, '-');
end
% Update plot
if mod(row, 20) == 0 || row == 1
caption = sprintf('Spectra 1 though %d.\n', row * columns);
title(caption);
xlabel('Wavelength (nm)');
ylabel('Reflectance');
drawnow;
end
end
grid on;
xlabel('Wavelength');
ylabel('Reflectance (nm)');
fprintf('Done plotting %d spectra.\n', rows * columns)

Mandar
Mandar 2023년 2월 9일
Install the hyperspectral imaging library from this link. Use “hypercube” function to read the hyperspectral data. The function returns the hypercube object. The “DataCube” property of the object holds the hyperspectral data in 3-D numeric array. Access the data and use “plot” function to get the reflectance values on Y-axis for respective wavelengths on X-axis.

카테고리

Help CenterFile Exchange에서 Hyperspectral Image Processing에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by