Operator Library: Debugging
Operator ImageAnalyzer는 이미지 데이터에 접근하지 않고도 이미지 속성을 분석합니다.
이 연산자는 개별 이미지를 분석합니다. 이미지 시퀀스를 분석하려면 ImageStatistics 연산자를 사용하십시오.
Operator ImageAnalyzer는 다음을 제공합니다.
- 마지막 프레임에 대한 데이터(전체 프레임의 값) 및
- 현재 프레임(현재 스트리밍 중인 프레임)의 중간 값들.
ImageAnalyzer는 영역 스캔(2D) 애플리케이션에서 프레임을 분석합니다. 또한 라인 스캔(1D) 애플리케이션의 데이터를 분석하는 데에도 사용할 수 있습니다.
이 운영자는 다음과 관련된 데이터를 가져오는 데 사용할 수 있는 동적 읽기 매개변수를 제공합니다.
- 이미지 크기(가로 × 세로) 및 이미지 해상도(픽셀),
- 한 프레임 내의 선 길이의 편차,
- 줄 사이의 간격,
- 연산자 입력의 차단 상태(차단됨/차단되지 않음).
또한, 이 오퍼레이터는 오퍼레이터 자체를 제어하기 위한 몇 가지 매개변수를 제공합니다.
내부 카운터가 오버플로우되면, OverflowMask 매개변수에서 해당 오버플로우 비트가 설정되고 카운터가 정지합니다.
![]() |
런타임 테스트 |
|---|---|
|
이 오퍼레이터는 런타임 중에 디자인을 테스트하고 분석하기 위해 설계되었습니다. 오퍼레이터를 디버깅에 사용하려면 먼저 디자인을 빌드(합성)하고, 타겟 하드웨어에 로드한 후, 실제 이미지 처리를 시작해야 합니다. 이 오퍼레이터는 VisualApplets 내에서의 디자인 시뮬레이션용이 아닙니다. |
| 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 |
| ClearMode | |
|---|---|
| Type | dynamic write 파라미터 |
| Default | 프로세스 시작 시 지우기 |
| Range | {NoClearing, ClearWithProcessStart, ClearWithProcessReset, SendClearPulse} |
|
운영자 제어: 이 매개변수는 모든 읽기 매개변수에 대한 재설정 동작을 정의합니다. NoClearing: 읽은 모든 매개변수의 값이 유지됩니다. ProcessEnable 및 ProcessReset은 이러한 값에 영향을 미치지 않습니다. ClearWithProcessStart: 읽기 매개변수의 모든 값은 ProcessEnable 신호의 상승 에지에서만 초기화됩니다. ClearWithProcessReset: 모든 읽기 매개변수의 값은 ProcessReset 신호의 상승 에지에서만 초기화됩니다. SendClearPulse: 읽은 모든 매개변수 값을 수동으로 초기화합니다. |
|
| FrameCountWidth | |
|---|---|
| Type | 정적 쓰기 파라미터 |
| Default | 24 |
| Range | [4, 63] |
|
운영자 제어: FrameCounter 매개변수의 비트 폭을 설정합니다. |
|
| GapCountWidth | |
|---|---|
| Type | 정적 쓰기 파라미터 |
| Default | 20 |
| Range | [4, 63] |
|
운영자 제어: 줄 간격 카운터(FrameMinLineGap, FrameMaxLineGap, CurrLineGap)의 비트 폭을 설정합니다. . |
|
| 프레임 수 | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^FrameCountWidth) - 1] |
|
일반 정보: EndOfFrame으로 끝나는 모든 이미지를 집계합니다. |
|
| 프레임 픽셀 수 | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(ImageWidthBitwidth + ImageHeightBitwidth + 4)) - 1] |
|
마지막 장면: 마지막으로 완료된 프레임의 크기(픽셀 단위). |
|
| 프레임 높이 | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 높이 × 비트폭 + 4)) - 1] |
|
마지막 장면: 마지막으로 완성된 프레임의 높이(픽셀 단위). |
|
| FrameMinWidth | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 × 비트폭 + 4)) - 1] |
|
마지막 장면: 마지막으로 완료된 프레임에서 관측된 최소 너비(픽셀 단위). |
|
| FrameMaxWidth | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 × 비트폭 + 4)) - 1] |
|
마지막 장면: 마지막으로 완료된 프레임에서 관측된 최대 너비(픽셀 단위). |
|
| FrameMinLineGap | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^GapCountWidth)-1] |
|
마지막 장면: 마지막으로 완료된 프레임에서 최소 줄 간격이 감지되었습니다. 아래 그림에 표시된 예시에서 FrameMinLineGap = 3입니다. ![]() |
|
| FrameMaxLineGap | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 비트폭 + 이미지 높이 비트폭 + 4)) - 1] |
|
마지막 장면: 마지막으로 완료된 프레임에서 발견된 최대 라인 간격. 아래 그림에 표시된 예시에서 FrameMaxLineGap = 4입니다. ![]() |
|
| 현재 픽셀 수 | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 비트폭 + 이미지 높이 비트폭 + 4)) - 1] |
|
현재 프레임: 현재 활성화되어 있고 검사 중인 프레임의 픽셀 수. |
|
| CurrXPos | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 × 비트폭 + 4)) - 1] |
|
현재 프레임: 현재 활성화되어 있고 검사 중인 프레임 내의 현재 수평 위치. |
|
| CurrYPos | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 높이 × 비트폭 + 4)) - 1] |
|
현재 프레임: 현재 활성화되어 있고 검사 중인 프레임 내의 현재 수직 위치. |
|
| CurrMinWidth | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 × 비트폭 + 4)) - 1] |
|
현재 프레임: 현재 활성화된 상태에서 검사 중인 프레임에서 최소 너비가 감지되었습니다. |
|
| CurrMaxWidth | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^(이미지 너비 × 비트폭 + 4)) - 1] |
|
현재 프레임: 현재 활성화되어 있고 검사 중인 프레임에서 감지된 최대 너비입니다. |
|
| CurrLineGap | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, (2^GapCountWidth)-1] |
|
현재 프레임: 현재 줄과 이전 줄 사이의 간격 (현재 활성화되어 있고 검토 중인 프레임에서). ![]() |
|
| CurrBlocked | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, 1] |
|
일반 정보: 1로 설정된 경우: 값 1은 입력 링크가 현재 출력 링크에 의해 차단되어 있음을 나타냅니다. |
|
| 오버플로우 마스크 | |
|---|---|
| Type | dynamic read parameter |
| Default | 0 |
| Range | [0, 31] |
|
운영자 제어: 비트 인코딩 방식의 오버플로 신호. 특정 비트가 설정되어 있으면 다음 카운터에서 오버플로가 발생했음을 나타냅니다:
[0] = 프레임 수 [1] = 픽셀 수 [2] = xPos [3] = yPos [4] = LineGapCount. |
|
다음 예제에서는 ImageAnalyzer 연산자의 사용법을 보여줍니다.
-
예시 - 이미지의 크기를 측정하여 설계 흐름을 분석하는 데 활용할 수 있습니다.
-
예시 - 이미지 타이밍이 제너레이터에 의해 제공되는 동안 디자인의 데이터 흐름을 분석할 수 있습니다.

![[중요]](../common/images/admon/important.png)

이전

