オブジェクト検出のサンプルプログラムは、3つのプログラムで構成されています。
各プログラムについて手順に沿ってご紹介していきます。
【1】 Object Detection_Annotaion.hdev
学習用ラベルデータを作成するプログラムです。マウス操作でデータを作成可能です。
【2】 Object Detection_Training.hdev
作成したラベルデータを用いて、学習・評価を行うプログラムです。
【3】 Object Detection_Inference.hdev
学習したネットワークを使用して、オブジェクト検出を実行するプログラムです。
■
前準備:HALCONディープラーニングに必要な環境を用意
HALCONディープラーニングでは、学習にはGPUを、推論にはGPUあるいはCPUを使用します。今回紹介するHDevelopサンプルプログラムでは、学習も行いますので、GPUの準備をお願いします。
■ HALCON Trial Kit のご登録案内に従ってHALCON18,.11をインストール
・HALCON 18.11 (Steady あるいは Progress) をインストール
・HALCON 18.11 ディープラーニング用画像をインストール
■ HALCONディープラーニングのための環境のセットアップ・GPUをセットアップ
・CUDA10対応GPUグラフィックスドライバをインストール
※前準備でご不明な点があれば、リンクスサポート(support@linx.jp)にご連絡ください。
■
手順1:学習のためのラベルデータを作成
【オブジェクト検出】するためには、学習画像と検出する対象を囲った矩形情報(ラベルデータ)が必要です。
まずは、学習させる画像を【Training Images】 フォルダに格納してください。
続いて、【1. Object Detection_Annotation.hdev】を起動して、学習するクラスを定義します。
以下のプログラム部分を書き換えてください。以下の例では、Aクラス、Bクラス、Cクラス、…というクラスを生成することを意味しています。検出したい対象毎にクラスを用意します。書き換えが終わったら保存して一度プログラムを閉じます。
画像の準備と、学習させるクラスを決定できました。
【1. Object Detection_Annotation.hdev】 を使って、学習のためのラベルデータを作成していきます。プログラムを起動し、F5ボタン(連続実行)を押し、実行してください。
【Training Images】 フォルダに格納された画像が読み込まれ、右上に表示される案内に従って、作業を進めてください。
■
Deep Learning Tool 登場!!
MVTec社が提供するディープラーニングを効率的に活用するためのツールです。
継続的に機能拡張を行っていきます。バージョン 0.1 では、【オブジェクト検出】用のラベルデータを簡単に作成できます。お試しください。
◆■ Deep Learning Tool のダウンロードはこちら
■
手順2:学習
学習のためのデータセットの準備ができたら、次に学習を実行します。
【2. Object Detection_Training.hdev】 を起動し、F5ボタン(連続実行)を押し、実行してください。
学習が始まると、グラフィックスウィンドウに学習の経過が表示されます。
■
手順3:バリデーション(学習結果の検証)
学習が終了すると、バリデーションデータに対する分類の内訳が表示されます。
学習結果の精度を確認してください。
■
手順4:パラメータ調整
学習に関して、HALCONでは以下の学習パラメータを調整できます。
●バッチサイズ(Batch Size): 1回の学習で使用する画像枚数で、GPUメモリサイズに応じて調整
●学習率(Learning Rate): 学習の強制力を調整
●モメンタム(Momentum): 勾配降下の経路を滑らかにする度合いを調整
●エポック数(Number of Epochs): 全ての学習データを繰り返し実行する回数
●正則化(Weight Priority): 過学習を抑制するパラメータ
●フィーチャーピラミッドレベル(Feature Pyramid Level): 抽出する特徴の大まかなサイズを設定
●サブスケール(SubScale): 学習する矩形に対するサイズの許容値を調整
●アスペクト比(Aspect Ratios): 検出対象物のアスペクト比を調整
【2. Object Detection_Training.hdev】 の25 - 57行目を参照し、適宜、学習パラメータの調整行ってください。
※パラメータ調整でご不明な点があれば、リンクスサポート(support@linx.jp)にご連絡ください。
■
手順5:オブジェクト検出の実行
【3. Object Detection_Inference.hdev】 起動して、テスト画像に対してオブジェクト検出を実行します。
実行の前に、設定を行います。
・8行目で、テスト画像へのパスを設定してください
・15~18行目で、オブジェクト検出実行用パラメータを設定してください
・21行目で、CPU / GPU 実行の切り替えを適宜行ってください
F5ボタン(連続実行)を押し、実行してください。
結果が以下のように表示されます。
|