change setting resolution in constructor

This commit is contained in:
Sem van der Hoeven
2023-05-08 17:44:24 +02:00
parent ecc49c0751
commit 4117f415c7

View File

@@ -14,17 +14,13 @@ class CameraController(Node):
def __init__(self): def __init__(self):
super().__init__('camera_controller') super().__init__('camera_controller')
self.capture = cv2.VideoCapture(0,cv2.CAP_DSHOW) self.capture = cv2.VideoCapture(0,cv2.CAP_DSHOW)
self.get_logger().info(str(self.set_res(RES_4K_W,RES_4K_H))) self.capture.set(cv2.CAP_PROP_FRAME_WIDTH, RES_4K_W)
self.capture.set(cv2.CAP_PROP_FRAME_HEIGHT, RES_4K_H)
self.get_logger().info("Camera controller started. Waiting for service call...") self.get_logger().info("Camera controller started. Waiting for service call...")
self.srv = self.create_service(TakePicture, 'drone/picture', self.take_picture_callback) self.srv = self.create_service(TakePicture, 'drone/picture', self.take_picture_callback)
def set_res(self, x,y):
self.capture.set(cv2.CAP_PROP_FRAME_WIDTH, int(x))
self.capture.set(cv2.CAP_PROP_FRAME_HEIGHT, int(y))
return str(self.capture.get(cv2.CAP_PROP_FRAME_WIDTH)),str(self.capture.get(cv2.CAP_PROP_FRAME_HEIGHT))
def take_picture_callback(self, request, response): def take_picture_callback(self, request, response):
result, image = self.capture.read() result, image = self.capture.read()
if (result): if (result):