当is_SetWhiteBalanceMultipliers()
功能过时时,我如何通过编程设置uEye USB相机(来自IDS制造商(的白平衡,以使用no自动白平衡和预定义乘法器
一些背景:我使用连接到Linux机器的uEye USB2相机(来自IDS(。我需要从相机中获得一个具有预定义颜色的RGB图像(在预定义的场景中(。例如,我想将WB配置为红色1.25倍、绿色1.0倍和蓝色2.0倍。对于这个任务,我在Linux上使用uEye SDK(头文件ueye.h
(。手册(A:相机基础>相机参数(指出is_SetWhiteBalanceMultipliers()
功能已过时,并建议改用is_SetAutoParameter()
功能。禁用自动白平衡(is_SetAutoParameter( hCam, IS_SET_ENABLE_AUTO_WHITEBALANCE, 0, 0)
(很容易,但我很难找到配置红/绿/蓝乘法器的方法。参数IS_SET_AUTO_WB_OFFSET
和IS_SET_AUTO_WB_GAIN_RANGE
只有在启用自动白平衡时才起作用,禁用时什么都不做。
如果有任何建议,我将不胜感激!
我遇到了同样的问题。我认为使用函数";is_设置硬件增益";在其上直接通过主、红、绿和蓝增益。在我的情况下,我在做之前禁用了白平衡,只是为了确保它有效。在这个例子中,我想将值设置为RGB增益=[8%,0%,32%],并将主增益设置为0%(为了不与增益因子混淆,0%通常对应于1x增益因子(:
double param1, param2; param1=0;
is_SetColorCorrection (hCam, IS_CCOR_DISABLE, ¶m1); //Disables the color fitler correction matrix
flagIDS = is_SetAutoParameter (hCam, IS_SET_ENABLE_AUTO_WHITEBALANCE, ¶m1, ¶m2);
param1=WB_MODE_DISABLE;
flagIDS = is_SetAutoParameter (hCam, IS_SET_ENABLE_AUTO_SENSOR_WHITEBALANCE, ¶m1, ¶m2);
flagIDS = is_SetHardwareGain (hCam, 0, 8, 0, 32);