コンテンツにスキップ

Defect Pixel Correction#

Defect Pixel Correctionカメラ機能を使用すると、明るすぎる、または暗すぎる単一画素の影響を最小限に抑えられます。

機能を使用する#

仕組み#

取得した画像では、均一な光が使用されていても、一部の画素が他の画素よりも大幅に明るくまたは暗く見える場合があります。この問題は、個々の画素の感度の違いが原因で発生します。これは、製造上の許容誤差が原因です。

Defect Pixel Correction機能を使用すると、感度の違いによる影響を最小限に抑えられます。カメラは、隣接する画素よりも著しく高いまたは低い輝度値を持つ画素(「異常値ピクセル」)を識別し、その輝度値を調整します。

Baslerカメラでは、次の2種類の画素補正を実行できます。

  • 静的画素補正では、隣接する画素よりも輝度値が著しく低い画素(完全に黒い画素を含む)を補正します。
  • 動的画素補正では、隣接する画素よりも輝度値が著しく高い画素(完全に白い画素を含む)を補正します。

Defect Pixel Correctionの有効化#

Defect Pixel Correction機能を構成するには、DefectPixelCorrectionModeパラメーターを次のいずれかの値に設定します。

  • On(デフォルト):カメラは静的および動的画素補正を実行します。
  • StaticOnly:カメラは静的画素補正のみを実行します。
  • Off:カメラは画素補正を実行しません

サンプルコード#

// Disable defect pixel correction
camera.DefectPixelCorrectionMode.SetValue(DefectPixelCorrectionMode_Off);
INodeMap& nodemap = camera.GetNodeMap();
// Disable defect pixel correction
CEnumParameter(nodemap, "DefectPixelCorrectionMode").SetValue("Off");
// Disable defect pixel correction
camera.Parameters[PLCamera.DefectPixelCorrectionMode].SetValue(PLCamera.DefectPixelCorrectionMode.Off);
/* 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 */
/* Disable defect pixel correction */
errRes = PylonDeviceFeatureFromString(hdev, "DefectPixelCorrectionMode", "Off");
CHECK(errRes);

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