跳转到内容
STAGING SERVER
DEVELOPMENT SERVER

Balance White Auto (dart E)#

相机的 Balance White Auto 功能会自动校正所采集到的图像中的色彩偏移。

要手动纠正色彩偏移,请使用 Balance White 功能。

该功能的使用#

启用或禁用 Balance White Auto#

若要启用水印或禁用 Balance White Auto 自动功能,请设置 BalanceWhiteAuto 参数设置为以下工作模式之一:

  • Continuous:相机在采集图像时会持续调节白平衡。
  • Off:禁用 Balance White Auto 自动功能。 BalanceRatio 参数保持上次自动或手动调节后的值。

运作原理#

自动白平衡分为两个步骤:

  1. 相机将对比红色、绿色和蓝色像素的平均灰度值。它会确定平均灰度值最高(即最亮)的颜色,并将该颜色的 BalanceRatio 参数 参数值设为 1。
  2. 相机将自动调节另外两种颜色的 BalanceRatio 参数值,直到红色、绿色和蓝色的平均灰度值完全相同。

因此,其中一种颜色的 BalanceRatio 参数将设为 1,另外两种颜色的参数将设为介于 1 与约 15.98 之间的值。

示例: 假设您图像中的绿色像素拥有最高的平均灰度值。如果启用 Balance White Auto 自动功能,相机将把绿色的 BalanceRatio 参数值设为 1。然后,相机将自动调节红色和蓝色的 BalanceRatio 参数值,直到红色、绿色和蓝色的平均灰度值完全相同。新的平衡比率例如可以是:绿色 = 1,红色 = 1.08789,蓝色 = 2.19678。

信息

  • 若要查看红色、绿色或蓝色的 BalanceRatio 参数值,请使用 BalanceRatioSelector.
  • 当相机连续拍摄图像时,自动功能会在经过较短的延迟后生效。前几张图像可能不受自动功能的影响。

示例代码#

// Enable Balance White Auto by setting the operating mode to Continuous
camera.BalanceWhiteAuto.SetValue(BalanceWhiteAuto_Continuous);
INodeMap& nodemap = camera.GetNodeMap();
// Enable Balance White Auto by setting the operating mode to Continuous
CEnumParameter(nodemap, "BalanceWhiteAuto").SetValue("Continuous");
// Enable Balance White Auto by setting the operating mode to Continuous
camera.Parameters[PLCamera.BalanceWhiteAuto].SetValue(PLCamera.BalanceWhiteAuto.Continuous);
/* 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 Balance White Auto by setting the operating mode to Continuous */
errRes = PylonDeviceFeatureFromString(hdev, "BalanceWhiteAuto", "Continuous");
CHECK(errRes);
# Enable Balance White Auto by setting the operating mode to Continuous
camera.BalanceWhiteAuto.Value = "Continuous"

您还可以使用 pylon Viewer 轻松设置参数。