運算子 ImageAnalyzer

Operator Library: Debugging

「ImageAnalyzer」運算子在不 觸及影像資料的情況下,分析影像的屬性。

此運算子用於分析單張影像。若要分析影像序列,請使用ImageStatistics 運算子。

OperatorImageAnalyzer提供

  • 關於最後一幀的資料(整幀的數值),以及
  • 當前幀(即目前正在串流的幀)的中間值。

OperatorImageAnalyzer用於分析區域掃描應用(2D)中的影像幀。 您亦可將其用於分析線性掃描應用(1D)中的資料。

該運算子提供動態讀取參數,您可以利用這些參數來擷取有關

  • 圖片尺寸(寬度 × 高度)與圖片大小(像素),
  • 同一幀內線段長度的偏差,
  • 行與行之間的間距,
  • 運算子輸入的阻塞狀態(被阻塞/未被阻塞)。

此外,該操作員還提供了一些參數,用以控制操作員本身。

當內部 Counter 溢位時,會在 OverflowMask 參數中設定對應的溢位位元,且 Counter 會停止。

[重要] 執行階段測試

此運算子專為在執行階段測試與分析您的設計而設計: 在您使用此運算子進行偵錯之前,必須先建置 (合成) 設計、将其載入目標硬體,並啟動實際的影像處理。

該運算子並非用於 VisualApplets 內的設計模擬。

I/O Properties

Property Value
Operator Type O
Input Link I,資料輸入
Output Link O,資料輸出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 64] as I
Arithmetic {unsigned, signed} as I
Parallelism any as I
Kernel Columns any as I
Kernel Rows any as I
Img Protocol {VALT_IMAGE2D, VALT_LINE1D} as I
Color Format any as I
Color Flavor any as I
Max. Img Width any as I
Max. Img Height any as I

Parameters

ClearMode
Type dynamic write parameter
Default ClearWithProcessStart
Range {NoClearing, ClearWithProcessStart, ClearWithProcessReset, SendClearPulse}

Operator Control:

此參數定義所有 read 參數的重設行為。

NoClearing:保留所有 read 參數的值。 ProcessEnable 和 ProcessReset 對這些值沒有影響。

ClearWithProcessStart:只有在 ProcessEnable 的上升緣時,才會清除所有 read 參數的值。

ClearWithProcessReset:只有在 ProcessReset 的上升緣時,才會清除所有 read 參數的值。

SendClearPulse:隨需清除所有 read 參數值。

FrameCountWidth
Type 靜態寫入參數
Default 24
Range [4, 63]

Operator Control:

設定參數FrameCounter 的位元寬度。

GapCountWidth
Type 靜態寫入參數
Default 20
Range [4, 63]

Operator Control:

設定行間距計數器的位元寬度 (FrameMinLineGap、FrameMaxLineGap、CurrLineGap)。

FrameCount
Type 動態讀取參數
Default 0
Range [0, (2^FrameCountWidth) -1]

一般資訊:

統計所有以 EndOfFrame 結尾的影像。

FramePixelCount
Type 動態讀取參數
Default 0
Range [0, (2^ (ImageWidthBitwidth+ImageHeightBitwidth+4))-1]

最後一幀:

最後一個完成的影格大小,單位為像素。

FrameHeight
Type 動態讀取參數
Default 0
Range [0, (2^(ImageHeightBitwidth+4))-1]

最後一幀:

最後一個完成畫格的高度(以像素為單位)。

FrameMinWidth
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+4))-1]

最後一幀:

上一個完成幀中遇到的最小寬度(以像素為單位)。

FrameMaxWidth
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+4))-1]

最後一幀:

在最後一個完成的幀中遇到的最大寬度(以像素為單位)。

FrameMinLineGap
Type 動態讀取參數
Default 0
Range [0, (2^GapCountWidth)-1]

最後一幀:

在最後一個完成的幀中偵測到最小行間距。如下圖所示的範例中,FrameMinLineGap = 3。

FrameMaxLineGap
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+ImageHeightBitwidth+4))-1]

最後一幀:

在最後一個已完成的幀中遇到的最大行間距。在下圖所示的範例中,FrameMaxLineGap = 4。

CurrPixelCount
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+ImageHeightBitwidth+4))-1]

當前畫面:

目前處於活動狀態且正在檢查的畫面中的像素數。

CurrXPos
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+4))-1]

當前畫面:

目前處於活動狀態且正在檢視中的畫面中的水平位置。

CurrYPos
Type 動態讀取參數
Default 0
Range [0, (2^(ImageHeightBitwidth+4))-1]

當前畫面:

目前處於活動狀態且正在檢查中的畫面中的當前垂直位置。

CurrMinWidth
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+4))-1]

當前畫面:

在目前處於活動狀態且正在檢查的畫面中,偵測到最小寬度。

CurrMaxWidth
Type 動態讀取參數
Default 0
Range [0, (2^(ImageWidthBitwidth+4))-1]

當前畫面:

在目前處於活動狀態且正在檢查的畫面中偵測到的最大寬度。

CurrLineGap
Type 動態讀取參數
Default 0
Range [0, (2^GapCountWidth)-1]

當前畫面:

當前行與前一行之間的間距(在目前處於活動狀態且正在檢查的幀中)。

CurrBlocked
Type 動態讀取參數
Default 0
Range [0, 1]

一般資訊:

若設定為 1:數值 1 表示輸入鏈結目前被輸出鏈結封鎖。

OverflowMask
Type 動態讀取參數
Default 0
Range [0, 31]

Operator Control:

位元編碼的溢位信號。設定的位元表示下列 Counter 發生溢位:

[0] = FrameCount

[1] = PixelCount

[2] = xPos

[3] = yPos

[4] = LineGapCount。

Examples of Use

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