配列同期
イントロダクション
多くのアプリケーションでは、1つの画像で複数のオブジェクトが分析されます。最も一般的には、最初のステップのいずれかでオブジェクトが抽出されます(たとえば、ブロブ、エッジ、またはテンプレートの発生として)。その後、これらのオブジェクトのすべてに対していくつかの属性が計算されます。Aurora Vision Studioでは、これらのデータ項目は異なる配列として表現され、異なる配列がオブジェクトと個々の属性を表します。
同期された配列の要素は、数値スプレッドシートアプリケーションの表の連続する行の要素のように、1対1で対応しています。実際、Aurora Vision Studioでも数値値の同期された配列はテーブルとして表示できます。対応するグラフィカルオブジェクトは、対応するインデックスを表示して(適切なオプションを画像ビューメニューで確認した後)、どの行に属しているかを示します:
同期入力
一部のフィルタには複数の配列入力があり、すべての接続された配列が同期されている必要があります。これにより、要素を並列に処理することができます。たとえば、SortArray フィルタは、ソートされるオブジェクトの配列と要求された順序を定義する関連する値の配列が同期されている必要があります。この要件は以下の画像の青い半円で視覚化されています:
たとえば、SortArray フィルタを使用して、領域をその質量中心の X 座標で並べ替えることができます:
同期された入力配列が必要な他の注目すべきフィルタの例には、GetMaximumElement、ClassifyByRange、DrawStrings_SingleColor があります(文字列の配列と対応する中心点の配列が同期されている必要があります)。
静的プログラム解析
Aurora Vision Studio は、異なるサイズの配列(同期されていない)が使用されている可能性のある場合を検出するために、静的プログラム解析を実行します。このような場合が見つかると、プログラムが実行される前にユーザに警告が表示され、検出された問題はプログラムエディタに感嘆符のアイコンと赤い半円でマークされます:
時折、複雑なプログラムの場合、静的解析メカニズムが誤った警告を生成することがあります。そのような場合、ユーザはフィルタの入力コンテキストメニューで「Mark Arrays as Synchronized」コマンドを使用して、手動で入力を同期としてマークできます。
関連する配列の視覚化
次の図は、実際のプログラム(公式の "Meter" 例)での配列同期の完全な視覚化を示しています。半円は青と黄色の2色があります。配列同期を視覚化することで、同じエンティティを説明する配列を含むポートがどれかが簡単にわかります。この特定のケースでは、青い半円は円形のスキャンパスに関連しており、黄色い円は見つかったストライプに関連しています。
注意:配列同期の解析とその視覚化はデフォルトでオンになっていますが、Aurora Vision Studio の設定でオフにすることができます。