跳转到内容

Scaling#

The Scaling camera feature allows you to scale images from sensor size to the size of the image ROI.

例如,假设您的相机传感器分辨率为 2592 x 1944 像素。此外,假设您将图像 ROI 设置为 640 x 480 像素。现在,如果您启用了缩放,则图像将从 2592 x 1944 缩小至 640 x 480 像素。

如果图像 ROI 的纵横比与传感器的纵横比不匹配,则将对输出图像进行裁切,以避免失真。例如,假设传感器的纵横比为 4:3(例如,2592 x 1944 像素)。此外,假设您将图像 ROI 设置为 500 x 300。保持 4:3 的纵横比将需要 500 x 375 的分辨率。因此,为了避免失真,相机将从宽度裁切 75 像素。

要启用缩放,请将 BslScalingEnable 参数设置为 true

示例代码#

// Enable scaling
camera.BslScalingEnable.SetValue(true);
INodeMap& nodemap = camera.GetNodeMap();
// Enable scaling
CBooleanParameter(nodemap, "BslScalingEnable").SetValue(true);
/* 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 scaling */
errRes = PylonDeviceSetBooleanFeature(hdev, "BslScalingEnable", 1);
CHECK(errRes);

You can also use the pylon Viewer to easily set the parameters.