コンテンツにスキップ
ステージングサーバー
開発サーバー

Flat-Field Correction#

Flat-Field Correction (FFC) カメラ機能により、センサーピクセルの光感度の違いや、照明および照明光学系に起因する画像上のムラを除去できます。

機能を使用する#

画像上のムラは、デジタル画像処理においてよく見られる現象です。これらは、センサーピクセルの輝度出力のばらつきや、光源および照明光学系の影響によって発生します。フラットフィールド補正は、元のピクセル値を補正することでこれらのムラを最小限に抑え、画質およびその後の解析精度を向上させます。

フラットフィールド補正を適用する前に、カメラをキャリブレーションする必要があります。これには、適切な補正データの算出が含まれます。これにより、画像取得時に元のピクセルを補正し、画質を向上させることができます。

Flat-Field Correction機能の実装は、カメラによって異なります:

Flat-Field Correctionの種類#

カメラモデルに応じて、Baslerカメラはブロックベースおよび列ベース(カラムベース)のフラットフィールド補正をサポートしています。

ブロックベースのフラットフィールド補正は、光応答不均一性(PRNU)や、照明および照明光学系に起因する低周波の変動によって生じる画像アーティファクトを補正します。ブロックベースのFFCは、センサーを一定数のピクセルで構成される正方形のブロックに「分割」します。キャリブレーション時に、各正方形ブロックの補正データが算出され、それが補間されてセンサーの各ピクセルに適用されます。

列ベースのフラットフィールド補正は、暗電流不均一性(DSNU)および光応答不均一性(PRNU)によって生じる画像アーティファクトを補正します。センサーの各列について、DSNUとPRNUの両方の補正値をキャリブレーション時に算出する必要があります。画像取得時には、これらの列ごとの補正値が元のピクセル値に適用されます。

次の図は、ブロックベースおよび列ベースのフラットフィールド補正の異なる原理を示しています。

Flat-Field Correctionの種類

補正値(CV)の作成#

ブロックベースのフラットフィールド補正: 光応答不均一性(PRNU)や、照明または光学系などに起因する低周波のアーティファクトを検出するために、明視野(フラットフィールド)画像のシーケンスが撮影されます。補正値(CV)はカメラによって算出され、カメラのフラッシュメモリに保存されます。

ブロックベースのフラットフィールド補正 ステップ1

列ベースのフラットフィールド補正: 暗電流不均一性(DSNU)(暗電流ノイズ)を検出するために暗視野画像のシーケンスが撮影され(A)、光応答不均一性(PRNU)を検出するために明視野(フラットフィールド)画像のシーケンスが撮影されます(B)。その後、補正値(CV)をユーザーが算出し、カメラのフラッシュメモリに保存する必要があります。

列ベースのフラットフィールド補正 ステップ1

Flat-Field Correctionの適用#

Flat-Field Correction機能が有効になっていれば、画像アーティファクトが除去されます。元のピクセル値(OV)が補正され、より優れた画像(結果値、RV)が得られます。

ブロックベースまたは列ベースのフラットフィールド補正 ステップ2

ace 2カメラ#

お使いのace 2カメラモデルに応じて、ブロックベースのフラットフィールド補正を利用できます。

情報

この機能は、pylon ViewerのBlock-Based Flat-Field Correction機能によって補完されます。

Block-Based Flat-Field Correction#

Flat-Field Correctionセットの作成#

このステップでは、カメラのキャリブレーションを行い、算出した補正値をフラットフィールド補正セットと呼ばれるファイルに保存します。これを行うには、pylon ViewerのBlock-Based Flat-Field Correction機能を使用します。

最大4つの補正セットを作成できます。

Flat-Field Correctionセットの有効化#

フラットフィールド補正セットを有効にするには:

  1. パラメーターを BslFlatFieldCorrectionMode パラメータを次のように設定: On.
  2. パラメーターを BslFlatFieldCorrectionSetIndex パラメータを使用するセットのインデックス番号(例:インデックス番号2)に設定します。

    選択した Flat-Field Correction セットは自動的に有効になります。

情報

Flat-Field Correction セットの切り替えは、画像取得中にも行うことができます。

boost Vカメラ#

Basler boost V カメラは、ブロックベースの Flat-Field Correction とカラムベースの Flat-Field Correction をサポートしています。これら 2 つの補正方式は、組み合わせて使用することも、個別に使用することもできます。

Block-Based Flat-Field Correction#

Flat-Field Correctionセットの作成#

この手順では、カメラのキャリブレーションを行い、計算された補正値を Flat-Field Correction セットと呼ばれるファイルに保存します。最大 16 個の補正セットを作成できます。

Flat-Field Correction セットの作成を開始する前に、次のアイテムが必要です。

  • 白い紙など、均一な背景を持つターゲット

情報

最良の結果を得るために、通常運用時と同様に、光学系、フレームレート、Exposure Time、ゲイン、カメラ温度を調整します。実際のアプリケーション環境で明視野画像を取得することを Basler は推奨しています。

Flat-Field Correction セットを作成するには:

  1. パラメーターを Width と Height 次のパラメータ: 画像ROI を最大値に設定します。
  2. 利用可能な場合は、Decimation および Dual ROI 機能を無効にします。
  3. Binning を無効にします。
  4. 後の運用時と同様に、Reverse X and Reverse Y を設定します。
  5. カメラの視野全体に白い紙を置くなどして、センサーを 70 % の飽和度まで均一に照明します。
  6. パラメーターを BslFlatFieldCorrectionSelector パラメータを次のように設定: BlockBased.
  7. パラメーターを BslFlatFieldCorrectionMode パラメータを次のように設定: On.
  8. パラメーターを BslFlatFieldCorrectionSetIndex パラメータを、作成するセットの希望するインデックス番号(例:2)に設定します。
  9. pylon Viewer のツールバーにある Continuous Shot ボタンをクリックして、画像取得を開始します。
  10. 実行する BslFlatFieldCorrectionSetCreate コマンドを実行して、新しい Flat-Field Correction セットを作成します。
    一連の明画像が取得され、評価されます。生成された補正データが、選択した Flat-Field Correction セットに収集されます。
  11. 次の操作を実行して、設定をカメラのフラッシュメモリに保存します: BslFlatFieldCorrectionSetSave コマンド。
    インデックス番号 2 などの Flat-Field Correction セットにすでに補正データが含まれている場合、それらは上書きされ、新しい補正値に置き換えられます。

    作成された Flat-Field Correction セットは自動的に有効になります。

Flat-Field Correctionセットの有効化#

フラットフィールド補正セットを有効にするには:

  1. パラメーターを BslFlatFieldCorrectionMode パラメータを次のように設定: On.
  2. パラメーターを BslFlatFieldCorrectionSetIndex パラメータを使用するセットのインデックス番号(例:インデックス番号2)に設定します。
  3. 実行する BslFlatFieldCorrectionSetLoad コマンド。

情報

Flat-Field Correction セットの切り替えは、画像取得中に行うことができます。ただし、その過程でわずかな画像アーティファクトが発生する場合があります。

Column-Based Flat-Field Correction#

情報

この機能は、pylon Viewer の Column-Based Flat-Field Correction 機能によって補完されます。

pylon Viewer を使用した補正値の計算#

→ pylon Viewer の Column-Based Flat-Field Correction 機能を参照してください。

pylon APIを使用した補正値の計算#

以下の数式パラメータが使用されます。

  • DMean: ダークフィールド画像内のすべてのピクセルの平均グレー値
  • GMean: ブライトフィールド画像内のすべてのピクセルの平均グレー値
  • DSNU_Coeff(x): 暗電流シェーディング(DSNU)係数
  • PRNU_Coeff(x): 光量応答不均一性(PRNU)係数
  • UserGD_Offset: ユーザー定義のグローバルダークオフセット

ここで、x は列インデックスです。

情報

最良の結果を得るには、実際のアプリケーション環境でダークフィールド画像およびブライトフィールド画像を取得してください。静的効果のみが補正されることに注意してください。レンズや照明などを変更した場合は、この手順を繰り返す必要があります。

補正値を計算するには:

  1. レンズにプラスチックキャップを取り付けるなどしてセンサーを遮光し、ダーク画像のシーケンスを取得します。
  2. 取得したすべての画像内のすべてのピクセルのグレー値を足し合わせ、その合計をピクセルの総数で割ります。結果は、ダークフィールド画像内のすべてのピクセルの平均グレー値(DMean)になります。
  3. 各列 x の平均グレー値(D(x))を計算します。
  4. カメラの視野全体に白い紙を置くなどして、センサーを70%の飽和度まで均一に照明し、ブライト画像のシーケンスを取得します。
  5. 取得したすべての画像内のすべてのピクセルのグレー値を足し合わせ、その合計をピクセルの総数で割ります。結果は、ブライトフィールド画像内のすべてのピクセルの平均グレー値(GMean)になります。
  6. 各列 x の平均グレー値(G(x))を計算します。
  7. 必要に応じて、要件に合わせたグローバルダークオフセット値(UserGD_Offset)を決定します。
  8. 各列 x について、次のように係数 DSNU_Coeff(x) および PRNU_Coeff(x) を計算します。

    DSNU および PRNU 補正の数式

  9. 計算された値を使用して、pylon API経由で対応するカメラパラメータを設定します。

    • 列インデックス(x): BslFlatFieldCorrectionCoeffX
    • DMean: BslFlatFieldCorrectionDMean
    • DSNU_Coeff(x): BslFlatFieldCorrectionCoeffDSNU
    • PRNU_Coeff(x): BslFlatFieldCorrectionCoeffPRNU
    • UserGD_Offset: BslFlatFieldCorrectionUserGD
  10. すべての列の補正値を設定したら、一連の画像を取得して Flat-Field Correction をテストできます。

  11. Image Quality に満足したら、次のコマンドを実行して設定をカメラのフラッシュメモリに保存します: BslFlatFieldCorrectionSaveToFlash コマンド。

Flat-Field Correction タイプの選択#

イメージ BslFlatFieldCorrectionSelector 使用する Flat-Field Correction のタイプを選択できます。パラメータには次の値を設定できます:

Flat-Field Correction の有効化または無効化#

Flat-Field Correction を有効または無効にするには、 BslFlatFieldCorrectionMode パラメーターを次のいずれかの値に設定します。

  • Onを設定します:選択された flat-field correction type に応じて、カメラは Flat-Field Correction を実行します。
  • DSNUOnly:カメラは DSNU 補正のみを実行します。

    情報

    このパラメータ値は、column-based flat-field correction を選択した場合にのみ利用可能です。

  • Off (デフォルト):カメラは 厳密な 選択した Flat-Field Correction のタイプを実行します。

特性#

すべてのカメラモデルを表示します

カメラモデル Available Flat-Field Correction Type
a2A640-240gmSWIR Flat-Field Correction feature not supported
a2A640-240umSWIR Flat-Field Correction feature not supported
a2A1280-80gmSWIR Flat-Field Correction feature not supported
a2A1280-125umSWIR Flat-Field Correction feature not supported
a2A1920-51gcBAS Flat-Field Correction feature not supported
a2A1920-51gcIP67 Flat-Field Correction feature not supported
a2A1920-51gcPRO Flat-Field Correction feature not supported
a2A1920-51gmBAS Flat-Field Correction feature not supported
a2A1920-51gmIP67 Flat-Field Correction feature not supported
a2A1920-51gmPRO Flat-Field Correction feature not supported
a2A1920-160ucBAS Flat-Field Correction feature not supported
a2A1920-160ucPRO Flat-Field Correction feature not supported
a2A1920-160umBAS Flat-Field Correction feature not supported
a2A1920-160umPRO Flat-Field Correction feature not supported
a2A1920-165g5cBAS Flat-Field Correction feature not supported
a2A1920-165g5mBAS Flat-Field Correction feature not supported
a2A1920-168mgc Flat-Field Correction feature not supported
a2A1920-168mgm Flat-Field Correction feature not supported
a2A2048-35gmSWIR Flat-Field Correction feature not supported
a2A2048-37gcBAS Flat-Field Correction feature not supported
a2A2048-37gcPRO Flat-Field Correction feature not supported
a2A2048-37gmBAS Flat-Field Correction feature not supported
a2A2048-37gmPRO Flat-Field Correction feature not supported
a2A2048-110umSWIR Flat-Field Correction feature not supported
a2A2048-114g5cBAS Flat-Field Correction feature not supported
a2A2048-114g5mBAS Flat-Field Correction feature not supported
a2A2048-114mgc Flat-Field Correction feature not supported
a2A2048-114mgm Flat-Field Correction feature not supported
a2A2048-114ucBAS Flat-Field Correction feature not supported
a2A2048-114ucPRO Flat-Field Correction feature not supported
a2A2048-114umBAS Flat-Field Correction feature not supported
a2A2048-114umPRO Flat-Field Correction feature not supported
a2A2048-173cmSWIR Flat-Field Correction feature not supported
a2A2440-98g5cBAS Flat-Field Correction feature not supported
a2A2440-98g5mBAS Flat-Field Correction feature not supported
a2A2448-23gcBAS Flat-Field Correction feature not supported
a2A2448-23gcIP67 Flat-Field Correction feature not supported
a2A2448-23gcPRO Flat-Field Correction feature not supported
a2A2448-23gmBAS Flat-Field Correction feature not supported
a2A2448-23gmIP67 Flat-Field Correction feature not supported
a2A2448-23gmPRO Flat-Field Correction feature not supported
a2A2448-75ucBAS Flat-Field Correction feature not supported
a2A2448-75ucPRO Flat-Field Correction feature not supported
a2A2448-75umBAS Flat-Field Correction feature not supported
a2A2448-75umPRO Flat-Field Correction feature not supported
a2A2448-90mgc Flat-Field Correction feature not supported
a2A2448-90mgm Flat-Field Correction feature not supported
a2A2448-105g5cBAS Flat-Field Correction feature not supported
a2A2448-105g5mBAS Flat-Field Correction feature not supported
a2A2448-120cc Flat-Field Correction feature not supported
a2A2448-120cm Flat-Field Correction feature not supported
a2A2448-210cc Flat-Field Correction feature not supported
a2A2448-210cm Flat-Field Correction feature not supported
a2A2464-23gcBAS Flat-Field Correction feature not supported
a2A2464-23gcPRO Block-based flat-field correction
a2A2464-23gmBAS Flat-Field Correction feature not supported
a2A2464-23gmPRO Block-based flat-field correction
a2A2464-77ucBAS Flat-Field Correction feature not supported
a2A2464-77ucPRO Block-based flat-field correction
a2A2464-77umBAS Flat-Field Correction feature not supported
a2A2464-77umPRO Block-based flat-field correction
a2A2464-115g5cBAS Block-based flat-field correction
a2A2464-115g5mBAS Block-based flat-field correction
a2A2560-20gmSWIR Flat-Field Correction feature not supported
a2A2560-70umSWIR Flat-Field Correction feature not supported
a2A2560-131cmSWIR Flat-Field Correction feature not supported
a2A2590-22gcBAS Flat-Field Correction feature not supported
a2A2590-22gcPRO Flat-Field Correction feature not supported
a2A2590-22gmBAS Flat-Field Correction feature not supported
a2A2590-22gmPRO Flat-Field Correction feature not supported
a2A2590-60ucBAS Flat-Field Correction feature not supported
a2A2590-60ucPRO Flat-Field Correction feature not supported
a2A2590-60umBAS Flat-Field Correction feature not supported
a2A2590-60umPRO Flat-Field Correction feature not supported
a2A2600-20gcBAS Flat-Field Correction feature not supported
a2A2600-20gcPRO Flat-Field Correction feature not supported
a2A2600-20gmBAS Flat-Field Correction feature not supported
a2A2600-20gmPRO Flat-Field Correction feature not supported
a2A2600-64ucBAS Flat-Field Correction feature not supported
a2A2600-64ucPRO Flat-Field Correction feature not supported
a2A2600-64umBAS Flat-Field Correction feature not supported
a2A2600-64umPRO Flat-Field Correction feature not supported
a2A2840-14gcBAS Flat-Field Correction feature not supported
a2A2840-14gcIP67 Flat-Field Correction feature not supported
a2A2840-14gcPRO Flat-Field Correction feature not supported
a2A2840-14gmBAS Flat-Field Correction feature not supported
a2A2840-14gmIP67 Flat-Field Correction feature not supported
a2A2840-14gmPRO Flat-Field Correction feature not supported
a2A2840-14gmUV Flat-Field Correction feature not supported
a2A2840-48ucBAS Flat-Field Correction feature not supported
a2A2840-48ucPRO Flat-Field Correction feature not supported
a2A2840-48umBAS Flat-Field Correction feature not supported
a2A2840-48umPRO Flat-Field Correction feature not supported
a2A2840-48umUV Flat-Field Correction feature not supported
a2A2840-57mgc Flat-Field Correction feature not supported
a2A2840-57mgm Flat-Field Correction feature not supported
a2A2840-67g5cBAS Flat-Field Correction feature not supported
a2A2840-67g5mBAS Flat-Field Correction feature not supported
a2A2840-67g5mUV Flat-Field Correction feature not supported
a2A2840-86cc Flat-Field Correction feature not supported
a2A2840-86cm Flat-Field Correction feature not supported
a2A3536-9gcBAS Flat-Field Correction feature not supported
a2A3536-9gcPRO Flat-Field Correction feature not supported
a2A3536-9gmBAS Flat-Field Correction feature not supported
a2A3536-9gmPRO Flat-Field Correction feature not supported
a2A3536-31ucBAS Flat-Field Correction feature not supported
a2A3536-31ucPRO Flat-Field Correction feature not supported
a2A3536-31umBAS Flat-Field Correction feature not supported
a2A3536-31umPRO Flat-Field Correction feature not supported
a2A3536-37mgc Flat-Field Correction feature not supported
a2A3536-37mgm Flat-Field Correction feature not supported
a2A3536-42g5cBAS Flat-Field Correction feature not supported
a2A3536-42g5mBAS Flat-Field Correction feature not supported
a2A3840-13gcBAS Flat-Field Correction feature not supported
a2A3840-13gcPRO Flat-Field Correction feature not supported
a2A3840-13gmBAS Flat-Field Correction feature not supported
a2A3840-13gmPRO Flat-Field Correction feature not supported
a2A3840-45ucBAS Flat-Field Correction feature not supported
a2A3840-45ucPRO Flat-Field Correction feature not supported
a2A3840-45umBAS Flat-Field Correction feature not supported
a2A3840-45umPRO Flat-Field Correction feature not supported
a2A4096-9gcBAS Flat-Field Correction feature not supported
a2A4096-9gcIP67 Flat-Field Correction feature not supported
a2A4096-9gcPRO Flat-Field Correction feature not supported
a2A4096-9gmBAS Flat-Field Correction feature not supported
a2A4096-9gmIP67 Flat-Field Correction feature not supported
a2A4096-9gmPRO Flat-Field Correction feature not supported
a2A4096-30ucBAS Flat-Field Correction feature not supported
a2A4096-30ucPRO Flat-Field Correction feature not supported
a2A4096-30umBAS Flat-Field Correction feature not supported
a2A4096-30umPRO Flat-Field Correction feature not supported
a2A4096-38mgc Flat-Field Correction feature not supported
a2A4096-38mgm Flat-Field Correction feature not supported
a2A4096-44g5cBAS Flat-Field Correction feature not supported
a2A4096-44g5mBAS Flat-Field Correction feature not supported
a2A4096-67cc Flat-Field Correction feature not supported
a2A4096-67cm Flat-Field Correction feature not supported
a2A4200-12gcBAS Flat-Field Correction feature not supported
a2A4200-12gcPRO Flat-Field Correction feature not supported
a2A4200-12gmBAS Flat-Field Correction feature not supported
a2A4200-12gmPRO Flat-Field Correction feature not supported
a2A4200-40ucBAS Flat-Field Correction feature not supported
a2A4200-40ucPRO Flat-Field Correction feature not supported
a2A4200-40umBAS Flat-Field Correction feature not supported
a2A4200-40umPRO Flat-Field Correction feature not supported
a2A4504-5gcBAS Flat-Field Correction feature not supported
a2A4504-5gcIP67 Flat-Field Correction feature not supported
a2A4504-5gcPRO Flat-Field Correction feature not supported
a2A4504-5gmBAS Flat-Field Correction feature not supported
a2A4504-5gmIP67 Flat-Field Correction feature not supported
a2A4504-5gmPRO Flat-Field Correction feature not supported
a2A4504-18ucBAS Flat-Field Correction feature not supported
a2A4504-18ucPRO Flat-Field Correction feature not supported
a2A4504-18umBAS Flat-Field Correction feature not supported
a2A4504-18umPRO Flat-Field Correction feature not supported
a2A4504-23mgc Flat-Field Correction feature not supported
a2A4504-23mgm Flat-Field Correction feature not supported
a2A4504-27g5cBAS Flat-Field Correction feature not supported
a2A4504-27g5mBAS Flat-Field Correction feature not supported
a2A4504-42cc Flat-Field Correction feature not supported
a2A4504-42cm Flat-Field Correction feature not supported
a2A4508-6gcBAS Flat-Field Correction feature not supported
a2A4508-6gcPRO Flat-Field Correction feature not supported
a2A4508-6gmBAS Flat-Field Correction feature not supported
a2A4508-6gmPRO Flat-Field Correction feature not supported
a2A4508-20ucBAS Flat-Field Correction feature not supported
a2A4508-20ucPRO Flat-Field Correction feature not supported
a2A4508-20umBAS Flat-Field Correction feature not supported
a2A4508-20umPRO Flat-Field Correction feature not supported
a2A5060-4gcBAS Flat-Field Correction feature not supported
a2A5060-4gmBAS Flat-Field Correction feature not supported
a2A5060-15ucBAS Flat-Field Correction feature not supported
a2A5060-15umBAS Flat-Field Correction feature not supported
a2A5060-21g5cBAS Flat-Field Correction feature not supported
a2A5060-21g5mBAS Flat-Field Correction feature not supported
a2A5060-35cc Flat-Field Correction feature not supported
a2A5060-35cm Flat-Field Correction feature not supported
a2A5320-7gcBAS Flat-Field Correction feature not supported
a2A5320-7gcIP67 Flat-Field Correction feature not supported
a2A5320-7gcPRO Flat-Field Correction feature not supported
a2A5320-7gmBAS Flat-Field Correction feature not supported
a2A5320-7gmPRO Flat-Field Correction feature not supported
a2A5320-7gmip67 Flat-Field Correction feature not supported
a2A5320-23ucBAS Flat-Field Correction feature not supported
a2A5320-23ucPRO Flat-Field Correction feature not supported
a2A5320-23umBAS Flat-Field Correction feature not supported
a2A5320-23umPRO Flat-Field Correction feature not supported
a2A5320-29mgc Flat-Field Correction feature not supported
a2A5320-29mgm Flat-Field Correction feature not supported
a2A5320-34g5cBAS Flat-Field Correction feature not supported
a2A5320-34g5mBAS Flat-Field Correction feature not supported
a2A5320-52cc Flat-Field Correction feature not supported
a2A5320-52cm Flat-Field Correction feature not supported
a2A5328-4gcBAS Flat-Field Correction feature not supported
a2A5328-4gcIP67 Flat-Field Correction feature not supported
a2A5328-4gcPRO Flat-Field Correction feature not supported
a2A5328-4gmBAS Flat-Field Correction feature not supported
a2A5328-4gmIP67 Flat-Field Correction feature not supported
a2A5328-4gmPRO Flat-Field Correction feature not supported
a2A5328-15ucBAS Flat-Field Correction feature not supported
a2A5328-15ucPRO Flat-Field Correction feature not supported
a2A5328-15umBAS Flat-Field Correction feature not supported
a2A5328-15umPRO Flat-Field Correction feature not supported
a2A5328-19mgc Flat-Field Correction feature not supported
a2A5328-19mgm Flat-Field Correction feature not supported
a2A5328-22g5cBAS Flat-Field Correction feature not supported
a2A5328-22g5mBAS Flat-Field Correction feature not supported
a2A5328-35cc Flat-Field Correction feature not supported
a2A5328-35cm Flat-Field Correction feature not supported
acA640-121gm Flat-Field Correction feature not supported
acA640-300gc Flat-Field Correction feature not supported
acA640-300gm Flat-Field Correction feature not supported
acA640-750uc Flat-Field Correction feature not supported
acA640-750um Flat-Field Correction feature not supported
acA720-290gc Flat-Field Correction feature not supported
acA720-290gm Flat-Field Correction feature not supported
acA720-520uc Flat-Field Correction feature not supported
acA720-520um Flat-Field Correction feature not supported
acA800-200gc Flat-Field Correction feature not supported
acA800-200gm Flat-Field Correction feature not supported
acA800-510uc Flat-Field Correction feature not supported
acA800-510um Flat-Field Correction feature not supported
acA1280-60gc Flat-Field Correction feature not supported
acA1280-60gm Flat-Field Correction feature not supported
acA1300-60gc Flat-Field Correction feature not supported
acA1300-60gm Flat-Field Correction feature not supported
acA1300-60gmNIR Flat-Field Correction feature not supported
acA1300-75gc Flat-Field Correction feature not supported
acA1300-75gm Flat-Field Correction feature not supported
acA1300-200uc Flat-Field Correction feature not supported
acA1300-200um Flat-Field Correction feature not supported
acA1440-73gc Flat-Field Correction feature not supported
acA1440-73gm Flat-Field Correction feature not supported
acA1440-220uc Flat-Field Correction feature not supported
acA1440-220um Flat-Field Correction feature not supported
acA1600-60gc Flat-Field Correction feature not supported
acA1600-60gm Flat-Field Correction feature not supported
acA1920-25gc Flat-Field Correction feature not supported
acA1920-25gm Flat-Field Correction feature not supported
acA1920-25uc Flat-Field Correction feature not supported
acA1920-25um Flat-Field Correction feature not supported
acA1920-40gc Flat-Field Correction feature not supported
acA1920-40gm Flat-Field Correction feature not supported
acA1920-40uc Flat-Field Correction feature not supported
acA1920-40ucMED Flat-Field Correction feature not supported
acA1920-40um Flat-Field Correction feature not supported
acA1920-40umMED Flat-Field Correction feature not supported
acA1920-48gc Flat-Field Correction feature not supported
acA1920-48gm Flat-Field Correction feature not supported
acA1920-50gc Flat-Field Correction feature not supported
acA1920-50gm Flat-Field Correction feature not supported
acA1920-150uc Flat-Field Correction feature not supported
acA1920-150um Flat-Field Correction feature not supported
acA1920-155uc Flat-Field Correction feature not supported
acA1920-155ucMED Flat-Field Correction feature not supported
acA1920-155um Flat-Field Correction feature not supported
acA1920-155umMED Flat-Field Correction feature not supported
acA2000-50gc Flat-Field Correction feature not supported
acA2000-50gm Flat-Field Correction feature not supported
acA2000-165uc Flat-Field Correction feature not supported
acA2000-165um Flat-Field Correction feature not supported
acA2040-25gc Flat-Field Correction feature not supported
acA2040-25gm Flat-Field Correction feature not supported
acA2040-25gmNIR Flat-Field Correction feature not supported
acA2040-35gc Flat-Field Correction feature not supported
acA2040-35gm Flat-Field Correction feature not supported
acA2040-55uc Flat-Field Correction feature not supported
acA2040-55um Flat-Field Correction feature not supported
acA2040-90uc Flat-Field Correction feature not supported
acA2040-90um Flat-Field Correction feature not supported
acA2040-90umNIR Flat-Field Correction feature not supported
acA2040-120uc Flat-Field Correction feature not supported
acA2040-120um Flat-Field Correction feature not supported
acA2440-20gc Flat-Field Correction feature not supported
acA2440-20gm Flat-Field Correction feature not supported
acA2440-35uc Flat-Field Correction feature not supported
acA2440-35ucMED Flat-Field Correction feature not supported
acA2440-35um Flat-Field Correction feature not supported
acA2440-35umMED Flat-Field Correction feature not supported
acA2440-75uc Flat-Field Correction feature not supported
acA2440-75ucMED Flat-Field Correction feature not supported
acA2440-75um Flat-Field Correction feature not supported
acA2440-75umMED Flat-Field Correction feature not supported
acA2500-14gc Flat-Field Correction feature not supported
acA2500-14gm Flat-Field Correction feature not supported
acA2500-14uc Flat-Field Correction feature not supported
acA2500-14um Flat-Field Correction feature not supported
acA2500-20gc Flat-Field Correction feature not supported
acA2500-20gcMED Flat-Field Correction feature not supported
acA2500-20gm Flat-Field Correction feature not supported
acA2500-20gmMED Flat-Field Correction feature not supported
acA2500-60uc Flat-Field Correction feature not supported
acA2500-60um Flat-Field Correction feature not supported
acA3088-16gc Flat-Field Correction feature not supported
acA3088-16gm Flat-Field Correction feature not supported
acA3088-57uc Flat-Field Correction feature not supported
acA3088-57ucMED Flat-Field Correction feature not supported
acA3088-57um Flat-Field Correction feature not supported
acA3088-57umMED Flat-Field Correction feature not supported
acA3800-10gc Flat-Field Correction feature not supported
acA3800-10gm Flat-Field Correction feature not supported
acA3800-14uc Flat-Field Correction feature not supported
acA3800-14um Flat-Field Correction feature not supported
acA4024-8gc Flat-Field Correction feature not supported
acA4024-8gm Flat-Field Correction feature not supported
acA4024-29uc Flat-Field Correction feature not supported
acA4024-29um Flat-Field Correction feature not supported
acA4096-11gc Flat-Field Correction feature not supported
acA4096-11gm Flat-Field Correction feature not supported
acA4096-30uc Flat-Field Correction feature not supported
acA4096-30ucMED Flat-Field Correction feature not supported
acA4096-30um Flat-Field Correction feature not supported
acA4096-30umMED Flat-Field Correction feature not supported
acA4096-40uc Flat-Field Correction feature not supported
acA4096-40ucMED Flat-Field Correction feature not supported
acA4096-40um Flat-Field Correction feature not supported
acA4096-40umMED Flat-Field Correction feature not supported
acA4112-8gc Flat-Field Correction feature not supported
acA4112-8gm Flat-Field Correction feature not supported
acA4112-20uc Flat-Field Correction feature not supported
acA4112-20ucMED Flat-Field Correction feature not supported
acA4112-20um Flat-Field Correction feature not supported
acA4112-20umMED Flat-Field Correction feature not supported
acA4112-30uc Flat-Field Correction feature not supported
acA4112-30ucMED Flat-Field Correction feature not supported
acA4112-30um Flat-Field Correction feature not supported
acA4112-30umMED Flat-Field Correction feature not supported
acA5472-5gc Flat-Field Correction feature not supported
acA5472-5gm Flat-Field Correction feature not supported
acA5472-17uc Flat-Field Correction feature not supported
acA5472-17ucMED Flat-Field Correction feature not supported
acA5472-17um Flat-Field Correction feature not supported
acA5472-17umMED Flat-Field Correction feature not supported
boA1936-400cc Flat-Field Correction feature not supported
boA1936-400cm Flat-Field Correction feature not supported
boA2448-250cc Flat-Field Correction feature not supported
boA2448-250cm Flat-Field Correction feature not supported
boA2832-190cc Flat-Field Correction feature not supported
boA2832-190cm Flat-Field Correction feature not supported
boA4096-93cc Flat-Field Correction feature not supported
boA4096-93cm Flat-Field Correction feature not supported
boA4096-180cc Flat-Field Correction feature not supported
boA4096-180cm Flat-Field Correction feature not supported
boA4112-68cc Flat-Field Correction feature not supported
boA4112-68cm Flat-Field Correction feature not supported
boA4500-45cc Flat-Field Correction feature not supported
boA4500-45cm Flat-Field Correction feature not supported
boA4504-100cc Flat-Field Correction feature not supported
boA4504-100cm Flat-Field Correction feature not supported
boA5056-95cm Flat-Field Correction feature not supported
boA5120-150cc Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA5120-150cm Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA5120-230cc Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA5120-230cm Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA5320-150cc Flat-Field Correction feature not supported
boA5320-150cm Flat-Field Correction feature not supported
boA5328-100cc Flat-Field Correction feature not supported
boA5328-100cm Flat-Field Correction feature not supported
boA6500-36cc Flat-Field Correction feature not supported
boA6500-36cm Flat-Field Correction feature not supported
boA8100-16cc Flat-Field Correction feature not supported
boA8100-16cm Flat-Field Correction feature not supported
boA9344-30cc Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA9344-30cm Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA9344-70cc Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA9344-70cm Block-based Flat-Field Correction
Column-based Flat-Field Correction
boA13440-17cm Flat-Field Correction feature not supported
daA720-520uc Flat-Field Correction feature not supported
daA720-520um Flat-Field Correction feature not supported
daA1280-54uc Flat-Field Correction feature not supported
daA1280-54um Flat-Field Correction feature not supported
daA1440-220uc Flat-Field Correction feature not supported
daA1440-220um Flat-Field Correction feature not supported
daA1600-60uc Flat-Field Correction feature not supported
daA1600-60um Flat-Field Correction feature not supported
daA1920-15um Flat-Field Correction feature not supported
daA1920-30uc Flat-Field Correction feature not supported
daA1920-30um Flat-Field Correction feature not supported
daA1920-160uc Flat-Field Correction feature not supported
daA1920-160um Flat-Field Correction feature not supported
daA2448-70uc Flat-Field Correction feature not supported
daA2448-70um Flat-Field Correction feature not supported
daA2500-14uc Flat-Field Correction feature not supported
daA2500-14um Flat-Field Correction feature not supported
daA3840-45uc Flat-Field Correction feature not supported
daA3840-45um Flat-Field Correction feature not supported
dmA720-290gc Flat-Field Correction feature not supported
dmA720-290gm Flat-Field Correction feature not supported
dmA1440-73gc Flat-Field Correction feature not supported
dmA1440-73gm Flat-Field Correction feature not supported
dmA1920-51gc Flat-Field Correction feature not supported
dmA1920-51gm Flat-Field Correction feature not supported
dmA2048-37gc Flat-Field Correction feature not supported
dmA2048-37gm Flat-Field Correction feature not supported
dmA2448-23gc Flat-Field Correction feature not supported
dmA2448-23gm Flat-Field Correction feature not supported
dmA2840-14gc Flat-Field Correction feature not supported
dmA2840-14gm Flat-Field Correction feature not supported
dmA3536-9gc Flat-Field Correction feature not supported
dmA3536-9gm Flat-Field Correction feature not supported
dmA4096-9gc Flat-Field Correction feature not supported
dmA4096-9gm Flat-Field Correction feature not supported
puA1280-54uc Flat-Field Correction feature not supported
puA1280-54um Flat-Field Correction feature not supported
puA1600-60uc Flat-Field Correction feature not supported
puA1600-60um Flat-Field Correction feature not supported
puA1920-30uc Flat-Field Correction feature not supported
puA1920-30um Flat-Field Correction feature not supported
puA2500-14uc Flat-Field Correction feature not supported
puA2500-14um Flat-Field Correction feature not supported
r2L2048-29gc Flat-Field Correction feature not supported
r2L2048-58gm Flat-Field Correction feature not supported
r2L2048-62cc Flat-Field Correction feature not supported
r2L2048-62g5c Flat-Field Correction feature not supported
r2L2048-172cm Flat-Field Correction feature not supported
r2L2048-172g5m Flat-Field Correction feature not supported
r2L4096-14gc Flat-Field Correction feature not supported
r2L4096-29gm Flat-Field Correction feature not supported
r2L4096-42cc Flat-Field Correction feature not supported
r2L4096-42g5c Flat-Field Correction feature not supported
r2L4096-84cm Flat-Field Correction feature not supported
r2L4096-84g5m Flat-Field Correction feature not supported
r2L8192-80cc Flat-Field Correction feature not supported
r2L8192-240cm Flat-Field Correction feature not supported
r2L16384-60cc Flat-Field Correction feature not supported
r2L16384-120cm Flat-Field Correction feature not supported
r2T16416-500cm Flat-Field Correction feature not supported

サンプルコード#

Block-Based 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()
Column-Based 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++言語でのみ使用できます。

pylon Viewerを使用して、パラメーターを簡単に設定することもできます。