MyGit

v0.10.0-beta12

blakeblackshear/frigate

版本发布时间: 2022-02-14 01:30:33

blakeblackshear/frigate最新发布版本:v0.14.0(2024-08-08 21:18:42)

Major Changes for 0.10.0

Updated docs are available for preview here.

Changes since beta 11

detect:
  ...
  # Optional: Configuration for stationary object tracking
  stationary:
    # Optional: Frequency for running detection on stationary objects (default: shown below)
    # When set to 0, object detection will never be run on stationary objects. If set to 10, 
    # it will be run on every 10th frame.
    interval: 0
    # Optional: Number of frames without a position change for an object to be considered 
    # stationary (default: 10x the frame rate or 10s)
    threshold: 50
    # Optional: Define a maximum number of frames for tracking a stationary object (default: not set, track forever)
    # This can help with false positives for objects that should only be stationary for a limited amount of time.
    # It can also be used to disable stationary object tracking. For example, you may want to set a value for person,
    # but leave car at the default.
    max_frames:
      # Optional: Default for all object types (default: not set, track forever)
      default: 3000
      # Optional: Object specific values
      objects:
        person: 1000

Changes since beta 10

BREAKING CHANGES

Camera Names

Camera names in the config file must be URL safe starting with this version. Only A-Z, a-z, 0-9, -, and _ are permitted. If your cameras need to be renamed, any associated events will be retained based on your global retain settings, not the new camera name settings. If you want to retain recordings from the previous camera name, you need to ensure you have retain days set globally. For example:

record: #  <---------- global setting
  retain:
    days: 7 # <------- will retain 7 days of recordings for old cameras

Retain modes

This release adds the ability to define retain modes for the initial retention period and for event data beyond the initial retain period. There are three modes:

The default record settings will retain only segments that have motion for events.

Note that the retain_days config entry has been DEPRECATED. This release includes backwards compatibility, but you should migrate to the new format.

Example: Store all segments with motion for 7 days and events with active objects for 14 days.

record:
  enabled: True
  retain:
    days: 7
    mode: motion
  events:
    retain:
      default: 14
      mode: active_objects

Stationary objects

Frigate will now continue to track objects after they are stationary. This enables use cases such as presence detection. After an object has been stationary for 10 frames, object detection for the object will be paused (the new stationary -> interval setting allows periodic checks too) until there is new movement. An object is determined to be stationary if the bounding box in the current frame overlaps almost entirely with the previous 10 frames. I have been testing this in my home office, and it works quite well.

I expect this to disrupt the way a few people are using Frigate. For example, a car that enters the driveway, parks, and then leaves 5 hours later will be one continuous event. The zones will stay with the tracked object over this lifetime, so when the car leaves, it will still have zones associated from when it first arrived. Ensure you use the right retain mode to ensure you only capture the segments you want.

Depending on the specifics of your room, you may need to tune your resolution and motion settings to get the results you want. In my office, I reduced the resolution to 640x360 and increased the contour_area setting for motion detection up to 125 to reduce the sensitivity. I recommend watching the debug view and adjusting as needed.

The following settings have been added to tune stationary tracking:

detect:
  ...
  # Optional: Configuration for stationary object tracking
  stationary:
    # Optional: Frequency for running detection on stationary objects (default: shown below)
    # When set to 0, object detection will never be run on stationary objects. If set to 10, 
    # it will be run on every 10th frame.
    interval: 0
    # Optional: Number of frames without a position change for an object to be considered 
    #                 stationary (default: 10x the frame rate or 10s)
    threshold: 50
    # Optional: Define a maximum number of frames for tracking a stationary object (default: not set, track forever)
    # This can help with false positives for objects that should only be stationary for a limited amount of time.
    # It can also be used to disable stationary object tracking. For example, you may want to set a value for person,
    # but leave car at the default.
    max_frames:
      # Optional: Default for all object types (default: not set, track forever)
      default: 3000
      # Optional: Object specific values
      objects:
        person: 1000

fixes #841

In progress events and cache handling

Events are now stored in the database while in progress, so you can expect to see In progress for some events under end time in the Events view.

Recording segments written to the cache are now only moved to the recordings folder if they overlap with an event (in-progress events too). For those with retain_days set to 0, this eliminates disk I/O when there are no events. Frigate will no longer store a minimum of 5 minutes of recording segments for each camera, so now you can enable recording without worrying about SD/SSD wear.

Lastly, more proactive cache maintenance was implemented to prevent the cache disk from filling up. You should never see more than 7 segments in the cache for each camera. If the cache maintenance job is too slow, you will get a warning in the logs. You can also see the time it takes to copy to the recordings disk by setting frigate.record: debug in the logger config. Additional error handling was also implemented to prevent the cache maintenance thread from stopping on errors.

Now that recordings are managed proactively, recordings are expired according to the retention settings at the interval set in the expire_interval setting (defaults to once per hour).

fixes #1885

Motion detection improvements

0.9.0 introduced dynamic motion sensitivity which didn't work out well. For many users, this made motion detection too sensitive which increased CPU usage due to more motion causing more object detection. It also increased false positive detections due to the increased frequency for detections on areas without substantial motion.

In this release, motion detection has been reset back to better defaults for frame_height and contour_area. If you have customized either frame_height or contour_area in the past, it is recommended that you remove those for your camera and let them revert back to the new defaults. For most users, the sensitivity can be tuned by adjusting contour_area (smaller numbers are more sensitive and larger numbers are less sensitive). For very high resolutions with very small objects, the frame_height may need to be increased.

In addition, this release brings about dynamic contrast adjustment for motion detection. Based on my testing, this substantially improves night time detection with IR lights and other low contrast situations.

Other changes

Fixes

Full Changelog: https://github.com/blakeblackshear/frigate/compare/v0.9.4...v0.10.0-beta12

Images:

相关地址:原始地址 下载(tar) 下载(zip)

查看:2022-02-14发行的版本