Как установить параметр HDR камеры через OpenCv (python) - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь создать небольшой скрипт Python для захвата и отображения выходных данных веб-камеры и установки значения HDR веб-камеры (веб-камера поддерживает HDR).
Я пытаюсь сделать это с помощью OpenCv и Python.
Я пользуюсь платформой Windows, но также тестировал ее в Linux (Ubuntu 16.4) с теми же результатами.

Я попробовал несколько камер без удачи:
1. Logitech Brio
2. Веб-камера Logitech HD C270

Я попытался установить параметр HDR камеры, используя следующий код:

set_hdr = cam.set(cv2.CAP_PROP_XI_HDR_T1, 1)
print("set_hdr: {}".format(set_hdr))

actual_hdr = cam.get(cv2.CAP_PROP_XI_HDR)
print("actual_hdr: {}".format(actual_hdr))

Я получаю следующий вывод:

set_hdr: False
actual_hdr: -1.0

Я также пытался сделать это после запуска камеры, но не повезло.
Полный код ниже:

import cv2

cam = cv2.VideoCapture(0)

set_hdr = cam.set(cv2.CAP_PROP_XI_HDR_T1, 1)
print("set_hdr: {}".format(set_hdr))

actual_hdr = cam.get(cv2.CAP_PROP_XI_HDR)
print("actual_hdr: {}".format(actual_hdr))

print("########  Start Camera Loop  #########")
while True:
    ret_val, img = cam.read()
    if not ret_val:
        print("ret_val is False")
        continue

    cv2.imshow('my_camera', img)

    key_code = cv2.waitKey(10)
    if key_code == 27:
        break  # esc to quit
    elif key_code & 0xFF == ord('h'):
        # change hdr
        actual_hdr = cam.get(cv2.CAP_PROP_XI_HDR)
        print("current actual_hdr: {}".format(actual_hdr))

        set_hdr = cam.set(cv2.CAP_PROP_XI_HDR_T1, 0)
        print("set_hdr: {}".format(set_hdr))

        actual_hdr = cam.get(cv2.CAP_PROP_XI_HDR)
        print("set actual_hdr: {}".format(actual_hdr))

cv2.destroyAllWindows()

И результаты:

set_hdr: False
actual_hdr: -1.0
########  Start Camera Loop  #########
     ### Trying to change HDR ###
     current actual_hdr: -1.0
     set_hdr: False
     set actual_hdr: -1.0

Спасибо за все вашиhelp,
Saar

PS
Я новичок в Stack Overflow, так что любые советы по улучшению моих вопросов приветствуются!

...