Operator Library: Synchronization
TxImageLink オペレーターを使用すると、デザイン内の任意の場所にある RxImageLink オペレーターに画像を送信できます。 どちらのオペレーターも、リンクなしで接続を確立します。
TxImageLink オペレーターと RxImageLink オペレーターの間で画像転送を行うことで、デザイン内にループを実装できるようになります。
![]() |
ループにはデータバッファリング戦略が必要 |
|---|---|
|
オペレーター TxImageLink および RxImageLink はデータをバッファリングしません。そのため、ループを実装する際は、デッドロックを回避するためにデータバッファリングに十分注意する必要があります。 |
VisualAppletsが一般的にサポートするすべての画像フォーマットがサポートされます。 画像フォーマットは変更されません。つまり、RxImageLinkの出力フォーマットは、TxImageLink が入力で受け取るフォーマットと同じになります。
パラメータ Channel_ID は、受信側の RxImageLink オペレーターを指定するためのチャネルIDを定義します。 パラメータ値が一意であり、デザイン内の他のどの TxImageLink オペレーターからも使用されていない必要があります。
デザイン内には、同じチャネルIDを使用し、画像データを受信する RxImageLink オペレーターが正確に1つ存在する必要があります。
デザイン内の各 TxImageLink オペレーターは、1つのチャネルIDを介して正確に1つの RxImageLink オペレーターに接続されます。 VisualAppletsの Resource Dialog で、各 TxImageLink-RxImageLink 接続に対して1つの ImageChannel リソースが使用されていることが確認できます。 リソース ImageChannel を使用すると、個々の TxImageLink オペレーターから個々の RxImageLink オペレーターへの割り当てを制御できます。 利用可能な ImageChannel リソースの数(デザインで許可される TxImageLink および RxImageLink オペレーターの最大数も規定します)については、Device Resources を参照してください。

![]() |
ループにおけるリンクフォーマットのパラメータ設定 |
|---|---|
|
リンクプロパティダイアログが開かれるとすぐに、「automatic update」機能がオペレーターチェーンの設定に応じてリンクプロパティ(Bit Widthや画像寸法など)を適応させます。TxImageLink の入力フォーマットは常に RxImageLink の出力フォーマットを定義します(100%自動一貫性)。 したがって、オペレーター TxImageLink および RxImageLink を使用してループを実装する場合、リンクフォーマットのパラメータ設定に特に注意する必要があります。 例 誤った実装、ループ内の反復ごとにリンクパラメータ Bit Width の値が増加します: ![]() 正しい実装、オペレーター CastBitWidth は、ループ内の反復ごとにリンクパラメータ Bit Width の値を元の値に戻します: ![]() |
![]() |
階層的なデザインレベル間でのチャネルの同期 |
|---|---|
|
TxImageLink/RxImageLink ペアを使用して異なる階層デザインレベル間にデータ転送チャネルを構築する場合、この接続は M オペレーターとして扱われます。そのため、(直接接続では必要のない)追加の同期要素を実装する必要がある場合があります。 |
オペレーター TxImageLink の使用例を以下に示します:
-
'ImageInjector を使用したテスト画像の読み込みに関する機能的な例'
使用例 - オペレーターの使用方法のデモ
-
'A rolling average is applied on a dynamic number of images'
例 - Rolling Average - Loop
-
例 - ループを使用した Depth From Focus

![[注意]](../common/images/admon/caution.png)
![[重要]](../common/images/admon/important.png)



前へ

