Operator Library: Accumulator
ModuloCounter 用於統計輸入鏈路上的像素、行或幀數。其計數 序列受模數除數的限制。計數器在序列重複之前可能具有的 唯一狀態數,由模數除數決定。 模數由「Divisor」參數定義。 例如,模數為 4 時,計數結果將為「n MOD 4」,即 0、1、2、3、0、1、2、3、0、1、2、3……
輸出幀的影像尺寸始終等於輸入幀的影像尺寸。 輸出端的像素資料代表計數結果。 請注意,計算時並未使用任何像素值,僅將像素、行或幀索引納入計算考量。
計數器總是從零開始計數。 CountEntity參數可設定為 計數輸入連結中的每個像素、每條線或每幀。 例如,若將CountEntity參數設定為 PIXEL,則該運算子 將隨著輸入的每個像素而遞增其計數器。
若將CountEntity設定為LINE,計數器 將在每行開頭遞增 ,因此可統計輸入連結的行數。 舉例來說,若採用模四運算,結果將是 第零行的所有像素值皆為 0。 第一行的像素值將為 1,以此類推。 然而,第四行的像素值將再次變為 0。
若CountEntity設定為FRAME, 計數器將在每個幀的開始時遞增。
以下範例說明此運算子的用法。 第一個範例顯示兩個連續的幀,其影像寬度 與影像高度皆為八像素。 所有像素值均以數字表示。幀索引 0 代表 初始幀,即開始擷取後的第一個幀。
-
設定: 除數 = 6, 計數單位 = PIXEL, 自動清除 =EoF

如本範例所示,當參數 CountEntity設定為 PIXEL 時,計數器會隨著每個像素而遞增 。 由於除數(Divisor)設定為六,結果值範圍為零至五。 由於計數器會在幀結束時重置,因此在第二幀中,運算子會再次從零開始。
-
設定: 除數 = 6, 實體類型 = LINE, 自動清除 = 無

在此範例中,運算子計數的是行數而非像素。 因此,影像中的每個像素皆代表一行號。 此處,參數AutoClear設定為 NONE。 因此,運算子在第二幀中會繼續計數行數,而不會在第一行處重置計數。
-
設定: 除數 = 6, 實體計數 = FRAME, 自動清除 = 無

最後一個範例展示了幀數的計數方式。 在此,每個像素的數值代表幀號。
若在擷取過程中變更了「除數」參數,新值將自下一幀開始生效。 對於一維輸入,新值將自下一行開始生效。 若輸入端為零維資料,新除數值將立即生效。
圖片限制
-
空白影像
不允許使用空圖像,即沒有像素的圖像。
| 除數 | |
|---|---|
| Type | 靜態/動態寫入參數 |
| Default | 1 |
| Range | [1..2^輸出位元寬度] |
|
此參數用以定義模運算的除數。 除數的值必須小於或等於 2^OutputBitwidth。 |
|
| CountEntity | |
|---|---|
| Type | 靜態參數 |
| Default | PIXEL |
| Range | {像素、線、幀} |
|
此參數用以定義運算子計數器是針對每個像素、 每行啟用,還是僅針對每幀啟用一次。 選項 FRAME 僅適用於影像協定 VALT_IMAGE2D。 LINE 僅適用於影像協定 VALD_IMAGE2D 和 VALT_LINE1D。 對於影像協定 VALT_PIXEL0D,該參數將始終以像素為單位進行計數。 |
|
| AutoClear | |
|---|---|
| Type | 靜態參數 |
| Default | 無 |
| Range | {行尾、文件末尾、無} |
|
「自動清除」選項可讓計數器在行尾、幀尾時重置為零,或 完全不進行清除。 若 CountEntity 設定為 PIXEL,則此參數的三個選項皆可選取。 若 CountEntity 設定為 LINE,則可使用 EoF 和 NONE 選項。 當 CountEntity 設定為 FRAME 時,無法自動清除運算子。 若使用 VALT_LINE1D 影像協定,則無法在幀結束時進行清除。 在 VALT_PIXEL0D 中,操作員無法進行自動清除。 |
|
以下範例展示了 ModuloCount 運算子的使用方式:
-
每 10 張影像移除 9 張。
-
範例 - 顯示在 線型掃描應用中使用 operator Blob_Analysis_1D。
-
「色彩平面分離選項 3 — 搭配 Operator ImageBufferMultiRoI 的順序處理」
色彩層的順序 DMA 輸出。 色彩分離是透過 ImageBufferMultiROI 運算子來執行的。
-
'Color Plane Separation Option 5 - Sequential Output with Advances Processing'
色彩平面分離範例。 RGB 輸入會分割為其組成元件,並透過一個 DMA 通道依序輸出。 分割是透過平行收集相同的組成元件並使用 FrameBufferRandomRead 進行讀取來執行的。
-
範例 - 基於偵錯目的,Scope 運算子提供了用於分析灰階圖片的選項。
-
範例 - 在不使用 SampleDn 運算子之情況下進行 3x3 因數降取樣。
-
範例 — 將網格疊加至輸入影像上。 網格的像素值是根據輸入像素值決定的。


上一頁

