我使用blockproc
将图像分割成10x10重叠图像块,我想提取这些块的特征,但是Matlab给出了错误。该任务的代码粘贴在此处。 Matlab错误是
Error in ==> blockproc at 214
output_block = userfunDispatcher(fun,input_struct,trim_border);
Error in ==> Main at 57
B1 = blockproc(g,[4 4],fun,'BorderSize',[3 3]); %[M + 2*V, N + 2*H]
代码:
fun=@(block_struct)feature_extraction(block_struct.data);
B=1 blockproc(g,[4 4],fun,'BorderSize',[3 3]);
特征提取功能代码
function features=feature_extraction(name_images)
[num_im,q]=size(name_images);
features=zeros(num_im,12);
for i=1:num_im
A=imread(name_images(i,:));
A=double(A);
%Normalization of the pixels intensity in [0, N_gray-1]
A=round((N_gray-1)*((A-min(A(:)))/(max(A(:))-min(A(:)))));
features(i,1)=mean2(A);
features(i,2)=std2(A);
features(i,3)=skewness(A(:));
features(i,4)=kurtosis(A(:));
end
请指导我它有什么问题,我该如何解决它。有没有其他方法可以做到这一点?
答案 0 :(得分:1)
您最好检查一下name_images
。 A=imread(name_images(i,:));
如果是结构而不是字符串,则可能导致错误。