From 93b09a49a9eda089b19bc409b6020fe0873fefbe Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Mon, 8 May 2023 17:17:58 +0200 Subject: [PATCH] add formatting image name --- src/camera/camera/camera_controller.py | 10 +++++++--- src/px4_msgs | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/camera/camera/camera_controller.py b/src/camera/camera/camera_controller.py index de50bf96..b8b8e2e7 100644 --- a/src/camera/camera/camera_controller.py +++ b/src/camera/camera/camera_controller.py @@ -4,13 +4,14 @@ from rclpy.node import Node from drone_services.srv import TakePicture import cv2 +from datetime import datetime class CameraController(Node): def __init__(self): super().__init__('camera_controller') self.cam = cv2.VideoCapture(0) - + self.get_logger().info("Camera controller started. Waiting for service call...") self.srv = self.create_service(TakePicture, 'drone/picture', self.take_picture_callback) def take_picture_callback(self, request, response): @@ -18,11 +19,14 @@ class CameraController(Node): if (result): if (request.input_name == "default"): self.get_logger().info("Taking picture with default filename") - cv2.imwrite("/home/ubuntu/image.jpg", image) - response.filename = "/home/ubuntu/image.jpg" + now = datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + imagename = "/home/ubuntu/" + now + ".jpg" + cv2.imwrite(imagename, image) + response.filename = imagename else: cv2.imwrite(request.input_name, image) response.filename = request.input_name + self.get_logger().info("Picture saved as " + response.filename) return response def main(args=None): diff --git a/src/px4_msgs b/src/px4_msgs index ffc3a4cd..b64ef047 160000 --- a/src/px4_msgs +++ b/src/px4_msgs @@ -1 +1 @@ -Subproject commit ffc3a4cd578776213a444abe17d7eabf9621b266 +Subproject commit b64ef0475c1d44605688f4770899fe453d532be4