MATLAB Answers

faster r-cnnの入力画像について

11 views (last 30 days)
HY
HY on 17 Sep 2020
Commented: Kenta on 25 Sep 2020
今回、faster r-cnnで4step学習を試みている状態なのですが、1つ理解ができていないことがあり質問させていただきます。
まず、inputSizeが[32 32 3]であるcnnネットワークを事前学習させました。このネットワークをfaster r-cnnとして学習するさいに、オプションであるSmallestImageDimensionとして学習イメージをサイズ変更できるとあるのですが、このオプションを使用すると、入力画像がその設定した値にサイズ変更されてネットワークに流れるのでしょうか?その場合、inputSizeが合わなくなってしまうので、一度inputSizeをSmallestImageDimensionの値と同じにする必要があるのでしょうか。
ミニバッチを適用する際に、faster r-cnnですと入力画像を同じサイズに変更する必要があり、transformを使用してinputSize[32 32]に合わせるべきなのか、それともSmallestImageDimensionの値に合わせるべきなのかわかりません。
ここの兼ね合いがよく理解できずにいます。何かアドバイス、ご指摘いただければ幸いです。
どうぞよろしくお願いいたします。

  0 Comments

Sign in to comment.

Accepted Answer

Kenta
Kenta on 17 Sep 2020
こんにちは、ひとまず、両方試してみて、analyzeNetwork関数などで、ネットワーク構造をみてみてはいかがでしょうか?

  4 Comments

Show 1 older comment
Kenta
Kenta on 25 Sep 2020
こんにちは、返信が遅くなり申し訳ありません。SmallesetImageDimensionにすると一括して、全訓練データが32×32などにリサイズされるのではないでしょうか。700でエラーがでるのは、700より小さい画像サイズをもつ訓練データが存在するからで、32で、アンカーボックスがとても小さくなる理由は、縦(や横)の長さが32になるように、訓練データの各画像をそれだけ小さくしているから、ではないでしょうか?700でエラーが出る場合は、transformを使えばエラーを返さない気がします。
少し話はちがいますが、例えば同じカメラで同じように撮影すると、解像度も同じなのでこのような問題には直面しないと思うので、いろいろな画像が訓練データとしてあるのですね。縦32ピクセル、では非常に小さい気もしますが、それだけ撮影が難しい対象なのでしょうか?32といった、低い解像度がほとんどの場合だと32にリサイズするのがいいでしょうし、例外的に32が含まれて、ふつうは700×700とかが多いのであれば、その少数の低解像度画像は諦めるほうがいいのかもしれませんね。目的は、手持ちの画像で物体検出をしたいということと思うので、あとはお手持ちのデータの特性で、色々と作戦を変えたらよいのだと思います。
HY
HY on 25 Sep 2020
お返事ありがとうございます。学習データを集める際に携帯やアクションカメラなどサイズの違う学習データを集めています。別枠でも質問しましたが2017verでは勝手が違うようで困惑しています。色々とアドバイス大変ありがとうございます。提案されたことを一つ一つ試したいと思います。
Kenta
Kenta on 25 Sep 2020
なるほど、そういう場合は大変ですね。詳しく教えていただいありがとうございました。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!