さんのDarknetを使って追加学習させてみました。さんのDarknetの場合はhttps://github.com/AlexeyAB/darknetが全てです。できるため、認識スピードがかなり向上できる他に、最近分かったことですが、学習の最適ポイントが掴みやすいなど、かなりの優れものでした(解説を良く読んでみればわかるのですが.....)。前回の学習ではtakesan.hatenablog.comジャンケンの3クラスのみの学習をさせたのですが、どうしてもグーが人間の顔と勘違いしやすい傾向がありました。元画像が赤外線カメラなので、そのような傾向があるかとは思いますが、新たに顔を追加学習させたら、さらに良い結果になりそうな気配です。「どうしたら追加学習できるのか?」ということが、今回のテーマです。顔がGooになってしまうことがある....のですが、顔データを追加学習させると、こうなります⇩この画像はLEPTON3.0はPI3に接続。Xavierで画像表示とジャンケン認識をさせてます。説明を書いてもかえって分かりにくくなるので、今回は要点のみとします。顔の動画を撮影して、2000枚程度の画像を作成した。中にあるpredefined_class.txtに4番目のクラス(今回はFace)を追加する。別のフォルダで顔のみをラベリングして作ったデータを、前回のデータフォルダにコピーする。前回のアノテーション済みの画像の中に顔が写っている場合は、追加指定を行う。入力ミスで思い当たりのないクラスが増えていることがある。自分で設定したクラスがひとりでにできていたら、前に遡って必ずその部分を消すことが必要。これをしないと、学習中意味不明のエラーまたはメモリオーバーが表示されて、悩まされることになる。外してビルドし直した。有効なのは、WEIGHTとHEIGHTの数値を大きくしてトレーニングすること。一般的には416x416。精度を上げるには608x608または832x832とする。yolov3の場合608x608で学習させると、私の環境ではメモリーオーバーで止まる。