calculate the area of Estimate Anchor Boxes
5 views (last 30 days)
Show older comments
Hello, I was recently programmed in MATLAB to detect certain parts by yoloV4 ..and I reached the training stage to calculate the area of anchor boxes, at the beginning of the code for calculating it. it begin appear error, I don't know why
the code, the error in [anchors,meanIoU]
trainingDataForEstimation = transform(trainingData,@(data)preprocessData(data,inputSize));
numAnchors = 9;
[anchors,meanIoU] = estimateAnchorBoxes(trainingDataForEstimation, numAnchors);
the message error :-
92 [anchors,meanIoU] = estimateAnchorBoxes(trainingDataForEstimation, numAnchors);
Invalid transform function defined on datastore.
The cause of the error was:
Unable to perform assignment because the size of the left side is 1-by-3 and the size of the right side is 1-by-2.
Error in recognitionThree>preprocessData (line 220)
data(ii,2:4) = {I, Wboxes}
Error in recognitionThree>@(data)preprocessData(data,inputSize) (line 90)
trainingDataForEstimation = transform(trainingData,@(data)preprocessData(data,inputSize));
Error in matlab.io.datastore.TransformedDatastore/applyTransforms (line 723)
data = ds.Transforms{ii}(data);
Error in matlab.io.datastore.TransformedDatastore/read (line 235)
[data, info] = ds.applyTransforms(data, info);
Error in matlab.io.datastore.TransformedDatastore/readall (line 300)
data{end+1} = read(copyds); %#ok<AGROW>
Error in estimateAnchorBoxes>iReadallBoxes (line 270)
boxes = readall(ds);
Error in estimateAnchorBoxes>iCheckBoxesFromDatastore (line 215)
boxes = iReadallBoxes(ds);
Error in estimateAnchorBoxes>iParseInputs (line 168)
boxes = iCheckBoxesFromDatastore(datastore);
Error in estimateAnchorBoxes (line 136)
[boxes, numAnchors, params] = iParseInputs(datastore, numAnchors, varargin{:});
Error in recognitionThree (line 92)
[anchors,meanIoU] = estimateAnchorBoxes(trainingDataForEstimation, numAnchors);
0 Comments
Answers (1)
Walter Roberson
on 11 Feb 2023
Edited: Walter Roberson
on 11 Feb 2023
recognitionThree appears to be code you wrote. The code
data(ii,2:4) = {I, Wboxes}
appears to be your code. You are trying to assign a cell array of length 2 into an array that expects 3 elements.
If WBoxes is already a cell of length 2, then use
data(ii,2:4) = [I, Wboxes(:).'];
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!