📦 Аддон Home Assistant

Полное руководство по Frigate RKNPU

Обнаружение объектов на камерах в реальном времени с аппаратным ускорением RKNPU. Детекция людей, автомобилей, животных и других объектов с минимальной нагрузкой на систему.

Что такое Frigate RKNPU?

Frigate RKNPU - это оптимизированная версия системы обнаружения объектов Frigate, специально адаптированная для работы с аппаратным ускорителем RKNPU (Rockchip Neural Processing Unit). Этот аддон для Home Assistant позволяет:

🎯 Детекция объектов

Автоматическое обнаружение людей, автомобилей, животных и других объектов в реальном времени

⚡ Аппаратное ускорение

Использование RKNPU для высокой производительности с минимальной нагрузкой на CPU

🎬 Запись событий

Автоматическая запись видео при обнаружении объектов с сохранением только важных моментов

📊 Уведомления

Мгновенные уведомления в Home Assistant при обнаружении указанных объектов

Требования к системе

⚠️ Важное предупреждение

Перед установкой убедитесь, что ваша система соответствует следующим требованиям:

Аппаратные требования:

  • Процессор: Rockchip RK3588 или совместимый с поддержкой RKNPU
  • Оперативная память: Минимум 4 ГБ (рекомендуется 8 ГБ)
  • Место на диске: Минимум 10 ГБ свободного пространства для записей
  • Сетевое подключение: Стабильное соединение для доступа к камерам

Программные требования:

  • Home Assistant: Версия 2023.12 или выше
  • Home Assistant OS: Последняя версия
  • Доступ к аддонам: Права администратора

Установка Frigate RKNPU

💡 Совет

Перед началом установки рекомендуется создать резервную копию вашей системы Home Assistant.

Шаг 1: Добавление репозитория аддонов

  1. Откройте Home Assistant
  2. Перейдите в НастройкиАддоныМагазин аддонов
  3. Нажмите на меню (три точки) в правом верхнем углу
  4. Выберите Аддоны и репозитории
  5. Нажмите Добавить репозиторий аддонов
  6. Введите URL репозитория WGHAOS
  7. Нажмите Добавить

Шаг 2: Установка аддона

  1. В магазине аддонов найдите Frigate RKNPU
  2. Нажмите на него для просмотра подробной информации
  3. Нажмите Установить
  4. Дождитесь завершения установки

Настройка Frigate RKNPU

Основная конфигурация

После установки откройте аддон и перейдите на вкладку Конфигурация. Базовая конфигурация выглядит следующим образом:

mqtt:
  enabled: true
  host: core-mosquitto
  port: 1883
  user: homeassistant
  password: !secret mqtt_password

cameras:
  front_door:
    ffmpeg:
      inputs:
        - path: rtsp://camera_ip/stream
          roles:
            - detect
            - rtmp
            - record
    detect:
      width: 1280
      height: 720
      fps: 5
    objects:
      track:
        - person
        - car
        - dog
    zones:
      - name: entrance
        coordinates: 100,100 200,100 200,200 100,200

Параметры конфигурации

Настройки MQTT

  • enabled: true - включить интеграцию с MQTT
  • host - адрес сервера MQTT (обычно core-mosquitto)
  • port - порт MQTT (по умолчанию 1883)
  • user и password - учетные данные для подключения

Настройки камер

  • path - RTSP поток камеры
  • roles - роли потока (detect - для детекции, rtmp - для стриминга, record - для записи)
  • width/height - разрешение для детекции
  • fps - кадров в секунду для детекции

Обнаружение объектов

  • track - список объектов для отслеживания (person, car, dog, cat, bicycle и т.д.)
  • zones - зоны детекции с координатами

Настройка обнаружения объектов

Поддерживаемые объекты

Frigate RKNPU поддерживает обнаружение следующих типов объектов:

👤 person

Обнаружение людей

🚗 car

Обнаружение автомобилей

🐕 dog

Обнаружение собак

🐈 cat

Обнаружение кошек

🚴 bicycle

Обнаружение велосипедов

🏍️ motorcycle

Обнаружение мотоциклов

🚌 bus

Обнаружение автобусов

🚛 truck

Обнаружение грузовиков

Настройка зон детекции

Зоны детекции позволяют определять конкретные области в кадре, где будет осуществляться обнаружение объектов:

zones:
  - name: entrance
    coordinates: 100,100 200,100 200,200 100,200
    objects:
      - person
    filters:
      - threshold: 0.7
  - name: driveway
    coordinates: 300,100 400,100 400,200 300,200
    objects:
      - car
      - truck

⚠️ Важно о зонах

Координаты зон задаются в пикселях относительно разрешения, используемого для детекции. Первые две цифры - координаты X,Y первой точки, затем через пробел координаты следующих точек по часовой стрелке.

Настройка записи

Типы записи

Frigate RKNPU поддерживает два типа записи:

  • Запись событий: Запись только при обнаружении объектов
  • Непрерывная запись: Постоянная запись всего потока

Конфигурация записи

record:
  enabled: true
  retain:
    days: 7
    mode: active_objects

snapshots:
  enabled: true
  retain:
    days: 3

Параметры записи

  • enabled: true - включить запись
  • retain.days - количество дней хранения записей
  • mode: active_objects - записывать только при обнаружении объектов
  • snapshots - настройка снимков (скриншотов)

✅ Совет по хранению

Рекомендуется использовать сетевое хранилище (NAS) для хранения записей, чтобы не занимать место на системном диске Home Assistant.

Интеграция с Home Assistant

Добавление интеграции

  1. Перейдите в НастройкиУстройства и сервисы
  2. Нажмите Добавить интеграцию
  3. Найдите и выберите Frigate
  4. Введите URL аддона (обычно http://homeassistant:5000)
  5. Следуйте инструкциям на экране

Создание сущностей

После успешной интеграции Frigate создаст следующие сущности в Home Assistant:

  • Камеры: Для каждой настроенной камеры
  • Сенсоры: Детектированные объекты, количество людей, автомобилей и т.д.
  • Переключатели: Включение/выключение записи и снимков
  • Автоматизации: Триггеры при обнаружении объектов

Пример автоматизации

automation:
  - alias: "Уведомление о обнаружении человека"
    trigger:
      - platform: state
        entity_id: binary_sensor.front_door_person
        to: 'on'
    action:
      - service: notify.mobile_app
        data:
          title: "Обнаружен человек"
          message: "Камера входная дверь обнаружила человека"
          data:
            image: "{{ state_attr('camera.front_door', 'entity_picture') }}"

Веб-интерфейс Frigate

После запуска аддона вы получите доступ к веб-интерфейсу Frigate по адресу:

http://homeassistant:5000

Возможности веб-интерфейса

📹 Живой просмотр

Просмотр всех камер в реальном времени с наложением рамок детекции

🎬 Просмотр событий

Просмотр записанных событий с возможностью фильтрации по типу объекта

📊 Статистика

Просмотр статистики детекции и производительности системы

⚙️ Настройка

Изменение настроек детекции и зон без перезагрузки

Оптимизация производительности

💡 Оптимизация

Правильная настройка параметров позволяет значительно снизить нагрузку на систему при сохранении качества детекции.

Настройка разрешения и FPS

  • Для детекции достаточно разрешения 720p (1280x720)
  • Оптимальный FPS для детекции: 5 кадров в секунду
  • Более высокие значения увеличивают нагрузку без существенного улучшения точности

Использование RKNPU

detectors:
  rknpu:
    type: rknpu
    device: auto
    model: /path/to/model.rknn

Оптимизация зон детекции

  • Создавайте зоны только в необходимых областях
  • Избегайте создания зон с большим количеством мелких областей
  • Используйте фильтры для исключения ложных срабатываний

Управление хранилищем

record:
  expire:
    enabled: true
    interval: 86400
    mode: motion

Устранение проблем

Аддон не запускается

  • Проверьте логи аддона в Настройки → Аддоны → Frigate RKNPU → Логи
  • Убедитесь, что нет конфликтов портов
  • Проверьте доступность дискового пространства

Нет детекции объектов

  • Проверьте правильность RTSP потока камеры
  • Убедитесь, что объекты добавлены в список отслеживания
  • Проверьте порог уверенности (threshold)
  • Убедитесь, что зоны детекции настроены правильно

Высокая нагрузка на CPU

  • Снизьте разрешение для детекции
  • Уменьшите FPS
  • Проверьте, что используется RKNPU ускоритель
  • Отключите ненужные камеры

Проблемы с MQTT

  • Проверьте, что MQTT брокер запущен
  • Убедитесь в правильности учетных данных
  • Проверьте логи Mosquitto

⚠️ Логирование

Для детальной отладки можно включить расширенное логирование в конфигурации аддона:

logger:
  default: debug

Практические примеры

Пример 1: Полная конфигурация входной камеры

cameras:
  entrance:
    ffmpeg:
      inputs:
        - path: rtsp://192.168.1.100:554/stream1
          roles:
            - detect
            - rtmp
            - record
          input_args: -thread_queue_size 1024
    detect:
      width: 1280
      height: 720
      fps: 5
      padding: 16
    objects:
      track:
        - person
        - dog
      filters:
        person:
          min_area: 5000
          max_area: 100000
          threshold: 0.7
    zones:
      - name: porch
        coordinates: 200,200 400,200 400,400 200,400
        objects:
          - person
      - name: stairs
        coordinates: 400,200 600,200 600,400 400,400
        objects:
          - person
          - dog
    record:
      events:
        pre_capture: 5
        post_capture: 10
        retain:
          default: 10
          mode: active_objects

Пример 2: Автоматизация для уведомлений

automation:
  - alias: "Уведомление о машине на подъездной дорожке"
    trigger:
      - platform: state
        entity_id: binary_sensor.driveway_car
        to: 'on'
        for:
          seconds: 3
    condition:
      - condition: state
        entity_id: input_boolean.guest_mode
        state: 'off'
    action:
      - service: notify.mobile_app_my_phone
        data:
          title: "Машина на подъездной дорожке"
          message: "Обнаружен автомобиль на подъездной дорожке"
          data:
            image: "{{ state_attr('camera.driveway', 'entity_picture') }}"
            push:
              sound: default
              badge: 2

Пример 3: Создание панели Lovelace

type: vertical-stack
cards:
  - type: picture-glance
    title: Камеры с детекцией
    entities:
      - entity: camera.entrance
      - entity: binary_sensor.entrance_person
      - entity: binary_sensor.entrance_car
    camera_image: camera.entrance
  - type: custom:frigate-card
    cameras:
      - camera_entity: camera.entrance
        live_provider: frigate
      - camera_entity: camera.driveway
        live_provider: frigate
    view:
      default: live

Часто задаваемые вопросы

В: Какое максимальное количество камер поддерживается?

О: Максимальное количество камер зависит от мощности вашего процессора и модели RKNPU. В среднем, RK3588 может обрабатывать 4-8 камер с разрешением 720p при 5 FPS.

В: Можно ли использовать Frigate без RKNPU?

О: Да, Frigate может работать без RKNPU, используя CPU для детекции. Однако производительность будет значительно ниже, и нагрузка на систему возрастет.

В: Как добавить новые типы объектов для детекции?

О: Frigate использует предобученные модели COCO. Добавление новых типов объектов требует тренировки собственной модели, что выходит за рамки данного руководства.

В: Можно ли просматривать записи в Home Assistant?

О: Да, через интеграцию Frigate вы можете просматривать записи и события в интерфейсе Home Assistant или использовать специальный интерфейс Frigate.

В: Как настроить удаление старых записей?

О: Используйте параметр retain.days в конфигурации записи. Frigate автоматически удалит записи старше указанного количества дней.

Заключение

✨ Поздравляем!

Вы ознакомились с полным руководством по Frigate RKNPU. Этот мощный аддон позволит вам создать систему видеонаблюдения с интеллектуальным обнаружением объектов, интегрированную в вашу систему умного дома.

Следующие шаги

Полезные ресурсы