Clear Filters
Clear Filters

Dimensionality Reduction of Hyperspectral Image

1 view (last 30 days)
I have a hyperspectral dataset with the following dimensions. [21527 776 224]. i tried to read it into matlab using the multibandread function but i ran into memory issues. My code is this: close all; clear all clc
%%Real Dataset Test PRECISION='int16'; OFFSET=0; INTERLEAVE='bip'; BYTEORDER='ieee-be';
FILENAME_REF=('C:\Users\uos\Desktop\GPC\Images\data');
%INFO_HDR=('C:\Users\uos\Desktop\GPC\Images\header1.hdr');
% datafile=('C:\Users\uos\Desktop\GPC\Images\data'); % info=('C:\Users\uos\Desktop\GPC\Images\header.hdr'); % D=envidataread(datafile,info);
SIZE_REF=[21527, 776, 224];
I_REF=multibandread(FILENAME_REF,SIZE_REF,PRECISION,OFFSET,INTERLEAVE,BYTEORDER); the error i get is : Error using zeros Requested 224x776x21527 (27.9GB) array exceeds maximum array size preference. Creation of arrays greater than this limit may take a long time and cause MATLAB to become unresponsive. See array size limit or preference panel for more information.
Error in multibandread>readDiskFile (line 212) im = zeros(outputSize(1), outputSize(2), outputSize(3), info.outputClass);
Error in multibandread (line 148) im = readDiskFile(filename, info, ndx, readOrder); Please can you suggest or direct me towards a solution? many thanks

Answers (0)

Community Treasure Hunt

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

Start Hunting!