OpenCV & Python: V4L2-Belichtung auf manuellen Modus einstellen

English Deutsch

Wenn du OpenCV unter Linux verwendest und ein Videogerät hast, das ein V4L2-Gerät wie eine USB-Webcam ansteuert:

v4l2_capture_example.py
camera = cv2.VideoCapture(0)

kannst du den automatischen Belichtungsmodus in der Regel einstellen, indem du exposure_auto auf 1 setzt (die folgende Ausgabe stammt von v4l2-ctl -d /dev/video0 --all):

v4l2_exposure_auto_output.txt
exposure_auto 0x009a0901 (menu)   : min=0 max=3 default=3 value=1
              1: Manual Mode
              3: Aperture Priority Mode

Wie in unserem vorherigen Blogpost gezeigt, wird exposure_auto (das in V4L2 in C/C++ als V4L2_CID_EXPOSURE_AUTO bezeichnet wird) auf CAP_PROP_AUTO_EXPOSURE abgebildet.

Daher kannst du die manuelle Belichtung aktivieren mit

v4l2_set_manual_exposure.py
camera.set(cv2.CAP_PROP_AUTO_EXPOSURE, 1) # Belichtung auf manuellen Modus einstellen

Du solltest diese Einstellungen jedoch mit v4l2-ctl --all für deine spezifische Kamera verifizieren.


Check out similar posts by category: OpenCV, Python