Полоса горизонтальной прокрутки во время захвата изображения с помощью веб-камеры Logitech C270 и Opencv4? Как исправить - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь захватить веб-изображение с OPENCV v4.0, используя светодиодный источник света 240 В для освещения поля. Поскольку я живу в Австралии, наша сеть электропитания составляет 50 Гц и работает под управлением Ubuntu 18.04

Веб-камера logitech C270, по-видимому, ограничена 20 кадрами в секунду, и я изо всех сил стараюсь получить чистое изображение, так как после включения светодиода горизонтальная полоса прокручивает изображение в окне дисплея.

Я пытался использовать v4l2-ctl, чтобы изменить частоту линии электропередачи с 60 Гц до 50 Гц, но безрезультатно. Полосность не возникает, когда источником освещения является стандартный флуоресцентный свет.

Пример изображения можно посмотреть здесь: https://imgur.com/wyAN03X

Большое спасибо за любые намеки или советы. Очень ценю и надеюсь, что вы все в целости и сохранности в течение этого hecti c времени.

С точки зрения кода, я не делаю ничего фантастического:

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

cap.set(cv2.CAP_PROP_FRAME_WIDTH, 800)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 600)



while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    # Our operations on the frame come here
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # Display the resulting frame
    #cv2.imshow('frame',gray)
    cv2.imshow('frame',frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

V4lt c экспорт можно увидеть ниже: https://imgur.com/hOZdvoP

1 Ответ

0 голосов
/ 05 апреля 2020

Оказывается, что для этого нет решения, так как эта конкретная веб-камера развивает максимальную частоту 30 кадров в секунду из-за своего возраста, а частота светодиода в Австралии составляет 50 Гц. быть установленным на 50, таким образом решая проблему.

...