Browse Source

update snapshot with better scores

Blake Blackshear 4 năm trước cách đây
mục cha
commit
709d917f0c
1 tập tin đã thay đổi với 6 bổ sung0 xóa
  1. 6 0
      frigate/object_processing.py

+ 6 - 0
frigate/object_processing.py

@@ -139,6 +139,12 @@ class TrackedObjectProcessor(threading.Thread):
                     if obj['score'] > best_objects[obj['label']]['score'] or (now - best_objects[obj['label']]['frame_time']) > 60:
                         obj['frame'] = np.copy(self.camera_data[camera]['current_frame'])
                         best_objects[obj['label']] = obj
+                        # send updated snapshot over mqtt
+                        best_frame = cv2.cvtColor(obj['frame'], cv2.COLOR_RGB2BGR)
+                        ret, jpg = cv2.imencode('.jpg', best_frame)
+                        if ret:
+                            jpg_bytes = jpg.tobytes()
+                            self.client.publish(f"{self.topic_prefix}/{camera}/{obj['label']}/snapshot", jpg_bytes, retain=True)
                 else:
                     obj['frame'] = np.copy(self.camera_data[camera]['current_frame'])
                     best_objects[obj['label']] = obj