mirror of
				https://github.com/blakeblackshear/frigate.git
				synced 2025-10-27 10:52:11 +01:00 
			
		
		
		
	allow motion based retention when detect is disabled
This commit is contained in:
		
							parent
							
								
									5792cf042e
								
							
						
					
					
						commit
						583912db9c
					
				| @ -491,19 +491,15 @@ def process_frames( | |||||||
|             logger.info(f"{camera_name}: frame {frame_time} is not in memory store.") |             logger.info(f"{camera_name}: frame {frame_time} is not in memory store.") | ||||||
|             continue |             continue | ||||||
| 
 | 
 | ||||||
|         if not detection_enabled.value: |  | ||||||
|             fps.value = fps_tracker.eps() |  | ||||||
|             object_tracker.match_and_update(frame_time, []) |  | ||||||
|             detected_objects_queue.put( |  | ||||||
|                 (camera_name, frame_time, object_tracker.tracked_objects, [], []) |  | ||||||
|             ) |  | ||||||
|             detection_fps.value = object_detector.fps.eps() |  | ||||||
|             frame_manager.close(f"{camera_name}{frame_time}") |  | ||||||
|             continue |  | ||||||
| 
 |  | ||||||
|         # look for motion |         # look for motion | ||||||
|         motion_boxes = motion_detector.detect(frame) |         motion_boxes = motion_detector.detect(frame) | ||||||
| 
 | 
 | ||||||
|  |         regions = [] | ||||||
|  | 
 | ||||||
|  |         # if detection is disabled | ||||||
|  |         if not detection_enabled.value: | ||||||
|  |             object_tracker.match_and_update(frame_time, []) | ||||||
|  |         else: | ||||||
|             # get stationary object ids |             # get stationary object ids | ||||||
|             # check every Nth frame for stationary objects |             # check every Nth frame for stationary objects | ||||||
|             # disappeared objects are not stationary |             # disappeared objects are not stationary | ||||||
| @ -565,7 +561,13 @@ def process_frames( | |||||||
|                 xmax = int(frame_shape[1] / 3 + xmin) |                 xmax = int(frame_shape[1] / 3 + xmin) | ||||||
|                 regions.append( |                 regions.append( | ||||||
|                     calculate_region( |                     calculate_region( | ||||||
|                     frame_shape, xmin, ymin, xmax, ymax, region_min_size, multiplier=1.2 |                         frame_shape, | ||||||
|  |                         xmin, | ||||||
|  |                         ymin, | ||||||
|  |                         xmax, | ||||||
|  |                         ymax, | ||||||
|  |                         region_min_size, | ||||||
|  |                         multiplier=1.2, | ||||||
|                     ) |                     ) | ||||||
|                 ) |                 ) | ||||||
|                 startup_scan_counter += 1 |                 startup_scan_counter += 1 | ||||||
| @ -626,7 +628,12 @@ def process_frames( | |||||||
|                             box = obj[2] |                             box = obj[2] | ||||||
|                             # calculate a new region that will hopefully get the entire object |                             # calculate a new region that will hopefully get the entire object | ||||||
|                             region = calculate_region( |                             region = calculate_region( | ||||||
|                             frame_shape, box[0], box[1], box[2], box[3], region_min_size |                                 frame_shape, | ||||||
|  |                                 box[0], | ||||||
|  |                                 box[1], | ||||||
|  |                                 box[2], | ||||||
|  |                                 box[3], | ||||||
|  |                                 region_min_size, | ||||||
|                             ) |                             ) | ||||||
| 
 | 
 | ||||||
|                             regions.append(region) |                             regions.append(region) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user