Error while running Example of TrainAnSSDObjectDetector
1 view (last 30 days)
Show older comments
hello! please help me out to solve this
when i run the example "https://www.mathworks.com/help/vision/ref/trainssdobjectdetector.html#mw_aadddb45-dcc1-4968-8d1d-d9ec600dc23e", i receive following error:
Invalid transform function defined on datastore.
data = read(ds);
exampleDataFromDatastore = iReadNonEmptyOneRow(ds);
nnet.internal.cnn.GeneralDatastoreDispatcher( ...
dispatcher = nnet.internal.cnn.DataDispatcherFactory.createDataDispatcherMIMO( ...
trainingDispatcher = iCreateTrainingDataDispatcher(ds, mapping, trainedNet,...
[network, info] = vision.internal.cnn.trainNetwork(...
Caused by:
Applying the function '@(varargin)iSelectTrainingSamples(params,varargin{:})' to the 1st row of A generated the following error:
The value of 'bboxB' is invalid. Expected input to be finite.
Accepted Answer
Divya Gaddipati
on 16 Jun 2020
From the error "The value of 'bboxB' is invalid. Expected input to be finite.", it seems like one or more of the groundtruth bounding boxes have NaNs/Inf values. Make sure your groundtruths are valid and non-empty i.e., the values of the bounding boxes are finite, positive, non-fractional, non-NaN and should be within the image boundary with a positive height and width. You should either discard or fix the samples with invalid bounding boxes.
1 Comment
David
on 30 Nov 2022
Edited: David
on 30 Nov 2022
This answer is insufficient. There are obvious reasons for wanting to train on images that have no target in them. My observation is you get a ton of false positives in areas of images that the detector has never seen examples of.
I understand Mathworks has acknowledged this deficiency and is working on a FIX, can you give a better workaround or a date when we can actually make use of the SSD detector. As it is it's useless.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!