Index exceeds the number of array elements (1).

3 views (last 30 days)
I faced this error after performing some changes on the code. Any advices?
lgraph = yolov2Layers([128 128 3],numClasses,Anchors,lgraph,'relu_6');
Error using yolov2Layers>iReplaceImageInputLayer (line 298)
Index exceeds the number of array elements (1).
Error in yolov2Layers (line 112)
lgraph = iReplaceImageInputLayer(lgraph,params.ImageSize);
function lgraph = iReplaceImageInputLayer(lgraph,imageSize)
% Replace input size in image input layer.
idx = arrayfun(@(x)isa(x,'nnet.cnn.layer.ImageInputLayer'),...
lgraph.Layers);
imageInputIdx = find(idx,1,'first');
imageInput = vision.internal.cnn.utils.updateImageLayerInputSize(...
lgraph.Layers(imageInputIdx), imageSize);
lgraph = replaceLayer(lgraph,lgraph.Layers(imageInputIdx).Name,...
imageInput);
% Validate that replaced layer does not cause any issue.
analysis = nnet.internal.cnn.analyzer.NetworkAnalyzer(lgraph);
analysis.applyConstraints();
if any(isnan(analysis.LayerAnalyzers(2,1).Outputs.Size{1}))
error(message('vision:yolo:InvalidLayerSize', ...
mat2str(analysis.LayerAnalyzers(2,1).Inputs.Size{1}),...
mat2str([analysis.LayerAnalyzers(2,1).Inputs.Size{1}(1:2),...
analysis.LayerAnalyzers(2,1).Learnables.Size{1}(3)])));
end
end

Answers (1)

Sai Sri Pathuri
Sai Sri Pathuri on 10 Jul 2020
This error generally occurs when you access the index that is not present (or) more than the number of elements
For example,
A = [1,2,3,4,5,6];
If you try to access the 7th element of A, it gives this error including in bracket the actual number of elements in the array, which is 6 here
A(7)
Index exceeds the number of array elements (6).

Community Treasure Hunt

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

Start Hunting!