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

Pixel Correction Beyond#

Pixel Correction Beyond カメラ機能は、画像内の不良ピクセルを動的に補正します。

周辺ピクセルと比較して輝度値が著しく高いまたは低いピクセルを補正します。内部の閾値によって、どのタイミングでピクセルを補正するかが定義されます。

「動的」とは、取得した画像ごとにデフェクトピクセル補正が個別に計算されることを意味します。

機能を使用する#

Pixel Correction Beyondの有効化#

Pixel Correction Beyondを有効にするには:

  1. パラメーターを BslPixelCorrectionBeyondEnable パラメータを true.
  2. パラメーターを BslPixelCorrectionBeyond パラメータを0.0から1.0の間の値に設定します。
    これにより、適用する動的デフェクトピクセル補正の量が調整されます。値を高くすると、画像内で目立つ不良ピクセルを減らすことができます。ただし、値を高くしすぎると、画像情報が失われる可能性があります。

サンプルコード#

// Enable dynamic user defect pixel correction
camera.BslPixelCorrectionBeyondEnable.SetValue(true);
// Adjust the amount of defect pixel correction to be applied
camera.BslPixelCorrectionBeyond.SetValue(0.5);
INodeMap& nodemap = camera.GetNodeMap();
// Enable dynamic user defect pixel correction
CBooleanParameter(nodemap, "BslPixelCorrectionBeyondEnable").SetValue(true);
// Adjust the amount of defect pixel correction to be applied
CFloatParameter(nodemap, "BslPixelCorrectionBeyond").SetValue(0.5);
// Enable dynamic user defect pixel correction
camera.Parameters[PLCamera.BslPixelCorrectionBeyondEnable].SetValue(true);
// Adjust the amount of defect pixel correction to be applied
camera.Parameters[PLCamera.BslPixelCorrectionBeyond].SetValue(0.5);
/* 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 */
/* Enable dynamic user defect pixel correction */
errRes = PylonDeviceSetBooleanFeature(hdev, "BslPixelCorrectionBeyondEnable", 1);
CHECK(errRes);
/* Adjust the amount of defect pixel correction to be applied */
errRes = PylonDeviceSetFloatFeature(hdev, "BslPixelCorrectionBeyond", 0.5);
CHECK(errRes);
# Enable dynamic user defect pixel correction
camera.BslPixelCorrectionBeyondEnable.Value = True
# Adjust the amount of defect pixel correction to be applied
camera.BslPixelCorrectionBeyond.Value = 0.5

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