ランタイム

ランタイムは推論のみを行います。つまり、ツールは画像を処理することはできますが、ツールを変更したり、再学習させたりすることはできません。ツールの処理は、展開された本番環境で Deep Learning ツールを実行するために必要な最小機能です。

長所 短所
統合が簡単 ツールの再学習には有効な Deep Learning のライセンスが必要
パラメータはフリーズされており、アプリケーションのオペレータによるツールの変更は不可 アーキテクチャが複雑

 

Cognex VisionPro Deep Learning Deep Learning ツールのランタイムフェーズは、学習フェーズよりもシンプルです。ランタイムコンポーネントは以下で構成されています。

  • サンプリング
  • ニューラルネットワーク処理
  • 結果の形成
Note: ニューラルネットワーク処理と処理のための特徴のサンプリングの詳細については、「ニューラルネットワークの処理 (推論)」を参照してください。

 

ランタイムワークスペースとランタイム展開

ランタイムワークスペースは、画像またはデータベースを含まない設定ファイルであり、ストリームとツールのみを含んでいるため、完全なワークスペースの小型バージョンとなっています。この設定ファイルは、解析を実行する目的でライブラリに読み込むことができます。ランタイムワークスペースは、フロントラインでのランタイムの展開に使用されたり、VisionPro アプリケーションに送信されて統合され、一緒に使用されたりします。

 

ランタイム展開用のアプリケーションは次のとおりです。

  • アプリケーションのオペレータがツールを再学習させる必要はありません。
  • アプリケーションレシピを厳密に制御する必要のあるアプリケーション (つまり、医療アプリケーションや製薬アプリケーション)。
  • 低スピードまたは埋め込みプラットフォームでツール処理を実行する必要があり、学習が他のプラットフォームで行われるアプリケーション。
  • 複数ラインが同じアプリケーションレシピを使用する場合。
  • デモンストレーション、早期市場投入ソリューション、および概念実証アプリケーション。

 

ランタイムワークスペースの作成方法

画像を取り込んだ場合、VisionPro Deep Learning ツールを学習させ、この完全に学習させたツールをそのワークスペースと共にランタイムワークスペースとしてエクスポートできます。その後、ランタイムワークスペースはマシンビジョンアプリケーションで使用されます。これは、次の 3 つの個別のステップで行います。

  1. 画像をハードドライブから取り込み、VisionPro Deep Learning GUI にドロップする画像を VisionPro Deep Learning GUI に送るには、API を経由するか、データベースに追加する方法を使用するか、手動で VisionPro Deep Learning GUI にドラッグアンドドロップします。
  2. ツールを学習させる
  3. 学習させたツールとそのワークスペースを新しいランタイムワークスペースとしてエクスポートし、ライブラリ内に読み込みます。これは手動で行うか、Deep Learning Library (DLL) 内でサーバからのワークスペースを取得する方法を使用して行うことができます。

     

    ランタイムワークスペースのエクスポート

     

    ランタイムワークスペース (.vrws) のエクスポート

Note: ランタイムワークスペースの詳細については、「ランタイムワークスペース」を参照してください。
Note: Deep Learning DLL は、特定のライセンス (VisionPro Deep Learning のライセンス) でのみ API を介した統合された学習をサポートしますが、VisionPro Deep Learning GUI を使用して新しいレシピを学習させることができます。

 

Deep Learning Library とサードパーティのアプリケーション

Deep Learning Library (Windows では DLL、vidi_xx.dll ファイル) は通常はサードパーティのアプリケーションを経由してアプリケーションに埋め込まれます。

 

DLL には次のような役割があります。

  • GPU を取り扱う
  • 画像を取り込み (メモリまたはハードドライブを経由)、XML 文字列を返す

ビジョンアプリケーションには次のような役割があります。

  • リモートワークスペースを DLL に読み込む
  • 画像を取り込む
  • 画像を DLL に送信する
  • 結果を解釈し、それに基づいて制御する
  • フィードバックをユーザに提供する

 

プログラミング言語 方法
.Net 名前空間ランタイム

Example.Runtime.GUI

Example.Runtime.Console.MultiGPU

.NET ラッパーは、結果を表示するために使用できる UI 要素を提供します。
C vidi_runtime_*

Example.Cpp.Runtime

Example.Cpp.Runtime.MultiGPU

 
Note: ランタイムワークスペースを API 経由で使用する方法の詳細については、「ランタイム API 処理ガイド」を参照してください。

 

Deep Learning GUI とサードパーティのアプリケーション

DLL は、特定のライセンス (VisionPro Deep Learning のライセンス) でのみ API を介した統合された学習をサポートしますが、VisionPro Deep Learning GUI を使用して新しいレシピを学習させることができます。

 

これは、次の 3 つの個別のステップで行います。

  1. 画像を取り込みます。
  2. 取り込んだ画像を API を経由するか、データベースに追加する方法を使用するか、手動で VisionPro Deep Learning にドラッグアンドドロップすることで、VisionPro Deep Learning GUI に送ります。
  3. ランタイムワークスペースをエクスポートし、DLL 内に読み込みます。これは手動で行うか、DLL 内でサーバからのワークスペースを取得する方法を使用して行うことができます。

 

ビジョンアプリケーションには次のような役割があります。

  • 画像を取り込みます。
  • データベースに追加する方法を使用するか、ディスクに書き込む方法を使用して、DLL を経由して VisionPro Deep Learning GUI に画像を送る
  • 学習が完了したら、新しいランタイムワークスペースを読み込む

 

システムを学習させるには、以下の操作を行います。

  • 画像をハードドライブから取り込み、VisionPro Deep Learning GUI にドロップする
  • ツールを学習させる
  • ランタイムワークスペースをエクスポートする