リファレンス:https : //blog.csdn.net/la_fe_/article/details/81564420
https://blog.csdn.net/qq_31442743/article/details/81087346
既存のものに基づいてデータセットのトレーニングを続行する場合は、 https : //mp.csdn.net/postedit/102964648を参照してください。
1.データセット、トレーニング画像、検証画像、および対応するパス名のtxtファイルを準備します
fast-rcnnとは異なり、yoloはこのスクリプトvoc_label2.pyを実行して生成するためにいくつかのtxtファイルも必要です(トップリファレンスブログを参照)
D:\ software_engineer \ darknet \ darknet \ scripts \ VOCdevkit \ VOC2007 \ラベルも生成されますこのフォルダ
voc_label2.py:
1.voc.data(カテゴリの数、ステップ1の2つのtxtのパス、クラス名のパス、トレーニングファイルの場所)
以前のバッチとサブディビジョンは、トレーニング中にテスト中にコメントアウトされ、テスト中にトレーニング中にコメントアウトされました
filters = 30 // 最後のたたみ込み層のカーネルパラメーターの数を変更します。各yolo層の上に3つのたたみ込み層があります
//計算式は引き続き、独自のデータフィルターのカテゴリ数= num×(クラス+ coords + 1)= 5×(1 + 4 + 1)= 30
// YOLOv3 バージョンでは、filter = 3×(class + coords + 1)= 3×(1 + 4 + 1)= 18、つまり3 *(カテゴリの数+ 5)
アンカー= 1.08、1.19、3.42、4.41、6.63、11.38、9.42、5.11、16.62、10.52
Dで実行:\ software_engineer \ darknet \ darknet \ build \ darknet \ x64
./darknet検出器列D:/software_engineer/darknet/darknet/cfg/voc.data D:/software_engineer/darknet/darknet/cfg/yolov3.cfg
事前トレーニング済みモデルがある場合は、darknet.exeと同じフォルダーに配置し、手順の最後に事前トレーニング済みモデルの名前を追加します。例:darknet53.conv.74、
既存の方法でトレーニングする場合は、最後にトレーニング済みのファイル名を直接追加することはできません。次の文を実行して微調整を行い、yolov3_last.weightsをyolov3_last.conv.23に変更する必要があります。そうしないと、エラーが報告されます(ショー)
./darknet部分的なcfg / darknet19_448.cfg yolov3_last.weights yolov3_last.conv.23 23
次に、training。/ darknet Detector train Dを実行します:/software_engineer/darknet/darknet/cfg/voc.data D:/software_engineer/darknet/darknet/cfg/yolov3.cfg yolov3_last.conv.23
./darknet検出器テストD:/software_engineer/darknet/darknet/cfg/voc.data D:/software_engineer/darknet/darknet/cfg/yolov3.cfg D:/software_engineer/darknet/darknet/backup/yolov3_last.weights -i 0 -thresh 0.5 D:/ work_place /ドアロックプロジェクト/カウントプロジェクトの深層学習ターゲット認識/ VOCdevkit / VOC2007 / JPEGImages / 00089.jpg
yolov3_last.weightsはトレーニング済みのファイルです。バックアップで、パスを失いたくない場合は、darknet.exeと同じフォルダーにコピーできます。
(2)テストパラメーターを有効に変更してから、画像名を削除します(つまり、パスは画像セットフォルダーのパスです)。テストセットのデータをバッチテストして結果フォルダーに保存できます。txt形式であり、直感的ではありません。このバッチテストは、テストセットのみを実行します。
./darknet検出器のデモデータ/coco.data cfg / yolov3.cfg yolov3.weights video_003.avi
1. yolov3のテスト時のエラー:cudaエラー:メモリ不足darknet:./src/cuda.c:36:check_error:アサーション `0 'が失敗しました。
800回にトレーニングしたときに突然このエラーを報告しましたが、幸い、この時点ですでに収束し始めており、トレーニング結果を使用できます
2.バッチサイズを64に調整すると、トレーニング速度が非常に遅くなり、データセットのサイズに大きな関係がないように見えます。数万のvoc2007データセットのトレーニングは、独自の200データセットとほぼ同じ速度です。