Flat-Field Correction#
使用功能#
影像中的不均勻現象在數位成像中十分常見。這些現象是由感測器像素的亮度輸出變化,以及光源和照明光學元件的影響所造成的。平場校正透過修正原始像素值,將這些不均勻現象降至最低,從而提升影像品質並改善後續分析結果。
在進行平場校正之前,必須先對相機進行校準。這涉及計算適當的校正資料。藉此,可在影像擷取過程中對原始像素進行校正,從而獲得更優質的影像。
Flat-Field Correction 功能的實作方式因相機型號而異:
類型Flat-Field Correction#
視相機型號而定,Basler 相機支援基於區塊和基於列的平場校正。
基於區塊的平場校正(FFC)可修正因光電響應不均勻性(PRNU)以及源自照明與照明光學系統的低頻波動所造成的影像瑕疵。基於區塊的 FFC 會將感測器「劃分為」由特定數量的像素組成的正方形區塊。在校準過程中,系統會針對每個正方形區塊計算校正數據,隨後將其進行插值處理,並套用至感測器的每個像素上。
基於列的平場校正可修正由暗訊號不均勻性(DSNU)及光電響應不均勻性(PRNU)所造成的影像瑕疵。對於感測器的每一列,必須在校準過程中分別計算 DSNU 與 PRNU 的校正值。在影像擷取過程中,這些按列計算的校正值會套用至原始像素值上。
下圖展示了基於區塊與基於欄位的平場校正的各種原理。
建立校正值 (CV)#
基於區塊的平場校正:拍攝一系列亮場(平場)影像,以偵測光電響應不均勻性(PRNU)以及由照明或光學元件等因素所造成的低頻雜訊。校正值(CV)由相機計算得出,並儲存至相機的快閃記憶體中。
基於列的平場校正:先拍攝一系列暗場影像(A),以偵測暗訊號不均勻性(DSNU)(暗電流雜訊);接著拍攝一系列亮場(平場)影像(B),以偵測光電響應不均勻性(PRNU)。隨後,使用者必須計算校正值(CV),並將其儲存至相機的快閃記憶體中。
申請Flat-Field Correction#
只要啟用了平場校正功能,即可去除影像中的雜訊。原始像素值(OV)經過校正後,便會產生品質更佳的影像(校正後值,RV)。
ace 2 雙鏡頭#
視您的 ace 2 相機型號而定,可使用基於區塊的平場校正功能。
資訊
基於區塊的 Flat-Field Correction#
建立「Flat-Field Correction 」套組#
Flat-Field Correction此步驟包含校正相機,並將計算出的校正值儲存至稱為「平場校正集」的檔案中。要執行此操作,請使用 pylon Viewer。
您可以建立最多 4 組校正設定。
啟用「Flat-Field Correction 」集#
若要啟用平場校正,請設定:
- 將相機中的
BslFlatFieldCorrectionMode參數設為On. -
將相機中的
BslFlatFieldCorrectionSetIndex將參數設定為要使用的集合的索引號,例如索引號 2。所選的平場校正集將自動啟用。
資訊
在影像擷取過程中,可以變更平場校正組。
boost V 相機#
Baslerboost V 攝影機支援基於區塊的平場校正及基於列的平場校正。這兩種校正原理可結合使用,亦可分別使用。
基於區塊的 Flat-Field Correction#
建立「Flat-Field Correction 」套組#
此步驟涉及校準相機,並將計算出的校正值儲存至一個稱為「平場校正集」的檔案中。您可以建立最多 16 組校正集。
在開始建立平場校正集之前,您需要準備以下項目:
- 一個背景均勻的目標,例如一張白紙
資訊
為獲得最佳效果,請如同進行常規操作時那樣,調整光學系統、幀率、曝光時間、增益及相機溫度。Basler 建議在實際應用環境中擷取明場影像。
要建立平場校正集:
- 將相機中的
Width進行明確的生命週期管理即呼叫Height的參數 影像 ROI 達到其最大值。 - 停用 Decimation 以及 Dual ROI 功能(如有)。
- 停用 Binning。
- 設定 Reverse X and Reverse Y ,如同您為後續操作所做的設定一樣。
- 請將感光元件均勻地照亮至 70% 飽和度,例如在相機的整個視野內放置一張白紙。
- 將相機中的
BslFlatFieldCorrectionSelector參數設為BlockBased. - 將相機中的
BslFlatFieldCorrectionMode參數設為On. - 將相機中的
BslFlatFieldCorrectionSetIndex將參數設為要建立的集合的目標索引號,例如 2。 - 點擊「pylon Viewer 」工具列中的「連續拍攝」按鈕,即可開始進行影像擷取。
- 執行
BslFlatFieldCorrectionSetCreate用於建立新的平場校正集的指令。
系統會擷取並評估一組明亮的影像。隨後生成的校正資料,會被彙整至所選定的平場校正資料集之中。 -
執行以下指令,將設定儲存至相機的快閃記憶體中:
BslFlatFieldCorrectionSetSave指令。
如果設定為(例如)索引編號 2 的平場校正已包含校正資料,則這些資料將會被覆寫,並替換為新的校正值。所建立的平場校正集會自動啟用。
啟用「Flat-Field Correction 」集#
若要啟用平場校正,請設定:
- 將相機中的
BslFlatFieldCorrectionMode參數設為On. - 將相機中的
BslFlatFieldCorrectionSetIndex將參數設定為要使用的集合的索引號,例如索引號 2。 - 執行
BslFlatFieldCorrectionSetLoad指令。
資訊
在影像擷取過程中,可以更換平場校正組。不過,在此過程中可能會產生輕微的影像偽影。
基於欄的 Flat-Field Correction#
資訊
Flat-Field Correction此功能由 pylon Viewer的「基於欄位的xml-ph-0000@deepl.internal」功能。
使用pylon Viewer#
Flat-Field Correction→請參閱 pylon Viewer。
使用pylon API#
涉及以下數學參數:
- DMean:暗場影像中所有像素的平均灰階值
- GMean:明場影像中所有像素的平均灰階值
- DSNU_Coeff(x):暗訊號不均勻性(DSNU)係數
- PRNU_Coeff(x):光響應不均勻性(PRNU)係數
- UserGD_Offset:使用者自訂的全域暗部偏移量
其中 x 為欄位索引。
資訊
為獲得最佳效果,請在實際應用環境中拍攝暗場與明場影像。請注意,此處僅能校正靜態效應。若您變更了鏡頭或照明等條件,則必須重複此程序。
要計算校正值:
- 請將感測器隔絕於光線之外(例如在鏡頭上套上塑膠蓋),並拍攝一組暗場影像。
- 將所有已擷取影像中所有像素的灰度值相加,再將總和除以像素總數。所得結果即為暗場影像中所有像素的平均灰度值(DMean)。
- 計算每列 x 的平均灰階值(D(x))。
- 將感光元件均勻地照亮至 70% 飽和度,例如在相機的整個視野內放置一張白紙,並拍攝一組明亮的影像。
- 將所有已擷取影像中所有像素的灰階值相加,並將總和除以像素總數。所得結果即為明場影像中所有像素的平均灰階值(GMean)。
- 計算每欄 x 的平均灰階值 (G(x))。
- 如有必要,請根據您的需求設定一個全域暗偏移值(UserGD_Offset)。
-
對於每一欄 x,請按以下方式計算係數DSNU_Coeff(x)和PRNU_Coeff(x):
-
請使用計算出的數值,透過pylon API 設定相應的相機參數。
- 欄位索引 (x):
BslFlatFieldCorrectionCoeffX - DMean:
BslFlatFieldCorrectionDMean - DSNU_Coeff(x):
BslFlatFieldCorrectionCoeffDSNU - PRNU_Coeff(x):
BslFlatFieldCorrectionCoeffPRNU - UserGD_Offset:
BslFlatFieldCorrectionUserGD
- 欄位索引 (x):
-
在為所有欄位設定完所有校正值後,您可以透過拍攝一系列影像來測試平場校正。
- 如果您對影像品質感到滿意,請執行以下操作,將設定儲存至相機的快閃記憶體中:
BslFlatFieldCorrectionSaveToFlash指令。
選擇Flat-Field Correction 類型#
當 BslFlatFieldCorrectionSelector 可讓您選擇要使用的平場校正類型。您可以將此參數設定為以下值:
啟用或停用Flat-Field Correction#
若要啟用或停用平場校正,請設定 BslFlatFieldCorrectionMode 參數設定為以下值之一:
On: 相機會根據以下條件進行平場校正: 平場校正類型 被選中。-
DSNUOnly: 相機的表現 DSNU 僅作更正。資訊
此參數值僅在選擇「基於欄位的平場校正」時才可用。
-
Off(預設):相機會 不 執行所選的平場校正類型。
外部連結#
詳細資料#
| 相機型號 | 可選型號:Flat-Field Correction |
|---|---|
| a2A640-240gmSWIR | Flat-Field Correction 此功能不支援 |
| a2A640-240umSWIR | Flat-Field Correction 此功能不支援 |
| a2A1280-80gmSWIR | Flat-Field Correction 此功能不支援 |
| a2A1280-125umSWIR | Flat-Field Correction 此功能不支援 |
| a2A1920-51gcBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-51gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A1920-51gcPRO | Flat-Field Correction 此功能不支援 |
| a2A1920-51gmBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-51gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A1920-51gmPRO | Flat-Field Correction 此功能不支援 |
| a2A1920-160ucBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-160ucPRO | Flat-Field Correction 此功能不支援 |
| a2A1920-160umBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-160umPRO | Flat-Field Correction 此功能不支援 |
| a2A1920-165g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-165g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A1920-168mgc | Flat-Field Correction 此功能不支援 |
| a2A1920-168mgm | Flat-Field Correction 此功能不支援 |
| a2A2048-35gmSWIR | Flat-Field Correction 此功能不支援 |
| a2A2048-37gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-37gcPRO | Flat-Field Correction 此功能不支援 |
| a2A2048-37gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-37gmPRO | Flat-Field Correction 此功能不支援 |
| a2A2048-110umSWIR | Flat-Field Correction 此功能不支援 |
| a2A2048-114g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-114g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-114mgc | Flat-Field Correction 此功能不支援 |
| a2A2048-114mgm | Flat-Field Correction 此功能不支援 |
| a2A2048-114ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-114ucPRO | Flat-Field Correction 此功能不支援 |
| a2A2048-114umBAS | Flat-Field Correction 此功能不支援 |
| a2A2048-114umPRO | Flat-Field Correction 此功能不支援 |
| a2A2048-173cmSWIR | Flat-Field Correction 此功能不支援 |
| a2A2440-98g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A2440-98g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-23gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-23gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A2448-23gcPRO | Flat-Field Correction 此功能不支援 |
| a2A2448-23gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-23gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A2448-23gmPRO | Flat-Field Correction 此功能不支援 |
| a2A2448-75ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-75ucPRO | Flat-Field Correction 此功能不支援 |
| a2A2448-75umBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-75umPRO | Flat-Field Correction 此功能不支援 |
| a2A2448-90mgc | Flat-Field Correction 此功能不支援 |
| a2A2448-90mgm | Flat-Field Correction 此功能不支援 |
| a2A2448-105g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-105g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A2448-120cc | Flat-Field Correction 此功能不支援 |
| a2A2448-120cm | Flat-Field Correction 此功能不支援 |
| a2A2448-210cc | Flat-Field Correction 此功能不支援 |
| a2A2448-210cm | Flat-Field Correction 此功能不支援 |
| a2A2464-23gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2464-23gcPRO | 基於區塊的平場校正 |
| a2A2464-23gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2464-23gmPRO | 基於區塊的平場校正 |
| a2A2464-77ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2464-77ucPRO | 基於區塊的平場校正 |
| a2A2464-77umBAS | Flat-Field Correction 此功能不支援 |
| a2A2464-77umPRO | 基於區塊的平場校正 |
| a2A2464-115g5cBAS | 基於區塊的平場校正 |
| a2A2464-115g5mBAS | 基於區塊的平場校正 |
| a2A2560-20gmSWIR | Flat-Field Correction 此功能不支援 |
| a2A2560-70umSWIR | Flat-Field Correction 此功能不支援 |
| a2A2560-131cmSWIR | Flat-Field Correction 此功能不支援 |
| a2A2590-22gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2590-22gcPRO | Flat-Field Correction 此功能不支援 |
| a2A2590-22gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2590-22gmPRO | Flat-Field Correction 此功能不支援 |
| a2A2590-60ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2590-60ucPRO | Flat-Field Correction 此功能不支援 |
| a2A2590-60umBAS | Flat-Field Correction 此功能不支援 |
| a2A2590-60umPRO | Flat-Field Correction 此功能不支援 |
| a2A2600-20gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2600-20gcPRO | Flat-Field Correction 此功能不支援 |
| a2A2600-20gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2600-20gmPRO | Flat-Field Correction 此功能不支援 |
| a2A2600-64ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2600-64ucPRO | Flat-Field Correction 此功能不支援 |
| a2A2600-64umBAS | Flat-Field Correction 此功能不支援 |
| a2A2600-64umPRO | Flat-Field Correction 此功能不支援 |
| a2A2840-14gcBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-14gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A2840-14gcPRO | Flat-Field Correction 此功能不支援 |
| a2A2840-14gmBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-14gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A2840-14gmPRO | Flat-Field Correction 此功能不支援 |
| a2A2840-14gmUV | Flat-Field Correction 此功能不支援 |
| a2A2840-48ucBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-48ucPRO | Flat-Field Correction 此功能不支援 |
| a2A2840-48umBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-48umPRO | Flat-Field Correction 此功能不支援 |
| a2A2840-48umUV | Flat-Field Correction 此功能不支援 |
| a2A2840-57mgc | Flat-Field Correction 此功能不支援 |
| a2A2840-57mgm | Flat-Field Correction 此功能不支援 |
| a2A2840-67g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-67g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A2840-67g5mUV | Flat-Field Correction 此功能不支援 |
| a2A2840-86cc | Flat-Field Correction 此功能不支援 |
| a2A2840-86cm | Flat-Field Correction 此功能不支援 |
| a2A3536-9gcBAS | Flat-Field Correction 此功能不支援 |
| a2A3536-9gcPRO | Flat-Field Correction 此功能不支援 |
| a2A3536-9gmBAS | Flat-Field Correction 此功能不支援 |
| a2A3536-9gmPRO | Flat-Field Correction 此功能不支援 |
| a2A3536-31ucBAS | Flat-Field Correction 此功能不支援 |
| a2A3536-31ucPRO | Flat-Field Correction 此功能不支援 |
| a2A3536-31umBAS | Flat-Field Correction 此功能不支援 |
| a2A3536-31umPRO | Flat-Field Correction 此功能不支援 |
| a2A3536-37mgc | Flat-Field Correction 此功能不支援 |
| a2A3536-37mgm | Flat-Field Correction 此功能不支援 |
| a2A3536-42g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A3536-42g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A3840-13gcBAS | Flat-Field Correction 此功能不支援 |
| a2A3840-13gcPRO | Flat-Field Correction 此功能不支援 |
| a2A3840-13gmBAS | Flat-Field Correction 此功能不支援 |
| a2A3840-13gmPRO | Flat-Field Correction 此功能不支援 |
| a2A3840-45ucBAS | Flat-Field Correction 此功能不支援 |
| a2A3840-45ucPRO | Flat-Field Correction 此功能不支援 |
| a2A3840-45umBAS | Flat-Field Correction 此功能不支援 |
| a2A3840-45umPRO | Flat-Field Correction 此功能不支援 |
| a2A4096-9gcBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-9gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A4096-9gcPRO | Flat-Field Correction 此功能不支援 |
| a2A4096-9gmBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-9gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A4096-9gmPRO | Flat-Field Correction 此功能不支援 |
| a2A4096-30ucBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-30ucPRO | Flat-Field Correction 此功能不支援 |
| a2A4096-30umBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-30umPRO | Flat-Field Correction 此功能不支援 |
| a2A4096-38mgc | Flat-Field Correction 此功能不支援 |
| a2A4096-38mgm | Flat-Field Correction 此功能不支援 |
| a2A4096-44g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-44g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A4096-67cc | Flat-Field Correction 此功能不支援 |
| a2A4096-67cm | Flat-Field Correction 此功能不支援 |
| a2A4200-12gcBAS | Flat-Field Correction 此功能不支援 |
| a2A4200-12gcPRO | Flat-Field Correction 此功能不支援 |
| a2A4200-12gmBAS | Flat-Field Correction 此功能不支援 |
| a2A4200-12gmPRO | Flat-Field Correction 此功能不支援 |
| a2A4200-40ucBAS | Flat-Field Correction 此功能不支援 |
| a2A4200-40ucPRO | Flat-Field Correction 此功能不支援 |
| a2A4200-40umBAS | Flat-Field Correction 此功能不支援 |
| a2A4200-40umPRO | Flat-Field Correction 此功能不支援 |
| a2A4504-5gcBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-5gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A4504-5gcPRO | Flat-Field Correction 此功能不支援 |
| a2A4504-5gmBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-5gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A4504-5gmPRO | Flat-Field Correction 此功能不支援 |
| a2A4504-18ucBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-18ucPRO | Flat-Field Correction 此功能不支援 |
| a2A4504-18umBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-18umPRO | Flat-Field Correction 此功能不支援 |
| a2A4504-23mgc | Flat-Field Correction 此功能不支援 |
| a2A4504-23mgm | Flat-Field Correction 此功能不支援 |
| a2A4504-27g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-27g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A4504-42cc | Flat-Field Correction 此功能不支援 |
| a2A4504-42cm | Flat-Field Correction 此功能不支援 |
| a2A4508-6gcBAS | Flat-Field Correction 此功能不支援 |
| a2A4508-6gcPRO | Flat-Field Correction 此功能不支援 |
| a2A4508-6gmBAS | Flat-Field Correction 此功能不支援 |
| a2A4508-6gmPRO | Flat-Field Correction 此功能不支援 |
| a2A4508-20ucBAS | Flat-Field Correction 此功能不支援 |
| a2A4508-20ucPRO | Flat-Field Correction 此功能不支援 |
| a2A4508-20umBAS | Flat-Field Correction 此功能不支援 |
| a2A4508-20umPRO | Flat-Field Correction 此功能不支援 |
| a2A5060-4gcBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-4gmBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-15ucBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-15umBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-21g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-21g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A5060-35cc | Flat-Field Correction 此功能不支援 |
| a2A5060-35cm | Flat-Field Correction 此功能不支援 |
| a2A5320-7gcBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-7gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A5320-7gcPRO | Flat-Field Correction 此功能不支援 |
| a2A5320-7gmBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-7gmPRO | Flat-Field Correction 此功能不支援 |
| a2A5320-7gmip67 | Flat-Field Correction 此功能不支援 |
| a2A5320-23ucBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-23ucPRO | Flat-Field Correction 此功能不支援 |
| a2A5320-23umBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-23umPRO | Flat-Field Correction 此功能不支援 |
| a2A5320-29mgc | Flat-Field Correction 此功能不支援 |
| a2A5320-29mgm | Flat-Field Correction 此功能不支援 |
| a2A5320-34g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-34g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A5320-52cc | Flat-Field Correction 此功能不支援 |
| a2A5320-52cm | Flat-Field Correction 此功能不支援 |
| a2A5328-4gcBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-4gcIP67 | Flat-Field Correction 此功能不支援 |
| a2A5328-4gcPRO | Flat-Field Correction 此功能不支援 |
| a2A5328-4gmBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-4gmIP67 | Flat-Field Correction 此功能不支援 |
| a2A5328-4gmPRO | Flat-Field Correction 此功能不支援 |
| a2A5328-15ucBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-15ucPRO | Flat-Field Correction 此功能不支援 |
| a2A5328-15umBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-15umPRO | Flat-Field Correction 此功能不支援 |
| a2A5328-19mgc | Flat-Field Correction 此功能不支援 |
| a2A5328-19mgm | Flat-Field Correction 此功能不支援 |
| a2A5328-22g5cBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-22g5mBAS | Flat-Field Correction 此功能不支援 |
| a2A5328-35cc | Flat-Field Correction 此功能不支援 |
| a2A5328-35cm | Flat-Field Correction 此功能不支援 |
| acA640-121gm | Flat-Field Correction 此功能不支援 |
| acA640-300gc | Flat-Field Correction 此功能不支援 |
| acA640-300gm | Flat-Field Correction 此功能不支援 |
| acA640-750uc | Flat-Field Correction 此功能不支援 |
| acA640-750um | Flat-Field Correction 此功能不支援 |
| acA720-290gc | Flat-Field Correction 此功能不支援 |
| acA720-290gm | Flat-Field Correction 此功能不支援 |
| acA720-520uc | Flat-Field Correction 此功能不支援 |
| acA720-520um | Flat-Field Correction 此功能不支援 |
| acA800-200gc | Flat-Field Correction 此功能不支援 |
| acA800-200gm | Flat-Field Correction 此功能不支援 |
| acA800-510uc | Flat-Field Correction 此功能不支援 |
| acA800-510um | Flat-Field Correction 此功能不支援 |
| acA1280-60gc | Flat-Field Correction 此功能不支援 |
| acA1280-60gm | Flat-Field Correction 此功能不支援 |
| acA1300-60gc | Flat-Field Correction 此功能不支援 |
| acA1300-60gm | Flat-Field Correction 此功能不支援 |
| acA1300-60gmNIR | Flat-Field Correction 此功能不支援 |
| acA1300-75gc | Flat-Field Correction 此功能不支援 |
| acA1300-75gm | Flat-Field Correction 此功能不支援 |
| acA1300-200uc | Flat-Field Correction 此功能不支援 |
| acA1300-200um | Flat-Field Correction 此功能不支援 |
| acA1440-73gc | Flat-Field Correction 此功能不支援 |
| acA1440-73gm | Flat-Field Correction 此功能不支援 |
| acA1440-220uc | Flat-Field Correction 此功能不支援 |
| acA1440-220um | Flat-Field Correction 此功能不支援 |
| acA1600-60gc | Flat-Field Correction 此功能不支援 |
| acA1600-60gm | Flat-Field Correction 此功能不支援 |
| acA1920-25gc | Flat-Field Correction 此功能不支援 |
| acA1920-25gm | Flat-Field Correction 此功能不支援 |
| acA1920-25uc | Flat-Field Correction 此功能不支援 |
| acA1920-25um | Flat-Field Correction 此功能不支援 |
| acA1920-40gc | Flat-Field Correction 此功能不支援 |
| acA1920-40gm | Flat-Field Correction 此功能不支援 |
| acA1920-40uc | Flat-Field Correction 此功能不支援 |
| acA1920-40ucMED | Flat-Field Correction 此功能不支援 |
| acA1920-40um | Flat-Field Correction 此功能不支援 |
| acA1920-40umMED | Flat-Field Correction 此功能不支援 |
| acA1920-48gc | Flat-Field Correction 此功能不支援 |
| acA1920-48gm | Flat-Field Correction 此功能不支援 |
| acA1920-50gc | Flat-Field Correction 此功能不支援 |
| acA1920-50gm | Flat-Field Correction 此功能不支援 |
| acA1920-150uc | Flat-Field Correction 此功能不支援 |
| acA1920-150um | Flat-Field Correction 此功能不支援 |
| acA1920-155uc | Flat-Field Correction 此功能不支援 |
| acA1920-155ucMED | Flat-Field Correction 此功能不支援 |
| acA1920-155um | Flat-Field Correction 此功能不支援 |
| acA1920-155umMED | Flat-Field Correction 此功能不支援 |
| acA2000-50gc | Flat-Field Correction 此功能不支援 |
| acA2000-50gm | Flat-Field Correction 此功能不支援 |
| acA2000-165uc | Flat-Field Correction 此功能不支援 |
| acA2000-165um | Flat-Field Correction 此功能不支援 |
| acA2040-25gc | Flat-Field Correction 此功能不支援 |
| acA2040-25gm | Flat-Field Correction 此功能不支援 |
| acA2040-25gmNIR | Flat-Field Correction 此功能不支援 |
| acA2040-35gc | Flat-Field Correction 此功能不支援 |
| acA2040-35gm | Flat-Field Correction 此功能不支援 |
| acA2040-55uc | Flat-Field Correction 此功能不支援 |
| acA2040-55um | Flat-Field Correction 此功能不支援 |
| acA2040-90uc | Flat-Field Correction 此功能不支援 |
| acA2040-90um | Flat-Field Correction 此功能不支援 |
| acA2040-90umNIR | Flat-Field Correction 此功能不支援 |
| acA2040-120uc | Flat-Field Correction 此功能不支援 |
| acA2040-120um | Flat-Field Correction 此功能不支援 |
| acA2440-20gc | Flat-Field Correction 此功能不支援 |
| acA2440-20gm | Flat-Field Correction 此功能不支援 |
| acA2440-35uc | Flat-Field Correction 此功能不支援 |
| acA2440-35ucMED | Flat-Field Correction 此功能不支援 |
| acA2440-35um | Flat-Field Correction 此功能不支援 |
| acA2440-35umMED | Flat-Field Correction 此功能不支援 |
| acA2440-75uc | Flat-Field Correction 此功能不支援 |
| acA2440-75ucMED | Flat-Field Correction 此功能不支援 |
| acA2440-75um | Flat-Field Correction 此功能不支援 |
| acA2440-75umMED | Flat-Field Correction 此功能不支援 |
| acA2500-14gc | Flat-Field Correction 此功能不支援 |
| acA2500-14gm | Flat-Field Correction 此功能不支援 |
| acA2500-14uc | Flat-Field Correction 此功能不支援 |
| acA2500-14um | Flat-Field Correction 此功能不支援 |
| acA2500-20gc | Flat-Field Correction 此功能不支援 |
| acA2500-20gcMED | Flat-Field Correction 此功能不支援 |
| acA2500-20gm | Flat-Field Correction 此功能不支援 |
| acA2500-20gmMED | Flat-Field Correction 此功能不支援 |
| acA2500-60uc | Flat-Field Correction 此功能不支援 |
| acA2500-60um | Flat-Field Correction 此功能不支援 |
| acA3088-16gc | Flat-Field Correction 此功能不支援 |
| acA3088-16gm | Flat-Field Correction 此功能不支援 |
| acA3088-57uc | Flat-Field Correction 此功能不支援 |
| acA3088-57ucMED | Flat-Field Correction 此功能不支援 |
| acA3088-57um | Flat-Field Correction 此功能不支援 |
| acA3088-57umMED | Flat-Field Correction 此功能不支援 |
| acA3800-10gc | Flat-Field Correction 此功能不支援 |
| acA3800-10gm | Flat-Field Correction 此功能不支援 |
| acA3800-14uc | Flat-Field Correction 此功能不支援 |
| acA3800-14um | Flat-Field Correction 此功能不支援 |
| acA4024-8gc | Flat-Field Correction 此功能不支援 |
| acA4024-8gm | Flat-Field Correction 此功能不支援 |
| acA4024-29uc | Flat-Field Correction 此功能不支援 |
| acA4024-29um | Flat-Field Correction 此功能不支援 |
| acA4096-11gc | Flat-Field Correction 此功能不支援 |
| acA4096-11gm | Flat-Field Correction 此功能不支援 |
| acA4096-30uc | Flat-Field Correction 此功能不支援 |
| acA4096-30ucMED | Flat-Field Correction 此功能不支援 |
| acA4096-30um | Flat-Field Correction 此功能不支援 |
| acA4096-30umMED | Flat-Field Correction 此功能不支援 |
| acA4096-40uc | Flat-Field Correction 此功能不支援 |
| acA4096-40ucMED | Flat-Field Correction 此功能不支援 |
| acA4096-40um | Flat-Field Correction 此功能不支援 |
| acA4096-40umMED | Flat-Field Correction 此功能不支援 |
| acA4112-8gc | Flat-Field Correction 此功能不支援 |
| acA4112-8gm | Flat-Field Correction 此功能不支援 |
| acA4112-20uc | Flat-Field Correction 此功能不支援 |
| acA4112-20ucMED | Flat-Field Correction 此功能不支援 |
| acA4112-20um | Flat-Field Correction 此功能不支援 |
| acA4112-20umMED | Flat-Field Correction 此功能不支援 |
| acA4112-30uc | Flat-Field Correction 此功能不支援 |
| acA4112-30ucMED | Flat-Field Correction 此功能不支援 |
| acA4112-30um | Flat-Field Correction 此功能不支援 |
| acA4112-30umMED | Flat-Field Correction 此功能不支援 |
| acA5472-5gc | Flat-Field Correction 此功能不支援 |
| acA5472-5gm | Flat-Field Correction 此功能不支援 |
| acA5472-17uc | Flat-Field Correction 此功能不支援 |
| acA5472-17ucMED | Flat-Field Correction 此功能不支援 |
| acA5472-17um | Flat-Field Correction 此功能不支援 |
| acA5472-17umMED | Flat-Field Correction 此功能不支援 |
| boA1936-400cc | Flat-Field Correction 此功能不支援 |
| boA1936-400cm | Flat-Field Correction 此功能不支援 |
| boA2448-250cc | Flat-Field Correction 此功能不支援 |
| boA2448-250cm | Flat-Field Correction 此功能不支援 |
| boA2832-190cc | Flat-Field Correction 此功能不支援 |
| boA2832-190cm | Flat-Field Correction 此功能不支援 |
| boA4096-93cc | Flat-Field Correction 此功能不支援 |
| boA4096-93cm | Flat-Field Correction 此功能不支援 |
| boA4096-180cc | Flat-Field Correction 此功能不支援 |
| boA4096-180cm | Flat-Field Correction 此功能不支援 |
| boA4112-68cc | Flat-Field Correction 此功能不支援 |
| boA4112-68cm | Flat-Field Correction 此功能不支援 |
| boA4500-45cc | Flat-Field Correction 此功能不支援 |
| boA4500-45cm | Flat-Field Correction 此功能不支援 |
| boA4504-100cc | Flat-Field Correction 此功能不支援 |
| boA4504-100cm | Flat-Field Correction 此功能不支援 |
| boA5056-95cm | Flat-Field Correction 此功能不支援 |
| boA5120-150cc | 基於區塊的平場校正 基於列的平場校正 |
| boA5120-150cm | 基於區塊的平場校正 基於列的平場校正 |
| boA5120-230cc | 基於區塊的平場校正 基於列的平場校正 |
| boA5120-230cm | 基於區塊的平場校正 基於列的平場校正 |
| boA5320-150cc | Flat-Field Correction 此功能不支援 |
| boA5320-150cm | Flat-Field Correction 此功能不支援 |
| boA5328-100cc | Flat-Field Correction 此功能不支援 |
| boA5328-100cm | Flat-Field Correction 此功能不支援 |
| boA6500-36cc | Flat-Field Correction 此功能不支援 |
| boA6500-36cm | Flat-Field Correction 此功能不支援 |
| boA8100-16cc | Flat-Field Correction 此功能不支援 |
| boA8100-16cm | Flat-Field Correction 此功能不支援 |
| boA9344-30cc | 基於區塊的平場校正 基於列的平場校正 |
| boA9344-30cm | 基於區塊的平場校正 基於列的平場校正 |
| boA9344-70cc | 基於區塊的平場校正 基於列的平場校正 |
| boA9344-70cm | 基於區塊的平場校正 基於列的平場校正 |
| boA13440-17cm | Flat-Field Correction 此功能不支援 |
| daA720-520uc | Flat-Field Correction 此功能不支援 |
| daA720-520um | Flat-Field Correction 此功能不支援 |
| daA1280-54uc | Flat-Field Correction 此功能不支援 |
| daA1280-54um | Flat-Field Correction 此功能不支援 |
| daA1440-220uc | Flat-Field Correction 此功能不支援 |
| daA1440-220um | Flat-Field Correction 此功能不支援 |
| daA1600-60uc | Flat-Field Correction 此功能不支援 |
| daA1600-60um | Flat-Field Correction 此功能不支援 |
| daA1920-15um | Flat-Field Correction 此功能不支援 |
| daA1920-30uc | Flat-Field Correction 此功能不支援 |
| daA1920-30um | Flat-Field Correction 此功能不支援 |
| daA1920-160uc | Flat-Field Correction 此功能不支援 |
| daA1920-160um | Flat-Field Correction 此功能不支援 |
| daA2448-70uc | Flat-Field Correction 此功能不支援 |
| daA2448-70um | Flat-Field Correction 此功能不支援 |
| daA2500-14uc | Flat-Field Correction 此功能不支援 |
| daA2500-14um | Flat-Field Correction 此功能不支援 |
| daA3840-45uc | Flat-Field Correction 此功能不支援 |
| daA3840-45um | Flat-Field Correction 此功能不支援 |
| dmA720-290gc | Flat-Field Correction 此功能不支援 |
| dmA720-290gm | Flat-Field Correction 此功能不支援 |
| dmA1440-73gc | Flat-Field Correction 此功能不支援 |
| dmA1440-73gm | Flat-Field Correction 此功能不支援 |
| dmA1920-51gc | Flat-Field Correction 此功能不支援 |
| dmA1920-51gm | Flat-Field Correction 此功能不支援 |
| dmA2048-37gc | Flat-Field Correction 此功能不支援 |
| dmA2048-37gm | Flat-Field Correction 此功能不支援 |
| dmA2448-23gc | Flat-Field Correction 此功能不支援 |
| dmA2448-23gm | Flat-Field Correction 此功能不支援 |
| dmA2840-14gc | Flat-Field Correction 此功能不支援 |
| dmA2840-14gm | Flat-Field Correction 此功能不支援 |
| dmA3536-9gc | Flat-Field Correction 此功能不支援 |
| dmA3536-9gm | Flat-Field Correction 此功能不支援 |
| dmA4096-9gc | Flat-Field Correction 此功能不支援 |
| dmA4096-9gm | Flat-Field Correction 此功能不支援 |
| puA1280-54uc | Flat-Field Correction 此功能不支援 |
| puA1280-54um | Flat-Field Correction 此功能不支援 |
| puA1600-60uc | Flat-Field Correction 此功能不支援 |
| puA1600-60um | Flat-Field Correction 此功能不支援 |
| puA1920-30uc | Flat-Field Correction 此功能不支援 |
| puA1920-30um | Flat-Field Correction 此功能不支援 |
| puA2500-14uc | Flat-Field Correction 此功能不支援 |
| puA2500-14um | Flat-Field Correction 此功能不支援 |
| r2L2048-29gc | Flat-Field Correction 此功能不支援 |
| r2L2048-58gm | Flat-Field Correction 此功能不支援 |
| r2L2048-62cc | Flat-Field Correction 此功能不支援 |
| r2L2048-62g5c | Flat-Field Correction 此功能不支援 |
| r2L2048-172cm | Flat-Field Correction 此功能不支援 |
| r2L2048-172g5m | Flat-Field Correction 此功能不支援 |
| r2L4096-14gc | Flat-Field Correction 此功能不支援 |
| r2L4096-29gm | Flat-Field Correction 此功能不支援 |
| r2L4096-42cc | Flat-Field Correction 此功能不支援 |
| r2L4096-42g5c | Flat-Field Correction 此功能不支援 |
| r2L4096-84cm | Flat-Field Correction 此功能不支援 |
| r2L4096-84g5m | Flat-Field Correction 此功能不支援 |
| r2L8192-80cc | Flat-Field Correction 此功能不支援 |
| r2L8192-240cm | Flat-Field Correction 此功能不支援 |
| r2L16384-60cc | Flat-Field Correction 此功能不支援 |
| r2L16384-120cm | Flat-Field Correction 此功能不支援 |
| r2T16416-500cm | Flat-Field Correction 此功能不支援 |
範例程式碼#
基於區塊的 Flat-Field Correction#
// NOTE: Valid for selected ace 2 cameras. Check the "Specifics" section
// Set the flat-field correction mode to On
camera.BslFlatFieldCorrectionMode.SetValue(BslFlatFieldCorrectionMode_On);
// Set the desired index number of the set to be enabled
camera.BslFlatFieldCorrectionSetIndex.SetValue(BslFlatFieldCorrectionSetIndex_1);
// NOTE: Valid for boost V cameras
// Set the type of flat-field correction to Block-Based
camera.BslFlatFieldCorrectionSelector.SetValue(BslFlatFieldCorrectionSelector_BlockBased);
// Set the flat-field correction mode to On
camera.BslFlatFieldCorrectionMode.SetValue(BslFlatFieldCorrectionMode_On);
// Set the desired index number of the set to be created
camera.BslFlatFieldCorrectionSetIndex.SetValue(BslFlatFieldCorrectionSetIndex_1);
// Create new flat-field correction data for the flat-field correction set selected
camera.BslFlatFieldCorrectionSetCreate.Execute();
// Save the correction data to the camera's flash memory
camera.BslFlatFieldCorrectionSetSave.Execute();
INodeMap& nodemap = camera.GetNodeMap();
// NOTE: Valid for selected ace 2 cameras. Check the "Specifics" section
// Set the flat-field correction mode to On
CEnumParameter(nodemap, "BslFlatFieldCorrectionMode").SetValue("On");
// Set the desired index number of the set to be enabled
CEnumParameter(nodemap, "BslFlatFieldCorrectionSetIndex").SetValue("");
// NOTE: Valid for boost V cameras
// Set the type of flat-field correction to Block-Based
CEnumParameter(nodemap, "BslFlatFieldCorrectionSelector").SetValue("BlockBased");
// Set the flat-field correction mode to On
CEnumParameter(nodemap, "BslFlatFieldCorrectionMode").SetValue("On");
// Set the desired index number of the set to be created
CEnumParameter(nodemap, "BslFlatFieldCorrectionSetIndex").SetValue("");
// Create new flat-field correction data for the flat-field correction set selected
CCommandParameter(nodemap, "BslFlatFieldCorrectionSetCreate").Execute();
// Save the correction data to the camera's flash memory
CCommandParameter(nodemap, "BslFlatFieldCorrectionSetSave").Execute();
// NOTE: Valid for selected ace 2 cameras. Check the "Specifics" section
// Set the flat-field correction mode to On
camera.Parameters[PLCamera.BslFlatFieldCorrectionMode].SetValue(PLCamera.BslFlatFieldCorrectionMode.On);
// Set the desired index number of the set to be enabled
camera.Parameters[PLCamera.BslFlatFieldCorrectionSetIndex].SetValue(PLCamera.BslFlatFieldCorrectionSetIndex.);
// NOTE: Valid for boost V cameras
// Set the type of flat-field correction to Block-Based
camera.Parameters[PLCamera.BslFlatFieldCorrectionSelector].SetValue(PLCamera.BslFlatFieldCorrectionSelector.BlockBased);
// Set the flat-field correction mode to On
camera.Parameters[PLCamera.BslFlatFieldCorrectionMode].SetValue(PLCamera.BslFlatFieldCorrectionMode.On);
// Set the desired index number of the set to be created
camera.Parameters[PLCamera.BslFlatFieldCorrectionSetIndex].SetValue(PLCamera.BslFlatFieldCorrectionSetIndex.);
// Create new flat-field correction data for the flat-field correction set selected
camera.Parameters[PLCamera.BslFlatFieldCorrectionSetCreate].Execute();
// Save the correction data to the camera's flash memory
camera.Parameters[PLCamera.BslFlatFieldCorrectionSetSave].Execute();
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK; /* Return value of pylon methods */
/* NOTE: Valid for selected ace 2 cameras. Check the "Specifics" section */
/* Set the flat-field correction mode to On */
errRes = PylonDeviceFeatureFromString(hdev, "BslFlatFieldCorrectionMode", "On");
CHECK(errRes);
/* Set the desired index number of the set to be enabled */
errRes = PylonDeviceFeatureFromString(hdev, "BslFlatFieldCorrectionSetIndex", "");
CHECK(errRes);
/* NOTE: Valid for boost V cameras */
/* Set the type of flat-field correction to Block-Based */
errRes = PylonDeviceFeatureFromString(hdev, "BslFlatFieldCorrectionSelector", "BlockBased");
CHECK(errRes);
/* Set the flat-field correction mode to On */
errRes = PylonDeviceFeatureFromString(hdev, "BslFlatFieldCorrectionMode", "On");
CHECK(errRes);
/* Set the desired index number of the set to be created */
errRes = PylonDeviceFeatureFromString(hdev, "BslFlatFieldCorrectionSetIndex", "");
CHECK(errRes);
/* Create new flat-field correction data for the flat-field correction set selected */
errRes = PylonDeviceExecuteCommandFeature(hdev, "BslFlatFieldCorrectionSetCreate");
CHECK(errRes);
/* Save the correction data to the camera's flash memory */
errRes = PylonDeviceExecuteCommandFeature(hdev, "BslFlatFieldCorrectionSetSave");
CHECK(errRes);
# NOTE: Valid for selected ace 2 cameras. Check the "Specifics" section
# Set the flat-field correction mode to On
camera.BslFlatFieldCorrectionMode.Value = "On"
# Set the desired index number of the set to be enabled
camera.BslFlatFieldCorrectionSetIndex.Value = ""
# NOTE: Valid for boost V cameras
# Set the type of flat-field correction to Block-Based
camera.BslFlatFieldCorrectionSelector.Value = "BlockBased"
# Set the flat-field correction mode to On
camera.BslFlatFieldCorrectionMode.Value = "On"
# Set the desired index number of the set to be created
camera.BslFlatFieldCorrectionSetIndex.Value = ""
# Create new flat-field correction data for the flat-field correction set selected
camera.BslFlatFieldCorrectionSetCreate.Execute()
# Save the correction data to the camera's flash memory
camera.BslFlatFieldCorrectionSetSave.Execute()
基於欄的 Flat-Field Correction#
// Example: Set all correction values for all columns
// Dark signal non-uniformity (DSNU) coefficient
// CalculatedDSNU[0..width-1]
// Photo response non-uniformity (PRNU) coefficient
// CalculatedPRNU[0..width-1]
for (x=0; ++x; x<width)
{
camera.BslFlatFieldCorrectionCoeffX.SetValue(x);
camera.BslFlatFieldCorrectionCoeffDSNU.SetValue(CalculatedDSNU[x]);
camera.BslFlatFieldCorrectionCoeffPRNU.SetValue(CalculatedPRNU[x]);
}
// Set the global dark offset value
camera.BslFlatFieldCorrectionUserGD.SetValue(40);
// Save the settings to the camera's flash memory
camera.BslFlatFieldCorrectionSaveToFlash.Execute();
// Set the type of flat-field correction to Column-Based
camera.BslFlatFieldCorrectionSelector.SetValue(BslFlatFieldCorrectionSelector_ColumnBased);
// Set the flat-field correction mode
camera.BslFlatFieldCorrectionMode.SetValue(BslFlatFieldCorrectionMode_On);
此範例程式碼僅提供 C++ 語言版本。
您也可以 use the pylon Viewer 來輕鬆設定參數。