Operator Library: Base
「ConvertPixelFormat」運算子在將算術位元組寬度與位元寬度調整 至所需的輸出像素格式時,會盡可能保留最多資訊。 因此,此運算子允許在輸出鏈路上定義位元寬度與算術位元組寬度。
演算法的核心原則有兩方面:
-
透過裁剪來改變運算方式
- unsigned to signed: the MSB at the output is used as a sign bit
- 有符號轉無符號:將值截斷為正數,也就是說,若某個值小於 0,則將其設為零
-
在保持相對亮度的前提下,變更位元寬度 y
- 若輸出位元寬度增加,該值會向左移位以符合所需的位元寬度
- 若輸出位元寬度減少,則會將該數值進行除法運算並進行四捨五入,以符合所需的位元寬度
因此,輸出值可由以下公式決定:
| 輸入 Bit Width | 輸出 Bit Width | 輸入Arithmetic | 輸出Arithmetic | 輸入值 | 輸出值 | 備註 | ||
|---|---|---|---|---|---|---|---|---|
| 十進位 | 二進位 | 十進位 | 二進位 | |||||
| 4 | 5 | 無號數 | 無號數 | 10 | 1010 | 20 | 10100 | 值 * 2 |
| 5 | 4 | 無號數 | 無號數 | 15 | 1111 | 8 | 1000 | 該數值除以 2 並進行四捨五入 |
| 5 | 4 | 無號數 | 無號數 | 31 | 11111 | 15 | 1111 | 數值被截斷至最大值 |
| 4 | 4 | 無號數 | 有號 | 11 | 1011 | 6 | 0100 | 該數值除以 2 並進行四捨五入 |
| 4 | 4 | 有號 | 無號數 | 4 | 0100 | 8 | 1000 | 值 * 2 |
| 5 | 4 | 有號 | 無號數 | 10 | 01010 | 10 | 1010 | 保留的值 |
| 5 | 4 | 有號 | 無號數 | -2 | 11110 | 0 | 0000 | 數值被截斷為 0 |
| 5 | 4 | 有號 | 有號 | -7 | 11001 | -4 | 1100 | 該數值除以 2 並進行四捨五入 |
表 34. 範例
對於色彩連結,每個色彩成分都會分別進行處理。
以下範例示範了如何使用 ConvertPixelFormat 運算子:
-
圖 204,「新增 ConvertPixelFormat 運算子,用於 16 位元輸出」
基本指南 — 使用者可透過ConvertPiyelFormat函式來變更 DMA 位元寬度。
-
範例 - 此範例顯示使用 3x3 濾鏡進行 Bayer RAW 模式的去馬賽克處理。
-
範例 - 此範例顯示使用 5x5 濾鏡進行 Bayer RAW 模式的去馬賽克處理。
-
'Bayer 3x3 Demosacing with White Balancing'
範例 - 此範例展示使用 3x3 濾波器對 Bayer RAW 模式進行去馬賽克處理。 此外,還加入了用於色彩校正的 White Balancing。
-
'Bayer 5x5 Demosacing with White Balancing'
範例 - 此範例展示使用 5x5 濾波器對 Bayer RAW 模式進行去馬賽克處理。 此外,還加入了用於色彩校正的 White Balancing。
-
範例 - 此範例顯示雙線掃描相機(具備色彩模式 Red/BlueFollowedByGreen_GreenFollowedByBlue/Red)之 Bayer RAW 模式的去馬賽克處理
-
範例 - 此範例顯示雙線掃描相機(具備色彩模式 Red/BlueFollowedByBlue/Red_GreenFollowedByGreen)之 Bayer RAW 模式的去馬賽克處理
-
'Bayer Demosaicing a Line Scan Camera with 8 Bit BiColor Bayer Pattern'
範例 - 此範例顯示具有 BiColor Bayer 模式之 CXP-12 線掃描相機的 8 位元 Bayer RAW 模式去馬賽克處理:例如 BiColorRGBG、BiColorGRGB、BiColorBGRG 和 BiColorGBGR,適用於 racer 2 L 相機。此外,此範例包含一個線掃描觸發模組以及一個白平衡模組。
-
'Bayer Demosaicing a Line Scan Camera with 10 Bit BiColor Bayer Pattern'
範例 - 此範例顯示具有 BiColor Bayer 模式之 CXP-12 線掃描相機的 10 位元 Bayer RAW 模式去馬賽克處理:例如 BiColorRGBG、BiColorGRGB、BiColorBGRG 和 BiColorGBGR,適用於 racer 2 L 相機。此外,此範例包含一個線掃描觸發模組以及一個白平衡模組。
-
'Bayer Demosaicing a Line Scan Camera with 12 Bit BiColor Bayer Pattern'
範例 - 此範例顯示具有 BiColor Bayer 模式之 CXP-12 線掃描相機的 10 位元 Bayer RAW 模式去馬賽克處理:例如 BiColorRGBG、BiColorGRGB、BiColorBGRG 和 BiColorGBGR,適用於 racer 2 L 相機。此外,此範例包含一個線掃描觸發模組以及一個白平衡模組。
-
'Co-Processor Large Filter Calculation'
範例 - 展示 imaFlex 平臺的協同處理器功能。 作為範例,計算了大型濾波器核心。
-
'Image Received: Event Generation and General Purpose Output (GPO)'
Examples - The example shows the signal and event generation for start and end of an image frame.
-
範例 - 顯示如何分割與合併影像串流。將附加資料附加到影像尾端。
-
範例 - 此範例展示了 2D Shading Correction 的實作。 校正值會儲存在擷取卡 (frame grabber) RAM 中。 此 applet 會執行高精度的位移與增益校正。
-
「1D Shading Correction Using Block RAM」
範例 - 此範例展示了 1D Shading Correction。 校正值會儲存在區塊 RAM 記憶體中。
-
「1D Shading Correction Using Frame Grabber RAM」
範例 - 此範例展示了 1D Shading Correction。 校正值會儲存在 Frame Grabber RAM 中。
-
「imaFlex CXP-12 Quad 平台上的 DMAFromPC 運算子範例」
範例 - 以 Shading Correction 為例示範如何使用該運算子



上一頁

