Operator SignalGate

Operator Library: Signal

該運算元對輸入 I 與輸出 O 之間的影像流進行閘控。 該閘由訊號輸入連結「Gate」控制。 若閘關閉,輸入資料將被捨棄。 若閘門開啟,像素將被傳送至輸出端。 然而,此運算子會確保行或幀的完整性不會遭到破壞,也就是說,傳輸的總是完整的行或幀, 且不會被截斷。 若將此運算子與輸入影像協定 VALT_LINE1D 搭配使用,該運算子會將一個開啟 閘門週期內的行幀組合成一個幀。 因此,它能將行幀組合起來,並將例如線掃描相機所產生的無限行幀流轉換為幀。 此運算子常被用作線掃描相機的影像觸發器。

下圖展示了一個關於該運算子行為的範例。 如您所見,行資料被輸入至該運算子。 每行末尾皆附帶一個行尾控制訊號,該訊號嵌入於影像連結流中。 閘門開啟的時間長度為三行。 在輸出端,前三行會被保留,而第四行和第五行則被捨棄。 此外,在閘門關閉前的最後一行之後,會向影像資料流中加入一個幀結束標記。 總而言之,在此範例中,該運算子將前三行組合成一個幀。 在閘門關閉期間,資料會被捨棄。

若在處理某行資料時閘門開啟,該行資料將不會被使用。 此外,若在處理某行資料時閘門關閉,該行資料將完整傳輸至輸出端。 這可確保行資料的完整性。 以下波形顯示了這些情況。

閘門短暫關閉會觸發幀結束信號。 以下兩個波形顯示了閘門短暫開啟或關閉的情況。

請注意,若閘門開啟時,輸入 鏈路上同時出現該行首個像素,則該行將會被採納。 若該行未被捨棄,且在首個行像素之後閘門輸入端出現 下降沿,則該行結束後會產生幀結束信號。

除了 VALT_LINE1D 線性資料流之外,該運算子亦可搭配輸入 I 端的 VALT_IMAGE2D 影像資料流使用。 在此情況下,若閘門開啟的時間與影像的第一個像素同時,該運算子將傳送完整的輸入幀, 如下所示。

重置輸入可用於重置操作器,也就是說,用來切斷一條線,然後重新啟動。

[注意] 簡化波形

波形圖已經簡化,以呈現運算子的確切運作行為。 實際的實作會延遲行尾與幀尾的輸出。

[警告] 運算子違反最大影像高度限制

若閘門持續開啟,運算子將產生一個高度較大的影像。 若此高度超過為輸出連結設定的「最大影像高度」連結屬性,則會違反VisualApplets 規則。 您應使用運算子 SplitImage , 或刪除超出範圍的線條(RemoveLine、 SelectROI)。

此 operator 不包含在 VisualApplets 功能模擬中。

I/O Properties

Property Value
Operator Type P
Input Links I,影像資料輸入
閘極,訊號輸入
重置,訊號輸入
Output Link O,影像資料輸出

Synchronous and Asynchronous Inputs

  • 所有訊號輸入可由相同或不同的 M-type operators 透過任意的 O-type operators 網路提供來源。 if 他們由相同的 M-type 來源提供,將會自動進行同步。
  • 輸入連接 I 與信號輸入非同步。

Supported Link Format

Link Parameter Input Link I 輸入連結 Gate Input Link Reset Output Link O
Bit Width [1, 64]1 1 1 as I
Arithmetic {unsigned, signed} 無號數 無號數 as I
Parallelism any 1 1 as I
Kernel Columns any 1 1 as I
Kernel Rows any 1 1 as I
Img Protocol {VALT_IMAGE2D, VALT_LINE1D} VALT_SIGNAL VALT_SIGNAL as I
Color Format any VAF_GRAY VAF_GRAY as I
Color Flavor any FL_NONE FL_NONE as I
Max. Img Width any any any as I
Max. Img Height any any any 若輸入為 VALT_IMAGE1D,則執行;否則,如 I 所述

1

針對無號數值,輸入 Bit Width 的範圍為 [1, 64]。 針對有號數值輸入,範圍為 [2, 64]。 針對無號彩色輸入為 [3, 63],針對有號彩色輸入則為 [6, 63]。

Parameters

無

Examples of Use

以下範例展示了 SignalGate 運算子的使用方式: