我正在训练Faster-RCNN进行多类对象检测。我正在使用matlab内置函数trainFasterRCNNObjectDetector以及alexnet。该代码适用于单个对象,但当尝试多个对象时,它会显示"警告:删除了 3 个训练图像中的 2 个的无效边界框。训练数据中的以下行无效 边界框数据:"。这是因为某些图像不包含一个类,为此我只是放置了空括号。
%trainingData
%|---------------------|------------------|------------------|
%| Filename | Class 1 | Class 2 |
%|---------------------|------------------|------------------|
%| ' 0013.jpg' |[1, 141, 374, 158]| [] |
%|---------------------|------------------|------------------|
%
options = trainingOptions('sgdm', ...
'MaxEpochs', 5, ...
'MiniBatchSize', 1, ...
'InitialLearnRate', 1e-3, ...
'CheckpointPath', tempdir);
[detector, info] = trainFasterRCNNObjectDetector(trainingData, 'alexnet', options, ...
'NegativeOverlapRange', [0 0.3], ...
'PositiveOverlapRange', [0.6 1]);
此页面有帮助吗?
根据那里的答案,我认为您必须将图像对象的所有坐标作为训练数据表中的单个条目放置,并用分号分隔它们。