Frigate на Orange pi 5 с поддержкой NPU (kernel 6.10)

Как я писал ранее в Сага о Orange pi 5 plus мне сходу не удалось запустить образ Frigate на Orange pi 5 с поддержкой NPU (kernel 6.10).

А тут У Павла вышла статья по настройке Frigate на Orange pi в которой вроде все просто… но опять — не работает (у меня) 🙂

Если приглядеться на картинке, то видно время (примерно 3 часа ночи), когда перерыв все что только можно, я запустил образ с поддержкой NPU.

Возможно решение актуально только для kernel 6.10 и возможно в очередном релизе Frigate ошибка будет исправлена… а возможно это и не ошибка, но тикет на исправление я так или иначе открою.

Текущее решение чуть ниже…

Успешное решение осуждается в discussions на blakeblackshear а в частности, на нужен другой образ: вместо «image: ghcr.io/blakeblackshear/frigate:stable-rk» ставим: image: marca711/frigate:latest-rk. Остальное как по инструкции:

cat /mnt/nvme0n1/docker/frigate_/docker-compose.yml
services:
    frigate:
      container_name: frigate
#      image: ghcr.io/blakeblackshear/frigate:dev-8e41913-rk
      image: marca711/frigate:latest-rk
      privileged: true # this may not be necessary for all setups
      restart: unless-stopped
      group_add:
        - "106" # render
        - "44"  # video
        - "46"  # plugdev
      shm_size: "512mb" # update for your cameras based on calculation above
      devices:
        - /dev/dri/renderD128:/dev/dri/renderD128
        - /dev/dri/card0:/dev/dri/card0
        - /dev/rga
        - /dev/video-dec0:/dev/video-dec0
        - /dev/video-enc0:/dev/video-enc0
      volumes:
        - /dev/bus/usb:/dev/bus/usb
        - /etc/localtime:/etc/localtime:ro
        - ./config/config.yml:/config/config.yml:rw
        - ./storage:/media/frigate:rw
        - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
          target: /tmp/cache
          tmpfs:
            size: 2000000000
      ports:
        - "5000:5000"
        - "1935:1935"
        - "8554:8554" # RTSP feeds
        - "8555:8555/tcp" # WebRTC over tcp
        - "8555:8555/udp" # WebRTC over udp
      device_cgroup_rules:
        - "c 189:* rmw"
cat /mnt/nvme0n1/docker/frigate_/config/config.yml                                                                                                                                      mqtt:
  enabled: false

logger:
  # Optional: default log level (default: shown below)
  default: debug

detectors:
  rknn:
    type: rknn
    core_mask: 0b000
model:
  path: default-yolov8x
  width: 320
  height: 320
  input_tensor: nhwc
  input_pixel_format: bgr

rtmp:
  enabled: false

cameras:
  Fasad3: # <--- this will be changed to your actual camera later
    enabled: true
    birdseye:
      order: 2
    ffmpeg:
      hwaccel_args: preset-rk-h264
      inputs:
      - path: rtsp://admin:123@192.168.1.1:554/mode=real&idc=1&ids=1
        roles:
        - detect
    detect:
        enabled: True
        width: 1280
        height: 720
        fps: 2
    objects:
      track:
      - person
      - car

Часть опций для меня носит спорный характер, но до тонкой настройки я пока не добрался. Время отклика системы (по статистике NPU) у меня получилось порядка 103ms - возможно это не верно, но в любом случае процессор (CPU) загружен порядка 5-10%, что в 5 раз меньше чем без NPU.

Вы можете оставить комментарий ниже.

Оставить комментарий

Вы должны Войти, чтобы оставить комментарий.