diff --git a/frigate/motion/__init__.py b/frigate/motion/__init__.py index 2c62b729f..73d2ee1fd 100644 --- a/frigate/motion/__init__.py +++ b/frigate/motion/__init__.py @@ -10,6 +10,7 @@ class MotionDetector(ABC): self, frame_shape: Tuple[int, int, int], config: MotionConfig, + fps: int, improve_contrast, threshold, contour_area, diff --git a/frigate/motion/cnt_motion.py b/frigate/motion/cnt_motion.py index dc3eba537..cc40253c7 100644 --- a/frigate/motion/cnt_motion.py +++ b/frigate/motion/cnt_motion.py @@ -13,6 +13,7 @@ class CNTMotionDetector(MotionDetector): self, frame_shape: Tuple[int, int, int], config: MotionConfig, + fps: int, improve_contrast, threshold, contour_area, @@ -41,7 +42,9 @@ class CNTMotionDetector(MotionDetector): # bool useHistory = true, # int maxPixelStability = 15*60, # bool isParallel = true); - self.bg_subtractor = cv2.bgsegm.createBackgroundSubtractorCNT() + self.bg_subtractor = cv2.bgsegm.createBackgroundSubtractorCNT( + fps, True, fps * 60, True + ) self.save_images = False self.frame_counter = 0 diff --git a/frigate/motion/frigate_motion.py b/frigate/motion/frigate_motion.py index 01efb4d4c..11703239d 100644 --- a/frigate/motion/frigate_motion.py +++ b/frigate/motion/frigate_motion.py @@ -11,6 +11,7 @@ class FrigateMotionDetector(MotionDetector): self, frame_shape, config: MotionConfig, + fps: int, improve_contrast_enabled, motion_threshold, motion_contour_area, diff --git a/frigate/video.py b/frigate/video.py index 35b24a609..9246a15b5 100755 --- a/frigate/video.py +++ b/frigate/video.py @@ -466,6 +466,7 @@ def track_camera( motion_detector = CNTMotionDetector( frame_shape, config.motion, + config.detect.fps, improve_contrast_enabled, motion_threshold, motion_contour_area,