How to read hyperspectral data without wavelenth data?

Dear All,
I have some hyperspectral data was produced by company Itres. Some temperature data is calculated from the average of all the spectral bands hence they do not have wavelength info and I cannot read them with
hypercube
function. Could someone suggest me a solution to read these data?

2 Comments

@Beata Szabo-Takacs Which file format is your hyperspectral data?
My hyperspectral data format is ".dat".

Sign in to comment.

 Accepted Answer

If you know the height, width, and number of spectral bands of your data, you can try using multibandread(_).
However, in order to use multibandread(_) apart from height, width, bands, you'll also need precision, header offset, interleave value and byte order of your data.
Below is one example, you can tweak these parameters to check if that works for you.
% Specify the parameters
precision = 'double';
headerOffset = 0;
interleave = 'bsq';
byteOrder = 'ieee-le';
height = 100;
width = 100;
bands = 256;
% Read the data
dataCube = multibandread('yourFile.dat', [height, width, bands], precision, headerOffset, interleave, byteOrder);

1 Comment

Thank you Subhadeep for your help! I modified the specific parameters to
% Specify the parameters
precision = 'float';
headerOffset = 0;
interleave = 'bsq';
byteOrder = 'ieee-le';
height = 1513;
width = 1393;
bands = 1;
and it works with multibandread function as you suggested.

Sign in to comment.

More Answers (0)

Products

Release

R2020b

Community Treasure Hunt

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

Start Hunting!