我正在使用 glcm 方法进行特征提取。glcm 输出是“结构”类型,而我需要双精度类型的输出。
因此,我尝试使用下面显示的几个代码对其进行转换。
获取 Fetest1 代码:
srcFile = dir('D: datatest\*.png');
fetest1 = []; %or fetrain1
for b = 1:length(srcFile)
file_name = strcat('D:datatest\',srcFile(b).name);
B = imread(file_name);
% [fiturtest] = feature_extractor (B);
[g] = glcm (B);
[g] = struct2cell (g);
[fiturtest] = cell2mat (g); %fiturtrain
% [c] = CobaDCT (A);
% [fitur] = cobazigzag(c);
% arr(:,a) = fitur;
fetest1 = [fetest1 fiturtest]; %fiturtrain
% vectorname = strcat(file_name,'_array.mat');
end
save ('fetest1.mat','fetest1'); %fetrain1
获取 Fetrain1 代码:
srcFiles = dir('D:datatrain\*.png');
fetrain1 = [];
for a = 1:length(srcFiles)
file_name = strcat('D:datatrain\',srcFiles(a).name);
A = imread(file_name);
[fiturtrain] = feature_extractor (A);
% [c] = CobaDCT (A);
% [fitur] = cobazigzag(c);
% fiturtrain (:,a) = fiturtrain ;
fetrain1 = [fetrain1 fiturtrain];
% vectorname = strcat(file_name,'_array.mat');
end
save ('fetrain1.mat','fetrain1');
整个过程的输出是 fetrain1 和 fetest1 变量。我运行相同的代码来获取 fetest1 和 fetrain1,但 fetest1 是“双”类型,而 fetrain 是“复双”类型。
和
我需要将 fetrain1 从 'complex double' 类型转换为 'double' 类型,以便下一步使用该变量。使用神经网络方法的训练步骤。
任何建议将不胜感激。