提示
由于本文涉及过多专业领域内容,对普通用户帮助不算特别多,将不会进行精翻;本文使用DeepSeek AI进行翻译,仅做参考。
支持的硬件
信息
Frigate支持多种不同类型的检测器,可在不同硬件上运行:
通用硬件
- Coral EdgeTPU:Google Coral EdgeTPU提供USB和m.2两种接口,兼容多种设备。
- Hailo:Hailo8和Hailo8L AI加速模块提供m.2接口和树莓派HAT,兼容多种设备。
AMD
Intel
- OpenVino:OpenVino可在Intel Arc 显卡、集成显卡和CPU上运行,提供高效对象检测。
- ONNX:当配置了支持的ONNX模型时,OpenVINO会在标准Frigate镜像中自动被检测并使用。
NVIDIA
- TensortRT:TensorRT可在NVIDIA GPU和Jetson设备上运行,使用多种预设模型。
- ONNX:当配置了支持的ONNX模型时,TensorRT会在
-tensorrt
或-tensorrt-jp6
版Frigate镜像中自动被检测并使用。
Rockchip
- RKNN:RKNN模型可在内置NPU的Rockchip设备上运行。
测试用途
- CPU检测器(不推荐实际使用):使用CPU运行tflite模型,不推荐使用,在大多数情况下使用OpenVINO CPU模式可获得更好效果。
备注
不能混合使用多种检测器进行对象检测(例如:不能同时使用OpenVINO和Coral EdgeTPU进行对象检测)。
这不影响使用硬件加速其他任务,如语义搜索。
官方支持的检测器
Frigate提供以下内置检测器类型:cpu
、edgetpu
、hailo8l
、onnx
、openvino
、rknn
和tensorrt
。默认情况下,Frigate会使用单个CPU检测器。其他检测器可能需要额外配置,如下所述。使用多个检测器时,它们会在专用进程中运行,但会从所有摄像头的公共检测请求队列中获取任务。
Edge TPU检测器
Edge TPU检测器类型运行TensorFlow Lite模型,利用Google Coral代理进行硬件加速。要配置Edge TPU检测器,将"type"
属性设置为"edgetpu"
。
Edge TPU设备可使用"device"
属性指定,参考TensorFlow Lite Python API文档。如果未设置,代理将使用它找到的第一个设备。
容器中提供了位于/edgetpu_model.tflite
的TensorFlow Lite模型,默认情况下此检测器类型使 用该模型。要提供自己的模型,请将文件绑定挂载到容器中,并通过model.path
提供路径。
提示
如果未检测到Edge TPU,请参阅Edge TPU常见故障排除步骤。
单个USB Coral
detectors:
coral:
type: edgetpu
device: usb
多个USB Coral
detectors:
coral1:
type: edgetpu
device: usb:0
coral2:
type: edgetpu
device: usb:1
原生Coral(开发板)
警告:v0.9.x
版本后可能有兼容性问题
detectors:
coral:
type: edgetpu
device: ""
单个PCIE/M.2 Coral
detectors:
coral:
type: edgetpu
device: pci
多个PCIE/M.2 Coral
detectors:
coral1:
type: edgetpu
device: pci:0
coral2:
type: edgetpu
device: pci:1
混合使用Coral
detectors:
coral_usb:
type: edgetpu
device: usb
coral_pci:
type: edgetpu
device: pci