Operator Library: Base
CastBitWidth 연산자는 입력의 하위 비트를 선택하여 Bit Width를 변경합니다. 출력 Bit Width가 입력 Bit Width보다 크면 값이 유지되며, 즉 최상위 비트에 비트가 추가됩니다. 부호 있는 값의 경우 부호 확장(sign extension)이 수행됩니다. 출력 Bit Width가 입력 Bit Width보다 작으면 최상위 비트가 버려집니다. 값은 다음과 같이 변경됩니다.
,즉 남은 비트만 사용됩니다. 출력 Bit Width는 다음 항목에 의해 정의됩니다.
.
색상 값의 경우 각 구성 요소가 개별적으로 처리됩니다.
![]() |
CastBitWidth 연산자로 인해 데이터가 손실될 수 있습니다 |
|---|---|
|
필요하지 않다는 것을 확실히 아는 경우에만 비트를 폐기하십시오. CastBitWidth 연산자로 인해 데이터가 손실될 수 있습니다. |
| Input Bit Width | Input Value | Arithmetic | Output Bit Width | 출력 값 | Comment | ||
|---|---|---|---|---|---|---|---|
| Decimal | Binary | Decimal | Binary | ||||
| 5 | 10 | 01010 | unsigned | 4 | 10 | 1010 | 값이 유지됨 |
| 5 | 10 | 01010 | unsigned | 3 | 2 | 010 | 값이 변경됨 |
| 5 | 10 | 01010 | signed | 6 | 10 | 001010 | 값이 유지됨 |
| 5 | -10 | 10110 | signed | 6 | -10 | 110110 | 값이 유지됨, 부호 확장 |
| 5 | 10 | 01010 | signed | 4 | -6 | 1010 | 값이 변경됨 |
| 5 | -10 | 10110 | signed | 4 | 6 | 0110 | 값이 변경됨 |
표 31. 예시
|
입력 Bit Width의 범위는 다음과 같습니다:
|
|
|
입력 Bit Width의 범위는 다음과 같습니다:
|
CastBitWidth 연산자의 사용 예시는 다음과 같습니다.
-
그림 205, '16Bit 출력을 위해 추가된 ShiftLeft Operator'
기본 가이드 - DMA Bit Width를 변경하려면 ShiftLeft를 사용하십시오.
-
'두 카메라 소스의 이미지 데이터 결합 - 오버레이 블렌드 구축'
예제 - 방정식에서 구현까지. 오버레이 블렌드를 구현하는 방법에 대한 설명입니다.
-
예제 - 히스토그램 임계값 처리
-
Examples - 연산자 Blob_Analysis_2D의 사용법을 보여줍니다. 이 어플릿은 입력 데이터를 이진화하고 블롭 분석 결과를 결정합니다. 결과와 원본 이미지는 두 개의 DMA 채널을 통해 출력됩니다.
-
예시 - 블롭 분석 operator가 입력 카메라 이미지에 적용됩니다. 이 앱릿은 앱릿 내에서 블롭 데이터의 사용법을 보여줍니다. 이 경우 최대 면적을 가진 객체가 지역화되며, 해당 좌표를 사용하여 원본 이미지에서 객체를 잘라냅니다.
-
Examples - 이 어플릿은 RGB 이미지의 화이트 밸런싱 예시를 보여줍니다.
-
예시 - Kirsch filter는 무방향성 에지(edge) 검출에 적합한 에지 검출 필터입니다.
-
예시 - x 방향으로만 적용되는 Sobel 필터.
-
예시 - 4개 방향 모두에 적용되는 Sobel 필터.
-
예시 - 간단한 3x3 박스 필터.
-
예시 - 5x5 커널을 사용하는 가우스 필터.
-
예시 - 두 개의 필터를 병렬로 사용하는 예시.
-
예시 - SampleDn operator를 사용하지 않고 3x3 배율로 다운샘플링하는 방법.
-
예시 - 이미지를 수직으로 미러링하는 방법을 보여줍니다. 병렬 워드와 픽셀이 미러링되는 방식에 유의하십시오.
-
'High Dynamic Range and Low Dynamic Range Example Using Camera Response Function'
Examples - High Dynamic Range According to Debevec
-
'High Dynamic Range and Low Dynamic Range Example with a Weighted Linear Ansatz'
Examples - High Dynamic Range with Linear Ansatz
-
예시 - 고속 및 고견고성 레이저 라인 감지 알고리즘. 이 알고리즘은 서브픽셀 해상도 결과를 얻기 위해 무게 중심(center of gravity) 좌표를 결정합니다.
-
예제 - 이 예제는 2D Shading Correction의 구현을 보여줍니다. 보정 값은 프레임 그래버 RAM에 저장됩니다. 이 앱릿은 고정밀 오프셋 및 게인 보정을 수행합니다.
-
'RamLUT operator를 사용한 2D Shading Correction / Flat Field Correction'
예시 - 이 예시는 2D Shading Correction 구현을 보여줍니다. 보정 값은 RamLUT operator에 저장됩니다. Applet은 고정밀 오프셋 및 게인 보정을 수행합니다.
-
'블록 RAM을 사용한 1D Shading Correction'
예제 - 이 예제는 1D Shading Correction을 보여줍니다. 보정 값은 블록 RAM 메모리에 저장됩니다.
-
'프레임 그래버 RAM을 사용한 1D Shading Correction'
예제 - 이 예제는 1D Shading Correction을 보여줍니다. 보정 값은 Frame Grabber RAM에 저장됩니다.

![[참고]](../common/images/admon/note.png)


이전

