Simulinkへの​fasterRCNN​ObjectDete​ctorクラスの読み​込み方法について

1 次查看(过去 30 天)
上記のようなSimulinkブロックを作成し、matファイルに保存している学習済みのFaster R-CNN(fasterRCNNObjectDetectorクラス)をloadしようとしたのですが、以下のようなエラーが出ます。
そのほかFrom WorkspaceブロックやFrom Fileブロックを用いてロードしようとしても同様にサポートされていないとエラーが表示されます。
こちらのwebセミナーではSimulink上でFaster R-CNNが扱えるといった旨の解説がなされているのですが、具体的な読み込み方法についてご存知の方がいらしたらお教えください。

采纳的回答

Tohru Kikawada
Tohru Kikawada 2018-9-20
MATLAB Functionブロックの中ではコード生成可能な関数のみ記述ができます。
fasterRCNNObjectDetector はコード生成に対応していないため、MATLAB Functionブロックの中に直接記述することはできません。 coder.extrinsic を使って外部関数としてMATLAB側で実行するように宣言する必要があります。
具体的には下記のような記述になります。 coder.extrinsic 宣言した関数はコード生成はできませんのでご注意ください。
MATLAB Functionブロックの記述例:
function Iout = myFasterRCNNDetecter(I)
coder.extrinsic('detectFasterRCNN');
Iout = zeros(128,194,3,'uint8');
Iout = detectFasterRCNN(I);
end
MATLAB Functionブロックから呼び出す detectFasterRCNN.m の記述例:
function I = detectFasterRCNN(I)
persistent detector
if isempty(detector)
data = load('fasterRCNNVehicleTrainingData.mat');
detector = data.detector;
end
[bboxes,scores] = detect(detector,I);
if ~isempty(scores)
I = insertObjectAnnotation(I,'rectangle',bboxes,scores);
end
end
  1 个评论
Shuto Higashi
Shuto Higashi 2018-9-20
丁寧なご回答誠にありがとうございます。 無事動作を確認することができました。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 コンピューター ビジョンと Simulink 的更多信息

产品


版本

R2017b

Community Treasure Hunt

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

Start Hunting!