2016-12-27 13 views
1

私は、カスタムデータセット(約3000イメージ、背景を含め7つの異なるクラス、)、およびこれらのチュートリアルを以下にPY-速いrcnnで遊んでいます:速いRCNNのバウンディングボックス/画像正規

https://github.com/zeyuanxy/fast-rcnn/blob/master/help/train/README.md(ファストRCNNチュートリアル) https://github.com/deboc/py-faster-rcnn/tree/master/help(高速RCNNチュートリアル)

私はVGG16ネットワークでend2endソリューションを使用しています。私はいくつかの質問を持っているので、すべてが正常に動作します は、私の結果を期待:画像にし、BBOX注釈に必要とされている正規化はどのような

  • これは前の質問と似ています。設定オプションはBBOX_NORMALIZE_TARGETSとBBOX_NORMALIZE_TARGETS_PRECOMPUTEDの2つです。トレーニングの前に平均と標準を計算し、これらのオプションをbbox正規化に使用する必要がありますか?
  • cls_scoreおよびbbox_predレイヤー(このスレッドに従う:https://github.com/rbgirshick/py-faster-rcnn/issues/1)でnum_outputを変更しましたが、end2endソリューションではrpn_cls_scoreとrpn_bbox_predレイヤーもあります。これらのnum_outputsも変更する必要がありますか?もし私がしなければならない場合、どのように私は7クラスの出力の数を計算することができますか?

答えて

2

いいえ、何も事前計算する必要はありません。 lib/roi_data_layer/roidb.pyでは、BBOX_NORMALIZE_TARGETS_PRECOMPUTEDをFalseに設定すると、データセットの平均と標準偏差が計算されます。そうでない場合は、lib/fast_rcnn/config.pyで指定されたデフォルト値が使用されます。 RPNは、クラス数には無関心です。これは、オブジェクトを含む領域を陽性として扱い、それ以外はすべて陰性として扱います。

+0

ありがとうございます! BBOX_NORMALIZE_TARGETS_PRECOMPUTEDをfalseに設定しようとしましたが、アサーションエラーが発生しました: "ファイル" /home/spirit/py-faster-rcnn/tools/../lib/fast_rcnn/train.py "、行35、__init__ assert cfg.TRAIN.BBOX_NORMALIZE_TARGETS_PRECOMPUTED AssertionError " – Norbert

+0

アサーションが発生し、コメントがあるコードを調べました。"#RPNは先験的に計算するための固定統計値# がないため、事前計算された正規化しか使用できません " – Norbert

+0

BBOX_NORMALIZE_TARGETSをFalseに設定します。これは真です。とにかく、これらのことはRPNには必要ありません(選択的検索のような他のアルゴリズムからの地域提案がある場合にのみ必要です)。すべての正規化コードをコメントアウトしても機能します。 faster-rcnnのためのすべての正規化は、RPNをトレーニングするためのgenerate_anchors、anchor_target_layer、および検出器のトレーニングのためのproposal_target_layerおよびproposal_layerで行われます。これらのファイルはRPNフォルダにあります。 – Bharat

関連する問題