sensor_manual_whitebal_control.py

# Эта работа лицензирована по лицензии MIT.
# Copyright (c) 2013-2023 OpenMV LLC. All rights reserved.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Ручное управление балансом белого датчика
#
# В этом примере показано, как управлять
# усилением баланса белого датчика камеры вручную, а не полагаться на работу AWB.

# Баланс белого достигается путём регулировки значений усиления R/G/B
# таким образом, чтобы средний цвет изображения был серым. Алгоритм
# автоматического баланса белого (AWB) делает это за
# вас, но обычно каждый раз при включении камеры получается
# разный результат, из-за чего трудно правильно настроить
# параметры отслеживания цвета. Вручную записав
# понравившиеся вам значения усиления и затем принудительно установив их
# на датчике при запуске, вы можете управлять цветами,
# которые видит камера.

import csi
import time

csi0 = csi.CSI()
csi0.reset()  # Сброс и инициализация датчика.
csi0.pixformat(csi.RGB565)  # Установить формат пикселей RGB565 (или GRAYSCALE)
csi0.framesize(csi.QVGA)  # Установить размер кадра QVGA (320x240)
csi0.snapshot(time=2000)  # Подождать, пока настройки вступят в силу.
clock = time.clock()  # Создать объект clock для отслеживания FPS.

# Здесь вы можете управлять усилением баланса белого. Первое значение -
# это усиление R в дБ, затем усиление G в дБ, затем усиление B в дБ.
#
# Раскомментируйте строку ниже со значениями усиления, которые вам нравятся (возьмите их из вывода печати).
#
# csi0.auto_whitebal(False, rgb_gain_db = (0.0, 0.0, 0.0))

# Примечание: указание (0.0, 0.0, 0.0) для усиления даёт на выходе значение, близкое к нулю.
# Не ожидайте, что точное входное значение будет равно значению
# на выходе.

while True:
    clock.tick()  # Обновить счётчик FPS.
    img = csi0.snapshot()  # Сделать снимок и вернуть изображение.
    print(clock.fps(), csi0.rgb_gain_db())  # Выводит текущие значения усиления RGB для AWB.

results matching ""

    No results matching ""