基本用語とコンセプト
このトピックでは、MERLIC による画像取得に関する基本用語と基本的コンセプトについて説明します。
MERLIC による画像取得は、画像を取得して処理する一連のタスクからなります。シーケンスは、特定のケースで使用されるハードウェアおよびワークフローなどの要因によって異なります。共通コンポーネントには、画像を取得するカメラ、画像をデジタル化するフレームグラバー、取得を開始するトリガーデバイス、ハードウェア通信用のプログラマブルロジックコントローラ (PLC)、MERLIC などの画像処理ソフトウェアがあります。
ISM による画像取得に関する基本用語
以下では、MERLIC の Image Source Manager (ISM) を経由した画像取得に関する基本用語を説明します。
画像ソースと画像ソース構成
画像ソース
画像ソースは通常、画像を取得できる特定のソースを表します。これはカメラデバイスまたは画像ファイルディレクトリです。ただし、MERLIC の Image Source Manager (ISM) も、照明やレンズコントローラなどの周辺デバイスの使用をサポートします。このタイプのデバイスも ISM では画像ソースとして表されますが、周辺デバイスからは画像が取得されないという点が異なります。
画像ソースは画像ソースの構成で編成されます。つまり、それらは特定の構成に割り当てられます。画像ソースを MERLIC Vision App (MVApp) に追加するには、MERLIC ツール 画像ソース が必要です。MVApp の画像ソースを選択できます。MVApp を開始すると、Image Source Manager はまず選択された画像ソースから画像を取得し、その後はさらに処理するためにその画像を MVApp に転送します。
画像ソースの構成
Image Source Manager の構成は、画像ソースのセットです。画像ソースはそれぞれ、特定の構成に割り当てます。新しい画像ソースを追加するには、既存の構成に追加するか、まず、新しい構成を追加して、画像ソースを追加します。MVApp で画像ソースの画像を使用するか、画像ソースを構成するには、対応する構成が有効である必要があります。詳細については、セクション「有効な構成と無効な構成」を参照してください。
MVApp ごとの複数の画像ソースの使用
同じ MVApp の複数の画像ソースの画像を使用することができます。同じ画像ソースから複数の画像を取得し、これらの画像を同じ MVApp の反復で使用する場合は、現在暫定バージョンでのみ提供されている取得シーケンスを使用する必要があります。取得シーケンスは画像ソース構成の一部であり、それぞれの構成の画像ソースを MERLIC での画像取得にどう使用するかを定義します。パラメーター変更、同期オプション、遅延など、画像取得について、さらに複雑な構成が可能になります。現在の開発状況での取得シーケンスをお試しになりたい場合は、MVTec サポートにお問い合わせください。MERLIC での画像取得シーケンスの設定および使用方法について情報をご提供します。
画像ソース構成の数
すべての画像ソースに構成を 1 つだけ使用することが可能です。ただし場合によっては、画像ソースを異なる構成に分けた方が便利なことがあります。同じオブジェクトの画像を異なる視点から取得する 2 台のカメラデバイスがある場合、これら 2 台のカメラデバイスだけの新しい構成を作成できます。さらに、そのようなアプリケーションで、カメラデバイスではなく画像ファイルで「オフライン」セットアップを実行する場合は、2 台の画像ディレクトリを収めた追加構成を作成できます。
有効な構成と無効N構成
構成のステータスは、有効と無効のいずれかです。MERLIC RTE Setup の「画像ソース」タブで、このステータスは、構成の「ステータス」プロパティに表示されます。構成はさまざまな理由で有効にします:
- 構成の画像ソースの確認や構成をする場合。
- 構成の画像ソースを MVApp で使用する場合。
構成が有効の場合、「画像ソース」タブで構成の画像ソースにアクセスできます。画像ファイルディレクトリの場合、画像を 1 つずつアクセスすることも、あるいはライブモードで連続してアクセスすることもできます。構成にカメラデバイスが含まれている場合、その構成を有効にすると、ただちに、すべてのカメラデバイスが開かれて接続されます。有効な構成のカメラデバイスを選択して、そのカメラパラメーターを表示し、パラメーター値を調整することができます。「画像ソース」タブのライブモードでは、変更結果をすぐに確認できます。
さらに、MVApp における画像取得ののセットアップのための個々の画像ソースを提供するには、構成を有効にする必要があります。画像取得に Image Source Manager を使用するときは、MVApp に「画像ソース」ツールを追加して、Image Source Manager で取得した画像を MVApp に転送します。「画像ソース」ツールでは、現在有効な構成の画像ソースのみを使用できます。すなわち、MVApp の画像ソースは、その構成が有効な場合のみ使用できます。プロセス統合モードを開始するとき、すなわち「画像ソース」ツールで MVApp を参照するデフォルトレシピの MERLIC RTE で開始するとき、MVApp の選択した画像ソースがある構成が有効であることを確認してください。
構成は一度に 1 つだけ有効にできます。したがって、MVApp のセットアップに特定の画像ソースセットを指定する場合、これらの画像ソースのすべてを同じ構成に割り当てて、この構成を有効にする必要があります。
共有構成
共有構成は、任意の MVApp で使用できます。すなわち、共有構成の画像ソースは、その構成が有効であれば、すべての MVApps で使用できます。
RTE 起動構成
RTE 起動構成として選択できる構成は 1 つだけです。この構成は、MERLIC のプロセス統合モードを開始するとき (MERLIC RTE の起動時.) に読み込まれて有効になります。RTE 起動構成として必ずしも構成を選択する必要はありません。構成を選択しなければ、MERLIC RTE は、有効な画像ソース構成なしで起動します。いったん MERLIC RTE が起動すると、MERLIC RTE Setup で構成を手動で有効にできます。また、有効な画像ソース構成がなくても、Image Source Manager を画像取得に使用しないレシピを MERLIC RTE で実行できます。ただし、「画像ソース」がある MVApp を参照するプロセス統合にデフォルトレシピを選択する場合は、MERLIC RTE の適切な起動用に RTE 起動構成として適切な画像ソース構成も選択する必要があります。
MVApp 固有の構成
MVApp 固有の構成は MVApp に結合します。MVApp 固有構成の画像ソースは、関連付けられた MVApp のみが使用できます。MVApp が MERLIC Creator に読み込まれると、MERLIC は、MVApp に関連付けられた構成を自動的に検索します。構成が個々に自動的に読み込まれ有効になります。MERLIC の同じインスタンスでは一度に有効にできる MVApp 固有構成は 1 つだけなので、現在の MVApp 固有構成は同じインスタンスで別の MVApp を開いたときに無効になります。新しく読み込まれた MVApp に固有の構成がない場合、前回のセッションで有効であった構成が読み込まれます。
現時点では、構成のタイプは、「画像ソース」タブでは変更できません。したがって、新しい構成はすべてデフォルトで共有構成になります。MVApp 固有構成にタイプを変更する方法については、トピック 新しい構成と画像ソースの追加 の構成タイプの変更のセクションを参照してください。
画像形式
MERLIC では、さまざまな画像形式を処理できますが、すべてのツールですべての画像形式を使用できるわけではありません。詳細については、個々の ツールの解説を参照してください。
画像ファイル形式
以下の画像形式をサポートしています。.bmp、.gif、.hobj、.ima、.jp2、.jpeg、.jpg、.jxr、.pbm、.pcx、.pgm、.png、.pnm、.ppm、.ras、.tif、.tiff、.xwd。
ディスパリティ画像
ディスパリティ画像では、各ピクセル値は、オブジェクト上に描かれた点とカメラ間の距離に反比例します。
高さ画像/深度画像
高さ画像には、ピクセルのグレイ値で表される 高さ値があります。ディスパリティ画像はツール「ディスパリティを高さ画像に変換」.で高さ画像に変換できます。
マルチレイヤー画像/マルチチャンネル画像
マルチレイヤー画像には、特定のカラーチャンネルs、深度、明るさ、その他の値に関する情報を収めたレイヤーをともなった数多くのタイプがあります。
画像サイズ
基本の HALCON バージョンにより、MERLIC は最大画像サイズ 32768 x 32768 ピクセルの画像の使用をサポートします。
トリガー
トリガーは、画像取得シーケンス全体または、フレームグラバーのタスクなど、画像取得の特定のコンポーネントのみを開始します。ボタンの押し下げや、デジタル信号の電圧変化まで、あらゆるものをトリガーにすることができます。MERLIC の場合、トリガーは、ソフトウェアトリガーおよびハードウェアトリガーなど、発生源に従って分類されます。
カメラ以外にも、トリガー信号を受信可能なハードウェアコンポーネントがあります。多くの場合、トリガーはカメラの内部または外部フレームグラバーに送信され、フレームグラバーがカメラをトリガーし、および/または、デジタル化する次の画像の取得を待って、画像処理ソフトウェアに送信します。しかし、構成には様々な可能性があります。遅延または同期の不良に起因する画像の喪失または不適切な時点での画像の露光を防ぐため、カメラおよびその他のハードウェアの対応するパラメーターを正しく設定する必要があります。
同じ理由から、トリガー信号を複数のデバイスに送信すること、および/または、トリガー信号を別の信号またはコマンド (「StartSingleJob」など) で補完することが必要となる場合があります。MERLIC では、必要な構成および通信を管理することができます。
ソフトウェアトリガー
ソフトウェアトリガー信号は、MERLIC Creator、MERLIC Frontend、MERLIC RTE、または通信プラグインによって開始されます。ソフトウェアトリガーは、1 回の実行または連続実行と組み合わせて使用することができます。たとえば、MVApp に正しく構成したカメラがあるとき、ボタン「1 回実行」をクリックすると MERLIC からカメラにトリガーが送信されます。
ハードウェアトリガー
ハードウェアトリガー信号は、ボタンや光電センサーなどのトリガーデバイスによって送信されますが、MERLIC では、プロセス統合モード ラ (MERLIC RTE) で、プログラマブルロジックコントローラ (PLC) からハードウェアトリガー信号を間接的に送信することもできます。MERLIC による画像取得でハードウェアトリガーのカメラデバイスを使用するには、Image Source Manager による画像取得のために、そのカメラデバイスを構成する必要があります。
適切な同期を確保するため、ハードウェアトリガー信号は、MERLIC の実行が開始された直後、タイムアウト時間に達する前に送信する必要があります。MERLIC RTE では、コマンド「StartSingleJob」や「StartContinuous」で実行を開始することができます。MERLIC で、「JobStarted」イベントが発生したときに、その構成済み画像ソースは、ハードウェアトリガー信号をただちに受け取る準備が整っています。
自走 (トリガーなし)
一部のカメラは、自走モードで画像を取得するよう構成することができます。自走モードでは、カメラはトリガー信号を待機せず、可能な限り速く画像を取得します。このモードでは実行速度が速くなりますが、カメラデバイスによる画像取得の速度も過度に速くなるおそれがあるので注意が必要です。画像を処理できる速度より、カメラが画像を取得する速度の方が速くなると、一部の画像が失われたり、現在、処理中の画像が最新の状態でなくなるおそれがあります。画像をつねに最新の状態で保つため、カメラはソフトウェアトリガーモードで使用することをお勧めします。
画像取得シーケンスとパラメーターセット
画像取得シーケンス
画像取得シーケンスは、画像ソースからいつどのように画像を取得するかを定義します。
プライマリパラメーターセット
各画像ソースに対して、プライマリパラメーターセットが暗黙に作成されます。これにはカメラパラメーターの特定の構成が含まれています。構成は調整できます。ただし、プライマリパラメーターセットは削除できません。
代替パラメーターセット
画像ソースごとに、1 つ以上の追加のパラメーターセットを作成できます。これらは、プライマリセットで定義されているものとは異なるカメラパラメーターの構成を保存するために使用できるので、プライマリパラメーターセットの代替として使用できます。
同じ名前のカスタムシーケンスがすでに存在していない限り、代替パラメーターセットごとに管理対象シーケンスが自動的に作成されます。
基本シーケンス
基本シーケンスは、それぞれのプライマリパラメーターセットを使用して各画像ソースから 1 つの画像を取得するデフォルトの画像取得動作を定義します。基本シーケンスは管理対象です。つまり、画像ソースが追加または削除されると更新されます。
管理対象画像取得シーケンス
基本シーケンスと同様、管理対象シーケンスは画像ソースごとに 1 つの画像を取得しますが、これには対応する代替パラメーターセットを使用します。
画像ソースに対応する代替パラメーターセットが存在しない場合は、代わりにプライマリパラメーターセットが使用されます。管理対象シーケンスは、画像ソースまたはパラメーターセットが追加または削除されると、自動的に作成、削除、更新されます。
カスタム画像取得シーケンス
カスタム画像取得シーケンスは、十分な柔軟性を備えたユーザー定義の画像取得シーケンスです。カスタムシーケンスは、画像ソースまたはパラメーターセットが追加または削除されても、自動的には更新されません。つまり、それらは手動で更新する必要があります。