タップジオメトリのソート

概要

ファイル: \examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2XE_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_1X_2Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_2Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_2YE.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_8X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_10X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\BaseAreaGray8_3Tap_Resorting.vad

デフォルトプラットフォーム: mE5-MA-VCL

簡単な説明

Camera Link タップの並び替え

Camera Link タップジオメトリに関する基礎理論

タップは、カメラセンサー上の幾何学的領域です。フレームのピクセルは、タップから順番に、ピクセル単位でフレームグラバーに伝送されます。これらのタップからピクセルを並列転送することができます。 Camera Link の Base コンフィグレーションでは、同じクロックサイクルで転送されるタップの数は 1 ~ 3、Medium コンフィグレーションでは 3 または 4、Full コンフィグレーションでは 8 または 10 です。タップの幾何学的配置はセンサーモデルによって異なります。 この順序に応じて、取得した画像のピクセルを並び替えて、現実を反映した画像を生成する必要があります。 カメラのタップジオメトリコンフィグレーションを記述するために、命名規則が

式 31。


使用されます。ここで、 は、水平方向および垂直方向のタップ数です。タップから同時に転送される、X 方向および Y 方向の連続するピクセル数は、 . 「E」、「M」、「R」のいずれかで表すことができます。「E」は、タップごとの読み出しがピクセルライン/カラムの両端から開始されることを示します。 「M」は、ピクセル抽出がラインの中央から開始されることを意味します。「R」は、ピクセル抽出が各タップの右側から開始されることを示しています。表 26 には、特定のタップジオメトリについて、幅「w」、高さ「h」の画像における水平方向および垂直方向のピクセル位置がリストされています。

Tap Geometry X 開始 X 終了 X ステップ Y 開始 Y 終了 Y ステップ
2X-1Y タップ 1 1 w/2 1 1 h 1
タップ 2 w/2+1 w 1 1 h 1
2XE-1Y タップ 1 1 w/2 1 1 h 1
タップ 2 w w/2+1 1 1 h 1
1X-2Y タップ 1 1 w 1 1 h/2 1
タップ 2 1 w 1 h/2+1 h 1
2X-2Y タップ 1 1 w/2 1 1 h/2 1
タップ 2 w/2+1 w 1 1 h/2 1
Tap 3 1 w/2 1 h/2+1 h 1
Tap 4 w/2+1 w 1 h/2+1 h 1
2X-2YE タップ 1 1 w/2 1 1 h/2 1
タップ 2 w/2+1 w 1 1 h/2 1
Tap 3 1 w/2 1 h h/2+1 1
Tap 4 w/2+1 w 1 h h/2+1 1
8X-1Y タップ 1 1 w/8 1 1 h 1
タップ 2 w/8+1 1/4 w 1 1 h 1
Tap 3 1/4 w +1 3/8 w 1 1 h 1
Tap 4 3/8 w +1 1/2 w 1 1 h 1
Tap 5 1/2 w +1 5/8 w 1 1 h 1
Tap 6 5/8 w +1 3/4 w 1 1 h 1
Tap 7 3/4 w +1 7/8 w 1 1 h 1
Tap 8 7/8 w +1 w 1 1 h 1
10X-1Y タップ 1 1 w/10 1 1 h 1
タップ 2 w/10+1 1/5 w 1 1 h 1
Tap 3 1/5 w +1 3/10 w 1 1 h 1
Tap 4 3/10 w +1 2/5 w 1 1 h 1
Tap 5 2/5 w +1 1/2 w 1 1 h 1
Tap 6 1/2 w +1 3/5 w 1 1 h 1
Tap 7 3/5 w +1 7/10 w 1 1 h 1
Tap 8 7/10 w +1 4/5 1 1 h 1
Tap 9 4/5 w +1 9/10 1 1 h 1
Tap 10 9/10 w +1 w 1 1 h 1

表 26. タップジオメトリの例


VisualAppletsでの実装

上述したタップ幾何学模様の並び替えは、7つの個別の Visual Applets デザインで実装されています。これらのデザインは、画像処理デザインの一部として使用できます。 タップ幾何学模様の並び替えのシミュレーションおよびテスト用のサンプル画像は、\examples\Processing\Geometry\TapGeometrySorting\TestImages にあります。 実装の複雑さとリソース効率のバランスを最適化するため、実装アルゴリズムはデザインごとに異なります。水平方向のタップ幾何学模様の並び替えを実現する最も簡単な方法は、「TapSorting_2X_1Y.va」および「TapSorting_2XE_1Y.va」のデザインで実装されています。 「TapSorting_2XE_1Y.va」の基本設計構造は、図 341に示されています。

「TapSorting_2XE_1Y.va」の基本設計構造

図 341:「TapSorting_2XE_1Y.va」の基本設計構造


Camera Link Base構成のグレースケールカメラからの水平方向の2つのタップ(「2X」)のピクセルは、2つのブランチに分割されます。タップ2のピクセルは、LineMemory オペレーターを使用した HierachicalBox の MirroredLine で水平方向に反転されます。その後、2つのタップのピクセルが1行ずつ新しい画像に挿入されます。そして、連続する2行が1つのより大きな行に結合されます。 この画像が、正しいタップ幾何学模様を持つ出力画像となります。タップ1のピクセルは結果画像の左半分に配置され、タップ2のピクセルは反転により右半分に逆順で配置されます。 「TapSorting_2X_1Y.va」のデザイン構造とアルゴリズムは「TapSorting_2XE_1Y.va」のものと類似していますが、タップ2のピクセルの反転が行われない点が異なります。 「TapSorting_1X_2Y.va」、「TapSorting_2X_2Y.va」、および「TapSorting_2X_2YE.va」のデザインには、水平方向に1つまたは2つのタップ(「1X」または「2X」)があり、垂直方向に2つのタップ(「2Y」および「2YE」)があります。ここでは、FrameBufferRandomRead オペレーターを使用するのが最も効率的なタップ並び替えの方法です。「TapSorting_2X_2Y.va」の基本設計構造は、図 342に示されています。「TapSorting_1X_2Y.va」および「TapSorting_2X_2YE.va」のデザイン構造もこれと同等です。

「TapSorting_2X_2Y.va」の基本設計構造

図 342:「TapSorting_2X_2Y.va」の基本設計構造


Camera Link Base構成のカメラから転送されたピクセルは、HierarchicalBox の Resort で順序が再配置されます。ここでは、同じタップの4つのピクセルが1つのピクセルに統合されます。Tap 1 から Tap 2(「TapSorting_1X_2Y.va」)へ、または Tap 4(「TapSorting_2X_2Y.va」および「TapSorting_2X_2YE.va」)へ並列に統合されます。FrameBufferRandomRead オペレーターを使用し、その後にピクセル深度の再解釈(CastParallel オペレーター)を行うことで、カメラタップのピクセルが結果画像内に正しく配置されます。FrameBufferRandomRead に対する正しいアドレス入力は、Address ボックスで実装されています。ここでは、使用されるタップ幾何学模様に応じてデザインの詳細が異なりますが、基本原則は同じです。図 343 に、「TapSorting_2X_2Y.va」デザインのアドレス生成を示します。

「TapSorting_2X_2Y.va」における HierarchicalBox Address のコンテンツ

図 343. 「TapSorting_2X_2Y.va」における HierarchicalBox Address のコンテンツ


オペレーター CoordinateX、CoordinateY、ModuloCount、IS_GreaterThan を使用して、出力画像の各ピクセルに対応する入力画像のポジションが評価されます。

デザイン「TapSorting_8X_1Y.va」および「TapSorting_10X_1Y.va」における「8X-1Y」および「10X-1Y」のタップジオメトリの並べ替えには、オペレーター LineMemory が使用されます。「TapSorting_8X_1Y.va」の基本設計構造を図 344 に示します。「TapSorting_10X_1Y.va」のデザイン構造も同様です。

「TapSorting_8X_1Y.va」の基本設計構造

図 344. 「TapSorting_8X_1Y.va」の基本設計構造


8つまたは10つの水平タップのピクセルが、HierarchicalBox Resort で再配置されます。同じタップの8つのピクセルがそれぞれ64ビットのビット深度を持つ1つのピクセルに統合されます。8つまたは10つのタップは並列に統合されます。その後、各出力ピクセルに対応する入力画像の正しいアドレスが HierarchicalBox Sorting8X1Y で計算されます(図 345 を参照)。

HierarchicalBox Sorting_8X_1Y のコンテンツ

図 345. HierarchicalBox Sorting_8X_1Y のコンテンツ


ボックス Address のアドレス生成を図 346 に示します。

「TapSorting_8X_1Y.va」における HierarchicalBox Address のコンテンツ

図 346. 「TapSorting_8X_1Y.va」における HierarchicalBox Address のコンテンツ