Beispiel #1
0
    def process_frames(self, objects_to_track=['person'], object_filters={}):
        mask = np.zeros((self.frame_shape[0], self.frame_shape[1], 1),
                        np.uint8)
        mask[:] = 255
        motion_detector = MotionDetector(self.frame_shape, mask)

        object_detector = LocalObjectDetector(labels='/labelmap.txt')
        object_tracker = ObjectTracker(10)
        process_fps = mp.Value('d', 0.0)
        detection_fps = mp.Value('d', 0.0)
        current_frame = mp.Value('d', 0.0)
        stop_event = mp.Event()

        process_frames(self.camera_name,
                       self.frame_queue,
                       self.frame_shape,
                       self.frame_manager,
                       motion_detector,
                       object_detector,
                       object_tracker,
                       self.detected_objects_queue,
                       process_fps,
                       detection_fps,
                       current_frame,
                       objects_to_track,
                       object_filters,
                       mask,
                       stop_event,
                       exit_on_empty=True)
Beispiel #2
0
    def process_frames(self, objects_to_track=["person"], object_filters={}):
        mask = np.zeros((self.frame_shape[0], self.frame_shape[1], 1),
                        np.uint8)
        mask[:] = 255
        motion_detector = MotionDetector(self.frame_shape, mask,
                                         self.camera_config.motion)

        object_detector = LocalObjectDetector(labels="/labelmap.txt")
        object_tracker = ObjectTracker(self.camera_config.detect)
        process_info = {
            "process_fps": mp.Value("d", 0.0),
            "detection_fps": mp.Value("d", 0.0),
            "detection_frame": mp.Value("d", 0.0),
        }
        stop_event = mp.Event()
        model_shape = (self.config.model.height, self.config.model.width)

        process_frames(
            self.camera_name,
            self.frame_queue,
            self.frame_shape,
            model_shape,
            self.frame_manager,
            motion_detector,
            object_detector,
            object_tracker,
            self.detected_objects_queue,
            process_info,
            objects_to_track,
            object_filters,
            mask,
            stop_event,
            exit_on_empty=True,
        )