MATLAB Answers

0

ドキュメンテーションの中の「Faster R-CNN 深層学習を使用したオ​ブジェクトの検出」に​示されたプログラムの​実行中に発生するエラ​ーについて

Asked by Ryousuke Imanishi on 2 Sep 2018
Latest activity Commented on by Ryousuke Imanishi on 7 Sep 2018
標記のプログラムおいて、ネットワークをこのプログラムの中で学習させるために、変数 doTrainingAndEval を true に設定して実行させたとき、
% Annotate detections in the image.
I = insertObjectAnnotation(I, 'rectangle', bboxes, scores);
のステップが終了した段階で、以下のような表示が出力されます。
******************************
Faster R-CNN オブジェクト検出器の学習が終了しました。
エラー: insertObjectAnnotation
LABELは空以外にする必要があります。
エラー: insertObjectAnnotation
エラー: insertObjectAnnotation
エラー: insertObjectAnnotation
エラー: fasterRCNNtrue (line 〇〇〇)
I = insertObjectAnnotation(I, 'rectangle', bboxes, scores);
******************************
このようなエラーが生じないようにする対応についてお教え下さい。

  0 Comments

Sign in to comment.

1 Answer

Answer by Tohru Kikawada on 3 Sep 2018

こちら の例を実行された際のエラーと仮定してお答えいたします。
ご提示のエラーは変数 socres が空になっているため発生しているようです。
下記のとおり、上流のコードで detect メソッドを使って車両を検出していますが、検出が正しくできていないようです。Faster R-CNNの学習モデル( detector )が正しく生成されているかご確認ください。
% Run the detector.
[bboxes, scores] = detect(detector, I);

  9 Comments

ご回答有難うございます。提供されたプログラム部分を下記のように挿入して走らせましたところ、すべての画像において検出さず、元の自動車の画像のみが表示されます。宜しくお願い致します。
%*********************************************** doTrainingAndEval = true;
if doTrainingAndEval % Set random seed to ensure example training reproducibility. rng(0);
% Train Faster R-CNN detector. Select a BoxPyramidScale of 1.2 to allow
% for finer resolution for multiscale object detection.
detector = trainFasterRCNNObjectDetector(trainingData, layers, options, ...
'NegativeOverlapRange', [0 0.3], ...
'PositiveOverlapRange', [0.6 1], ...
'BoxPyramidScale', 1.2);
else
% Load pretrained detector for the example.
detector = data.detector;
end
%
%**************************************************
% To quickly verify the training, run the detector on a test image.
%
images = cell(10,1);
for k = 1:10
% Read a test image.
I = imread(testData.imageFilename{k});
% Run the detector.
[bboxes,scores] = detect(detector,I);
% Annotate detections in the image.
if isempty(scores)
images{k} = I;
else
images{k} = insertObjectAnnotation(I,'rectangle',bboxes,scores);
end
end
figure, montage(images)
%
%**************************************************
Tohru Kikawada on 7 Sep 2018
ご連絡ありがとうございます。実行環境に差異に依存するなんらかの不具合の可能性がございます。
もし保守サービス有効なアカデミックライセンスまたはコマーシャルライセンスをご使用中でしたら、弊社技術サポート窓口(下記)のご利用もどうぞご検討ください。
お手数ですがよろしくお願いいたします。
種々ご検討していただき、有難うございました。ご提案に従って、技術サポート窓口を利用させていただきます。個人使用のため新たな費用発生に対応できないこと懸念しておりましたが、その必要が無いようですので、利用させていただきます。

Sign in to comment.