Operator Library: Base
CastBitWidth 算子通过选择输入的低位来更改 Bit Width。如果输出的 Bit Width 大于输入的 Bit Width,则保留该值,即在高位补零。对于有符号值,会执行符号位扩展。如果输出的 Bit Width 小于输入的 Bit Width,则会丢弃高位。该值将更改为
,即仅使用剩余的位数。输出的 Bit Width 由
.
对于颜色值,每个分量都会被单独处理。
![]() |
CastBitWidth 算子可能会破坏您的数值 |
|---|---|
|
仅当您确定不再需要这些位时才将其丢弃。CastBitWidth 算子可能会破坏您的数值。 |
| Input Bit Width | 输入值 | Arithmetic | Output Bit Width | 输出值 | 注释 | ||
|---|---|---|---|---|---|---|---|
| 十进制 | 二进制 | 十进制 | 二进制 | ||||
| 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. 示例
以下示例展示了 CastBitWidth 算子的使用方法:
-
图 205:“为 16Bit 输出添加的 ShiftLeft 算子”
基础指南 - 使用 ShiftLeft 更改 DMA Bit Width。
-
示例 - 从方程到实现。关于如何实现叠加融合的解释。
-
Example - Histogram thresholding
-
示例 - 展示了运算符 Blob_Analysis_2D 的用法。 该小程序对输入数据进行二值化并确定斑点分析结果。 结果和原始图像均通过两个 DMA 通道输出。
-
示例 - 将斑点分析运算符应用于输入的相机图像。 该小程序展示了斑点数据在小程序中的用法。 在这种情况下,将定位面积最大的对象,并使用其坐标从原始图像中裁剪出该对象。
-
示例 - 该 applet 展示了一个关于 RGB 图像白平衡的示例。
-
示例 - Kirsch 滤波器是用于检测无方向边缘的理想边缘检测滤波器。
-
示例 - 仅在 x 方向上的 Sobel 滤波器。
-
示例 - 适用于所有 4 个方向的 Sobel 滤波器。
-
示例 - 一个简单的 3x3 盒式滤波器。
-
示例 - 使用 5x5 核的高斯滤波器。
-
示例 - 并行使用两个滤波器的示例。
-
示例 - 在不使用 SampleDn 算子的前提下按 3x3 因子进行下采样。
-
示例 - 展示了如何垂直镜像图像。 请注意并行字和像素的镜像。
-
示例 - 根据 Debevec 的 HDR
-
示例 - 带有线性方法的 HDR
-
示例 - 一个 High Speed 且稳健的激光线检测算法。 该算法可确定重心坐标,从而获得亚像素分辨率的结果。
-
示例 - 该示例展示了 2D Shading Correction 的实现。 校正值存储在采集卡 RAM 中。 该小应用程序执行高精度偏移和增益校正。
-
“使用 Operator RamLUT 的 2D Shading Correction / Flat Field Correction”
示例 - 该示例展示了 2D Shading Correction 的实现。 校正值存储在算子 RamLUT 中。 该小应用程序执行高精度偏移和增益校正。
-
'1D Shading Correction Using Block RAM'
Examples - 该示例展示了一维 Shading Correction。 校正值存储在块 RAM 内存中。
-
'使用采集卡 RAM 的 1D Shading Correction'
示例 - 该示例展示了 1D Shading Correction。 校正值存储在采集卡 RAM 中。

![[注意]](../common/images/admon/note.png)


上一页

