From 034a2a735a6eca717311e9b07907e23abffd5c09 Mon Sep 17 00:00:00 2001 From: Don Restarone <35935196+donrestarone@users.noreply.github.com> Date: Sun, 9 Feb 2025 19:10:03 -0500 Subject: [PATCH 1/4] Update vilib.py --- vilib/vilib.py | 1 + 1 file changed, 1 insertion(+) diff --git a/vilib/vilib.py b/vilib/vilib.py index a36c592..685eca8 100644 --- a/vilib/vilib.py +++ b/vilib/vilib.py @@ -271,6 +271,7 @@ def camera(): # st = time.time() # ----------- image gains and effects ---------------- + picam2.set_controls({"AwbMode": 'Auto'}) # ----------- image detection and recognition ---------------- Vilib.img = Vilib.color_detect_func(Vilib.img) From b4fb67572f163524f78c68c518a7af9ec88448b5 Mon Sep 17 00:00:00 2001 From: Don Restarone <35935196+donrestarone@users.noreply.github.com> Date: Sun, 9 Feb 2025 19:38:51 -0500 Subject: [PATCH 2/4] Update vilib.py set awb after initialization --- vilib/vilib.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/vilib/vilib.py b/vilib/vilib.py index 685eca8..4f8daa3 100644 --- a/vilib/vilib.py +++ b/vilib/vilib.py @@ -233,7 +233,7 @@ def camera(): # init picamera picam2 = Picamera2() - + picam2.set_controls({"AwbMode": 'Auto'}) preview_config = picam2.preview_configuration # preview_config.size = (800, 600) preview_config.size = Vilib.camera_size @@ -271,7 +271,6 @@ def camera(): # st = time.time() # ----------- image gains and effects ---------------- - picam2.set_controls({"AwbMode": 'Auto'}) # ----------- image detection and recognition ---------------- Vilib.img = Vilib.color_detect_func(Vilib.img) From abd67b30464b4f722cf34bf94c268234177dbd2e Mon Sep 17 00:00:00 2001 From: Don Restarone <35935196+donrestarone@users.noreply.github.com> Date: Mon, 10 Feb 2025 20:14:45 -0500 Subject: [PATCH 3/4] Update vilib.py following steps for better low light picture quality here: https://forums.raspberrypi.com/viewtopic.php?t=284838 --- vilib/vilib.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vilib/vilib.py b/vilib/vilib.py index 4f8daa3..df758f0 100644 --- a/vilib/vilib.py +++ b/vilib/vilib.py @@ -234,6 +234,10 @@ def camera(): # init picamera picam2 = Picamera2() picam2.set_controls({"AwbMode": 'Auto'}) + picam2.sensor_mode = 3 + picam2.iso = 0 #Auto.This will yield less noise during day exposures and keep the iso down in low light for less noise. + picam2.framerate_range = (0.167, 6) #this should match the values available in sensor mode, allowing upto a 6 second exposure + picam2.exposure_mode = 'nightpreview' #raises the gains, and lowers the iso preview_config = picam2.preview_configuration # preview_config.size = (800, 600) preview_config.size = Vilib.camera_size From fee3defb139074e1eecca9720a33a96ee7180bcc Mon Sep 17 00:00:00 2001 From: Don Restarone <35935196+donrestarone@users.noreply.github.com> Date: Wed, 12 Feb 2025 22:57:31 -0500 Subject: [PATCH 4/4] Update vilib.py set enum value per https://github.com/sunfounder/vilib/pull/11#issuecomment-2655274272 --- vilib/vilib.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vilib/vilib.py b/vilib/vilib.py index df758f0..819a503 100644 --- a/vilib/vilib.py +++ b/vilib/vilib.py @@ -17,6 +17,7 @@ os.environ['LIBCAMERA_LOG_LEVELS'] = '*:ERROR' from picamera2 import Picamera2 import libcamera +from libcamera import controls import cv2 import numpy as np @@ -233,7 +234,7 @@ def camera(): # init picamera picam2 = Picamera2() - picam2.set_controls({"AwbMode": 'Auto'}) + picam2.set_controls({"AwbMode": controls.AwbModeEnum.Auto}) picam2.sensor_mode = 3 picam2.iso = 0 #Auto.This will yield less noise during day exposures and keep the iso down in low light for less noise. picam2.framerate_range = (0.167, 6) #this should match the values available in sensor mode, allowing upto a 6 second exposure