始めよう!HALCONディープラーニング

imgLE01

HALCON最新バージョン18.11では、ディープラーニング機能として、「画像分類」「オブジェクト検出」「セグメンテーション」の3つの機能を提供しており、多くのお客様にご活用いただいております。

製品ページはこちら

まだHALCONディープラーニングを試していないお客様にもトライしていただけるよう、各機能を簡単に試せるサンプルプログラムを準備しました。本号から3回にわたって、サンプルプログラムをベースに、各機能の使い方を分かりやすくご紹介します。

本号ではディープラーニングを用いた「画像分類」のサンプルプログラムを紹介します。本号の最後で、サンプルプログラムのダウンロードが可能です。

是非HALCON Trial Kitをインストールし、お客様ご自身の画像を使って、ディープラーニングの性能をご確認ください。

まずは、【HALCON Trial Kit】にご登録ください

imgLE02

※ HALCON Trial Kitは、期間限定の評価ライセンスにより、HALCONを実際に扱いながらHALCONの特長的な機能を総合的に無償で体験・学習できる体験キットです。
3つのディープラーニング機能や多数の機能を紹介する、わかりやすいコメント付きのサンプルプログラム(適用事例集)があります。ぜひご確認ください。


画像分類 サンプルプログラムの活用手順

前準備: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)にご連絡ください。

imgLE03

手順1:データセットの作成
【画像分類】したいデータセットの作成を行います。【Training Images】 というフォルダを用意した後、【Training Images】 フォルダ直下に必要なフォルダを作成し、分類したい画像のデータセットごとに各フォルダに格納してください。

ここで、1つのフォルダが画像分類の1つのクラスに相当します。例えば、OKとNGの良否判定の場合は、【Training Images】 の直下に【OK】フォルダと【NG】フォルダを作成し、OK画像、NG画像をそれぞれのフォルダに格納します。

・【Training Images】 フォルダの下に、分類分けしたいクラスごとにフォルダを作成
・各フォルダにディープラーニング学習に使う画像をコピー

imgLE04

手順2:学習
データセットの準備ができたら、次に学習を実行します。
【Training Images】 フォルダと同じ場所にある 【deep_learning_sample.hdev】 を開くと、HDevelopが立ち上がり、画像分類のサンプルプログラムが実行できる状態になります。
F5ボタン(連続実行)を押し、学習を実行します。

imgLE05

・【deep_learning_sample.hdev】 を開く
・F5ボタン(連続実行)を押し実行

imgLE06

学習が始まると、グラフィックウィンドウに学習経過が描画されます。

imgLE07

imgLE08

手順3:バリデーション(学習結果の検証)
学習が終了すると、バリデーションデータに対する分類の内訳を確認できる【Confusion Matrix】 が表示されます。例えば、本来は【OK】なデータが、正しく【OK】と判断された数、誤って【NG】と判断された数、をそれぞれ確認できます。

正答率が目標に達しているのか、【NG】に関しては、間違えることなくすべての【NG】が【NG】と正しく判断されているのか、など、求める分類精度を実現できているかどうかを確認してください。

・【Confusion Matrix】 をもとにトレーニング精度を確認

imgLE09

imgLE10

手順4:パラメータ調整
学習に関して、HALCONでは以下の学習パラメータを調整できます。

●バッチサイズ(Batch Size)
 値が大きなほど、分類安定性が向上します。ただし、値を大きくするには多くの画像枚数が必要です。
●学習率(Learning Rate)
 誤差が減少しない場合は、大きな値に変更してください。
●モメンタム(Momentum)
 誤差が変化しない場合は、小さな値に変更してください。
●エポック数(Number of Epochs)
 誤差が収束しておらず、まだ下がりそうであれば、大きな値に変更してください。

・3 - 39行目を参照し、適宜、学習パラメータの調整行う
※パラメータ調整でご不明な点があれば、リンクスサポート(support@linx.jp)にご連絡ください。

imgLE11


画像分類 サンプルプログラム の ダウンロード

今回ご紹介した 画像分類のサンプルプログラムは以下よりダウンロードが可能です。
実際にご自身の環境・データを使って、HALCONディープラーニング機能をご活用ください。
また、ご不明な点・ご質問は リンクスサポート(support@linx.jp)にお問い合わせください。

サンプルプログラムダウンロードはこちら

※サンプルプログラムを実行するには、HALCON Progress 開発ライセンス あるいは HALCON 18.11 Steady (ディープラーニング機能あり) 開発ライセンス が必要です。
HALCON 18.11 Steady (ディープラーニング機能なし) 開発ライセンスでは動作させることができません。この機会にHALCONディープラーニング機能の評価をご希望の方は、HALCON営業担当(sales_halcon@linx.jp)にお問い合わせいただくか、冒頭でご紹介した【HALCON Trial Kit】(https://iiot.linx.jp/l/536772/2020-05-21/ph28z3)にご登録ください。


毎月開催 HALCONディープラーニングトレーニング

ディープラーニングトレーニングを東京・大阪で毎月開催しております。
HALCONディープラーニングの使用方法や各種事例なども紹介しており、ディープラーニングをご検討いただいている方や適用先をお考えの方など、幅広い方が受講されています。
是非ご参加ください。

HALCONディープラーニングトレーニング
開催場所:リンクスオフィス(東京)、TOOLSTARオフィス(大阪)
日程:5月17日(金)、6月26日(水)、7月19日(金)
時間:13時半~17時
お申込みはこちら


imgLE12

※LINX Express 配信の中止・アドレスの変更をご希望の方は、お手数ですがこちらよりお問い合わせください。