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,計數器會在每一行的開頭遞增,因此會對輸入連結的行進行計數。例如,取模除數為 4 將會產生以下結果:第 0 行的所有像素值均為 0。第 1 行的像素值將為 1,依此類推。然而,第 4 行的像素值將再次變回零。
如果 CountEntity 設為 FRAME,計數器會在每個影格的開頭遞增。
以下範例說明了此運算子的用法。第一個範例顯示兩個連續的影格,其影像寬度和影像高度為 8 個像素。所有像素值均以數字表示。影格索引 0 代表初始影格,即採集開始之後的第一個影格。
-
配置: Divisor = 6, CountEntity = PIXEL, AutoClear = EoF

如本範例所示,當參數 CountEntity 設為 PIXEL 時,計數器會隨著每個像素遞增。由於 Divisor 設為 6,因此結果值的範圍從 0 到 5。在第二個影格中,運算子會再次從零開始,因為計數器會在影格結束時重設。
-
配置: Divisor = 6, CountEntity = LINE, AutoClear = NONE

在此範例中,運算子對行進行計數而不是像素。因此,影像的每個像素都代表行號。在此,參數 AutoClear 設為 NONE。因此,運算子會在第二個影格中繼續對行進行計數,而不會在第一個影像行重設。
-
配置: Divisor = 6, CountEntity = FRAME, AutoClear = NONE

最後一個範例顯示了對影格進行計數。在此,每個像素的值代表影格編號。
如果在採集期間變更除數參數,新值將在下一個影格開始時生效。對於 1D 輸入,新值將套用於下一行。如果輸入端為 0D 資料,則新的除數值會立即生效。
影像限制
-
Empty Images
不允許使用空白影像,即沒有像素的影像。
| Divisor | |
|---|---|
| Type | static/dynamic write parameter |
| Default | 1 |
| Range | [1..2^OutputBitWidth] |
|
此參數定義取模運算的除數。除數值必須小於或等於 2^OutputBitwidth。 |
|
| CountEntity | |
|---|---|
| Type | static parameter |
| Default | PIXEL |
| Range | {PIXEL, LINE, FRAME} |
|
此參數定義運算子計數器是針對每個像素啟用、針對每行啟用,還是僅針對每個影格啟用一次。 選項 FRAME 僅適用於影像協定 VALT_IMAGE2D。LINE 僅適用於影像協定 VALD_IMAGE2D 和 VALT_LINE1D。對於影像協定 VALT_PIXEL0D,此參數將始終對像素進行計數。 |
|
| AutoClear | |
|---|---|
| Type | static parameter |
| Default | NONE |
| Range | {EoL, EoF, NONE} |
|
AutoClear 選項允許在行結尾、影格結尾將計數器重設為零,或者根本不執行清除。 如果 CountEntity 設為 PIXEL,則可以選擇此參數的所有三個選項。如果 CountEntity 設為 LINE,則可以使用選項 EoF 和 NONE。對於 CountEntity FRAME,無法對運算子進行自動清除。 若使用 VALT_LINE1D image protocol,則無法在影格結束時進行 clear。在 VALT_PIXEL0D 中,無法使用 operator 的 auto clear。 |
|
以下範例顯示了 ModuloCount operator 的使用方式:
-
從 10 張影像中移除 9 張。
-
範例 - 顯示在線掃描應用中使用 operator Blob_Analysis_1D。
-
'Color Plane Separation Option 3 - Sequential with Operator ImageBufferMultiRoI'
色平面的循序 DMA 輸出。 色彩分離使用 ImageBufferMultiROI 運算子執行。
-
'Color Plane Separation Option 5 - Sequential Output with Advances Processing'
色彩平面分離範例。 RGB 輸入被分割成其組成部分,並透過一個 DMA 通道進行順序輸出。 分割是透過平行收集相同組件並使用 FrameBufferRandomRead 進行讀取來執行的。
-
範例 - 基於偵錯目的,Scope operator 提供了用於分析灰階圖片的選項。.
-
範例 - 未使用 SampleDn 運算子進行 3x3 因數下取樣。
-
範例 - 將網格覆疊至輸入影像。網格像素值由輸入像素值決定。


上一頁

