This is my coding done to read all images from a folder and allow each image to perform a list of feature extraction function and then export each value to excel sheet. But unfortunately my coding shoes value of m = 16(no of images in the folder) but only gives values for one image. Only 6 values(6 features extracted) is exported to excel sheet instead of 96 values. How do i fix this?
Dir = 'C:\Users\Administrator\Desktop\Tinna\PROJECT\soil_jpg\DataSet';images = dir(fullfile(Dir,'*.jpg'));for m = 1 : length(images) Img = imread(fullfile(Dir,images(m).name)); Img = imadjust(Img,stretchlim(Img)); Img = imresize(Img,[256,256]); hsvHist = hsvHistogram(Img); autoCorrelogram = colorAutoCorrelogram(Img); color_moments = colorMoments(Img); % for gabor filters we need gray scale image
img = double(rgb2gray(Img))/255; [meanAmplitude, msEnergy] = gaborWavelet(img, 4, 6); % 4 = number of scales, 6 = number of orientations
wavelet_moments = waveletTransform(Img); Feature_Vector = [hsvHist autoCorrelogram color_moments meanAmplitude msEnergy wavelet_moments]; whos Feature_Vector F1 = mean2(hsvHist(:)); F2 = mean2(autoCorrelogram(:)); F3 = mean2(color_moments(:)); F4 = mean2(meanAmplitude(:)); F5 = mean2(msEnergy(:)); F6 = mean2(wavelet_moments(:));endxlswrite('testdata.xlsx',[F1 F2 F3 F4 F5 F6]);
Best Answer