From 2a8b323473c6e0d17f5481cc0270765a9f298cf0 Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Mon, 23 Feb 2026 08:12:02 +0100 Subject: [PATCH 1/6] Red road + YOLO at the same time (Elena 3.1) --- robotem-rovne/config/matty-redroad.json | 59 ++++++++++++++++++++----- 1 file changed, 49 insertions(+), 10 deletions(-) diff --git a/robotem-rovne/config/matty-redroad.json b/robotem-rovne/config/matty-redroad.json index de074ef..2808483 100644 --- a/robotem-rovne/config/matty-redroad.json +++ b/robotem-rovne/config/matty-redroad.json @@ -4,7 +4,7 @@ "modules": { "app": { "driver": "robotem-rovne.main:RobotemRovne", - "in": ["emergency_stop", "pose2d", "nn_mask", "nmea_data", "orientation_list"], + "in": ["emergency_stop", "pose2d", "nn_mask", "nmea_data", "orientation_list", "detections"], "out": ["desired_steering"], "init": { "max_speed": 0.5, @@ -62,14 +62,52 @@ "stereo_subpixel": false, "stereo_left_right_check": true, "sleep_on_start_sec": 3, - "model": { - "blob": "models/robotourist-083-redroad-20260116-224x224-rgb-chw-1shave.blob" - }, - "nn_config": { - "output_format": "LayerFp16", - "NN_family": "robotourist", - "input_size": "224x224" - } + "models": [ + { + "model": { + "blob": "models/robotourist-083-redroad-20260116-224x224-rgb-chw-1shave.blob" + }, + "nn_config": { + "output_format": "LayerFp16", + "NN_family": "robotourist", + "input_size": "224x224" + } + }, + { + "model": { + "blob": "models/yolov8n_coco_640x352.blob" + }, + "nn_config": { + "output_format": "detection", + "NN_family": "YOLO", + "input_size": "640x352", + "NN_specific_metadata": { + "classes": 80, + "coordinates": 4, + "anchors": [], + "anchor_masks": {}, + "iou_threshold": 0.5, + "confidence_threshold": 0.5 + } + }, + "mappings": { + "labels": [ + "person", "bicycle", "car", "motorbike", "aeroplane", "bus", "train", + "truck", "boat", "traffic light", "fire hydrant", "stop sign", "parking meter", "bench", + "bird", "cat", "dog", "horse", "sheep", "cow", "elephant", + "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", + "suitcase", "frisbee", "skis", "snowboard", "sports ball", "kite", "baseball bat", + "baseball glove", "skateboard", "surfboard", "tennis racket", "bottle", "wine glass", "cup", + "fork", "knife", "spoon", "bowl", "banana", "apple", "sandwich", + "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", + "chair", "sofa", "pottedplant", "bed", "diningtable", "toilet", "tvmonitor", + "laptop", "mouse", "remote", "keyboard", "cell phone", "microwave", "oven", + "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", + "teddy bear", "hair drier", "toothbrush" + ] + } + } + ] } } }, @@ -85,7 +123,8 @@ ["gps.nmea_data", "app.nmea_data"], ["oak.nn_mask", "app.nn_mask"], - ["oak.orientation_list", "app.orientation_list"] + ["oak.orientation_list", "app.orientation_list"], + ["oak.detections", "app.detections"] ] } } From 059b51547caa47040e6d4ad09028771c26f5f7ed Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Mon, 23 Feb 2026 08:14:00 +0100 Subject: [PATCH 2/6] rename test-redroad.json config --- robotem-rovne/config/{test_redroad.json => test-redroad.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename robotem-rovne/config/{test_redroad.json => test-redroad.json} (100%) diff --git a/robotem-rovne/config/test_redroad.json b/robotem-rovne/config/test-redroad.json similarity index 100% rename from robotem-rovne/config/test_redroad.json rename to robotem-rovne/config/test-redroad.json From d01de3b197d06ae2930693f3ccbba9555bb29059 Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Mon, 23 Feb 2026 08:16:22 +0100 Subject: [PATCH 3/6] extend config/test-redroad.json for YOLO --- robotem-rovne/config/test-redroad.json | 54 ++++++++++++++++++++++---- 1 file changed, 46 insertions(+), 8 deletions(-) diff --git a/robotem-rovne/config/test-redroad.json b/robotem-rovne/config/test-redroad.json index aace170..24d9bc4 100644 --- a/robotem-rovne/config/test-redroad.json +++ b/robotem-rovne/config/test-redroad.json @@ -22,14 +22,52 @@ "stereo_extended_disparity": false, "stereo_subpixel": false, "stereo_left_right_check": true, - "model": { - "blob": "models/robotourist-083-redroad-20260116-224x224-rgb-chw-1shave.blob" - }, - "nn_config": { - "output_format": "LayerFp16", - "NN_family": "robotourist", - "input_size": "224x224" - } + "models": [ + { + "model": { + "blob": "models/robotourist-083-redroad-20260116-224x224-rgb-chw-1shave.blob" + }, + "nn_config": { + "output_format": "LayerFp16", + "NN_family": "robotourist", + "input_size": "224x224" + } + }, + { + "model": { + "blob": "models/yolov8n_coco_640x352.blob" + }, + "nn_config": { + "output_format": "detection", + "NN_family": "YOLO", + "input_size": "640x352", + "NN_specific_metadata": { + "classes": 80, + "coordinates": 4, + "anchors": [], + "anchor_masks": {}, + "iou_threshold": 0.5, + "confidence_threshold": 0.5 + } + }, + "mappings": { + "labels": [ + "person", "bicycle", "car", "motorbike", "aeroplane", "bus", "train", + "truck", "boat", "traffic light", "fire hydrant", "stop sign", "parking meter", "bench", + "bird", "cat", "dog", "horse", "sheep", "cow", "elephant", + "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", + "suitcase", "frisbee", "skis", "snowboard", "sports ball", "kite", "baseball bat", + "baseball glove", "skateboard", "surfboard", "tennis racket", "bottle", "wine glass", "cup", + "fork", "knife", "spoon", "bowl", "banana", "apple", "sandwich", + "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", + "chair", "sofa", "pottedplant", "bed", "diningtable", "toilet", "tvmonitor", + "laptop", "mouse", "remote", "keyboard", "cell phone", "microwave", "oven", + "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", + "teddy bear", "hair drier", "toothbrush" + ] + } + } + ] } } }, From d2c65a44d9659910c419f6034126b271d9a504e9 Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Mon, 23 Feb 2026 08:21:44 +0100 Subject: [PATCH 4/6] fix path to yolo model --- robotem-rovne/config/matty-redroad.json | 2 +- robotem-rovne/config/test-redroad.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/robotem-rovne/config/matty-redroad.json b/robotem-rovne/config/matty-redroad.json index 2808483..576168e 100644 --- a/robotem-rovne/config/matty-redroad.json +++ b/robotem-rovne/config/matty-redroad.json @@ -75,7 +75,7 @@ }, { "model": { - "blob": "models/yolov8n_coco_640x352.blob" + "blob": "../dtc-systems/models/yolov8n_coco_640x352.blob" }, "nn_config": { "output_format": "detection", diff --git a/robotem-rovne/config/test-redroad.json b/robotem-rovne/config/test-redroad.json index 24d9bc4..eab35c6 100644 --- a/robotem-rovne/config/test-redroad.json +++ b/robotem-rovne/config/test-redroad.json @@ -35,7 +35,7 @@ }, { "model": { - "blob": "models/yolov8n_coco_640x352.blob" + "blob": "../dtc-systems/models/yolov8n_coco_640x352.blob" }, "nn_config": { "output_format": "detection", From ad7909047cc7f0d768c3c4fa59b6bba2a6f1aa91 Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Tue, 24 Feb 2026 19:35:58 +0100 Subject: [PATCH 5/6] add config/matty-redroad-night.json as copy of config/matty-redroad.json --- robotem-rovne/config/matty-redroad-night.json | 130 ++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 robotem-rovne/config/matty-redroad-night.json diff --git a/robotem-rovne/config/matty-redroad-night.json b/robotem-rovne/config/matty-redroad-night.json new file mode 100644 index 0000000..576168e --- /dev/null +++ b/robotem-rovne/config/matty-redroad-night.json @@ -0,0 +1,130 @@ +{ + "version": 2, + "robot": { + "modules": { + "app": { + "driver": "robotem-rovne.main:RobotemRovne", + "in": ["emergency_stop", "pose2d", "nn_mask", "nmea_data", "orientation_list", "detections"], + "out": ["desired_steering"], + "init": { + "max_speed": 0.5, + "stop_dist": -1, + "terminate_on_stop": true + } + }, + "platform": { + "driver": "osgar.platforms.matty:Matty", + "in": ["esp_data"], + "out": ["esp_data"], + "init": {} + }, + "timer": { + "driver": "timer", + "in": [], + "out": ["tick"], + "init": { + "sleep": 0.1 + } + }, + "gps": { + "driver": "gps", + "in": ["raw"], + "out": ["nmea_data"], + "init": { + } + }, + "serial": { + "driver": "serial", + "in": ["raw"], + "out": ["raw"], + "init": {"port": "/dev/esp32", "speed": 115200} + }, + "oak": { + "driver": "osgar.drivers.oak_camera:OakCamera", + "init": { + "fps": 10, + "is_color": true, + "video_encoder": "h265", + "h264_bitrate": 2000, + "is_depth": true, + "is_stereo_images": false, + "laser_projector_current": 0, + "flood_light_current": 500, + "is_imu_enabled": true, + "number_imu_records": 10, + "disable_magnetometer_fusion": true, + "mono_resolution": "THE_400_P", + "color_resolution": "THE_1080_P", + "color_manual_focus": 130, + "stereo_median_filter": "KERNEL_3x3", + "stereo_mode": "HIGH_ACCURACY", + "stereo_extended_disparity": false, + "stereo_subpixel": false, + "stereo_left_right_check": true, + "sleep_on_start_sec": 3, + "models": [ + { + "model": { + "blob": "models/robotourist-083-redroad-20260116-224x224-rgb-chw-1shave.blob" + }, + "nn_config": { + "output_format": "LayerFp16", + "NN_family": "robotourist", + "input_size": "224x224" + } + }, + { + "model": { + "blob": "../dtc-systems/models/yolov8n_coco_640x352.blob" + }, + "nn_config": { + "output_format": "detection", + "NN_family": "YOLO", + "input_size": "640x352", + "NN_specific_metadata": { + "classes": 80, + "coordinates": 4, + "anchors": [], + "anchor_masks": {}, + "iou_threshold": 0.5, + "confidence_threshold": 0.5 + } + }, + "mappings": { + "labels": [ + "person", "bicycle", "car", "motorbike", "aeroplane", "bus", "train", + "truck", "boat", "traffic light", "fire hydrant", "stop sign", "parking meter", "bench", + "bird", "cat", "dog", "horse", "sheep", "cow", "elephant", + "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", + "suitcase", "frisbee", "skis", "snowboard", "sports ball", "kite", "baseball bat", + "baseball glove", "skateboard", "surfboard", "tennis racket", "bottle", "wine glass", "cup", + "fork", "knife", "spoon", "bowl", "banana", "apple", "sandwich", + "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", + "chair", "sofa", "pottedplant", "bed", "diningtable", "toilet", "tvmonitor", + "laptop", "mouse", "remote", "keyboard", "cell phone", "microwave", "oven", + "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", + "teddy bear", "hair drier", "toothbrush" + ] + } + } + ] + } + } + }, + "links": [ + ["app.desired_steering", "platform.desired_steering"], + ["platform.pose2d", "app.pose2d"], + ["platform.emergency_stop", "app.emergency_stop"], + ["serial.raw", "platform.esp_data"], + ["platform.esp_data", "serial.raw"], + ["platform.gps_serial", "gps.raw"], + ["timer.tick", "platform.tick"], + + ["gps.nmea_data", "app.nmea_data"], + + ["oak.nn_mask", "app.nn_mask"], + ["oak.orientation_list", "app.orientation_list"], + ["oak.detections", "app.detections"] + ] + } +} From 5478c7551b4dee4bf67b0c97217764e6c6c63b5f Mon Sep 17 00:00:00 2001 From: Martin Dlouhy Date: Tue, 24 Feb 2026 19:41:06 +0100 Subject: [PATCH 6/6] config/matty-redroad-night.json - try night setup --- robotem-rovne/config/matty-redroad-night.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/robotem-rovne/config/matty-redroad-night.json b/robotem-rovne/config/matty-redroad-night.json index 576168e..9f0913a 100644 --- a/robotem-rovne/config/matty-redroad-night.json +++ b/robotem-rovne/config/matty-redroad-night.json @@ -43,17 +43,17 @@ "driver": "osgar.drivers.oak_camera:OakCamera", "init": { "fps": 10, - "is_color": true, + "is_color": false, "video_encoder": "h265", "h264_bitrate": 2000, "is_depth": true, - "is_stereo_images": false, + "is_stereo_images": true, "laser_projector_current": 0, "flood_light_current": 500, "is_imu_enabled": true, "number_imu_records": 10, "disable_magnetometer_fusion": true, - "mono_resolution": "THE_400_P", + "mono_resolution": [640, 400], "color_resolution": "THE_1080_P", "color_manual_focus": 130, "stereo_median_filter": "KERNEL_3x3",