tf-faster-rcnnインストール、変更レコード
3526 ワード
今はTensorFlowを使っているので、このtf-faster-rcnnを探してfaster rcnnを実現しました.私のパソコンは新しくインストールされたので、インストール中に多くの問題に遭遇し、今記録しています.tf-faster-rcnnのgithubアドレスhttps://github.com/endernewton/tf-faster-rcnn
作者のreadmeはよく書けているので、そのままで大丈夫です.今、私が出会ったものを補充します.
1、cython、python-opencv、easydict、yamlをインストールします.import xxxは間違いを報告しなければいいです.2.GPUモデル3を修正し、テストスクリプトを実行するとき.スクリプト呼び出しの生成モデルはoutputにあり、デフォルトでは70000回反復されます.途中で停止したら、テストスクリプトを実行したいです.testスクリプトの反復値を変更するには.モデルが見つからないエラーが発生します
自分のデータを訓練するのに多くの問題が発生したのは、主に作者がどのファイルを修正したのかを与えず、今記録しているからだ.
1、自分のデータセットを作るネット上にはpascalデータセットを作るチュートリアルやコードがたくさんあるので、言うまでもありません.作成したデータセットはdataフォルダの下に置きます.
2、トレーニングの修正、コマンドスクリプトのテスト
ここで変更するのは反復回数です
3、スーパーパラメータの修正
config.pyでは学習率や運動量などのスーパーパラメータを変更できます.
4、pascal_を修正するvoc.py.
pascal_の変更voc.pyのカテゴリ
5、demoを修正する.py
ここでは(1)NETS名の変更が2箇所あります.cpktファイルの数は、モデルを生成する反復回数と一致しなければなりません.そうしないと、ファイルが見つかりません.
(2)main関数でカテゴリ数を変更する.ここは2です.数字はカテゴリ+1のはずです.1は背景です.
6、修正が终わって、楽しく训练テストができました.
7、自分のデータセットを訓練またはテストする前に、著者のデータを一度訓練した.データサイズが一致しないエラーが報告される可能性があります.以前に訓練して生成したファイルを削除すればいいです.この点はよく分からなかった.私はこのような間違いに出会ったことがあります.この方法で解決しました.もしあなたがはっきりしたら、下に伝言を残して教えてください.
作者のreadmeはよく書けているので、そのままで大丈夫です.今、私が出会ったものを補充します.
1、pascal_vocトレーニング
1、cython、python-opencv、easydict、yamlをインストールします.import xxxは間違いを報告しなければいいです.2.GPUモデル3を修正し、テストスクリプトを実行するとき.スクリプト呼び出しの生成モデルはoutputにあり、デフォルトでは70000回反復されます.途中で停止したら、テストスクリプトを実行したいです.testスクリプトの反復値を変更するには.モデルが見つからないエラーが発生します
2、自分のデータセットでトレーニングする
自分のデータを訓練するのに多くの問題が発生したのは、主に作者がどのファイルを修正したのかを与えず、今記録しているからだ.
1、自分のデータセットを作るネット上にはpascalデータセットを作るチュートリアルやコードがたくさんあるので、言うまでもありません.作成したデータセットはdataフォルダの下に置きます.
2、トレーニングの修正、コマンドスクリプトのテスト
cd experiments/scripts/
vim train_faster_rcnn.sh
vim test_faster_rcnn.sh
ここで変更するのは反復回数です
case ${DATASET} in
pascal_voc)
TRAIN_IMDB="voc_2007_trainval"
TEST_IMDB="voc_2007_test"
STEPSIZE="[5000]"
ITERS=10000
ANCHORS="[8,16,32]"
RATIOS="[0.5,1,2]"
3、スーパーパラメータの修正
cd lib/model/
vim config.py
config.pyでは学習率や運動量などのスーパーパラメータを変更できます.
4、pascal_を修正するvoc.py.
cd lib/datasets
pascal_の変更voc.pyのカテゴリ
self._classes = ('__background__', # always index 0
'digital tube')
5、demoを修正する.py
cd tools/
ここでは(1)NETS名の変更が2箇所あります.cpktファイルの数は、モデルを生成する反復回数と一致しなければなりません.そうしないと、ファイルが見つかりません.
NETS = {'vgg16': ('vgg16_faster_rcnn_iter_10000.ckpt',),'res101': ('res101_faster_rcnn_iter_110000.ckpt',)}
DATASETS= {'pascal_voc': ('voc_2007_trainval',),'pascal_voc_0712': ('voc_2007_trainval+voc_2012_trainval',)}
(2)main関数でカテゴリ数を変更する.ここは2です.数字はカテゴリ+1のはずです.1は背景です.
net.create_architecture("TEST", 2,
tag='default', anchor_scales=[8, 16, 32])
6、修正が终わって、楽しく训练テストができました.
./experiments/scripts/train_faster_rcnn.sh 0 pascal_voc vgg16
7、自分のデータセットを訓練またはテストする前に、著者のデータを一度訓練した.データサイズが一致しないエラーが報告される可能性があります.以前に訓練して生成したファイルを削除すればいいです.この点はよく分からなかった.私はこのような間違いに出会ったことがあります.この方法で解決しました.もしあなたがはっきりしたら、下に伝言を残して教えてください.