例程讲解21-Sensor-Control->sensor_manual_whitebal_control 感光元件手动白平衡控制
# 感光元件手动白平衡控制
#
# 此示例显示如何手动控制相机传感器的白平衡增益,而不是让自动白平衡控制运行。
# 通过调整R/G/B增益值使得图像的平均颜色为灰色来实现白平衡。
# 自动白平衡(AWB)算法可以为您完成此操作,但每次打开相机时通常会得到不同的结果,这使得难以正确地进行颜色跟踪设置。
# 通过手动记录您喜欢的增益值,然后在启动时强制它们到传感器,您可以控制相机看到的颜色。
import sensor, image, time
sensor.reset() # Reset and initialize the sensor.
sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240)
sensor.skip_frames(time = 2000) # Wait for settings take effect.
clock = time.clock() # Create a clock object to track the FPS.
# 您可以在此处控制白平衡增益。 第一个值是db中的R增益,然后是db中的G增益,然后是db中的B增益。
#
# 取消注释以下行使用您喜欢的增益值(从打印输出中获取)。
#
# sensor.set_auto_whitebal(False, rgb_gain_db = (0.0, 0.0, 0.0))
# 注意:为增益设置(0.0,0.0,0.0)会产生接近于零的值。不要指望进入的确切值等于出来的值。
while(True):
clock.tick() # Update the FPS clock.
img = sensor.snapshot() # Take a picture and return the image.
print(clock.fps(), \
sensor.get_rgb_gain_db()) # Prints the AWB current RGB gains.