N100 미니PC와 OpenVINO로 Frigate NVR 구축하기
Frigate NVR은 객체 감지를 지원하는 오픈소스 NVR(네트워크 비디오 레코더)로, 일반적으로 **구글 코랄 TPU(Google Coral TPU)**와 같은 장치를 이용해 최적화된 성능을 낼 수 있다.
하지만 구글 코랄 TPU에는 몇 가지 단점이 있다.
✔ NVMe E, B+M 타입으로 출시되어 호환되는 보드를 저렴하게 구하기 어렵다.
✔ 출시된 지 오래되어 최신 AI 모델을 돌리기엔 성능이 충분하지 않다.
그렇다면, TPU 없이 Frigate NVR을 구동할 방법은 없을까?
이제는 N100 미니PC와 OpenVINO를 활용하면 TPU 없이도 부하가 적은 객체 감지가 가능하다! 🚀
💡 기존 CPU 기반 객체 감지의 문제점
과거에는 TPU 없이 객체 감지를 하려면 CPU를 활용해야 했다.
하지만 이 방식은 엄청난 리소스를 소모했다.
📌 예시: CPU 기반 객체 감지 부하
🔹 HD 화질(5FPS) 비디오에서 객체 탐지 시, CPU 리소스를 거의 100% 사용
🔹 다수의 카메라를 운영하면, 서버 부하가 급격히 증가
이처럼 CPU만으로 객체 감지를 수행하는 것은 비효율적이었다. 하지만 이제는 시대가 바뀌었다! 🎉
🖥️ N100 미니PC + OpenVINO로 Frigate NVR 구축하기
요즘 N100 미니PC는 저렴하고 성능도 뛰어나서 Frigate NVR을 구현하는 데 매우 적합하다.
📌 OpenVINO를 활용한 객체 감지 설정
구글 코랄 TPU 대신 Intel의 OpenVINO를 사용하면, GPU 가속을 통해 부하를 최소화하면서 Frigate NVR에서 객체 감지를 원활하게 수행할 수 있다.
Frigate 공식 문서에서도 OpenVINO를 활용한 설정이 가능하다고 안내하고 있다.
🔗 Frigate 공식 문서 참고
📄 OpenVINO 기반 Frigate NVR 설정 방법
아래 설정을 Frigate NVR 설정 파일에 추가하면 객체 감지를 사용할 수 있다.
detectors:
ov:
type: openvino
device: GPU
model:
width: 300
height: 300
input_tensor: nhwc
input_pixel_format: bgr
path: /openvino-model/ssdlite_mobilenet_v2.xml
labelmap_path: /openvino-model/coco_91cl_bkgr.txt
이 설정만 추가하면 TPU 없이도 객체 감지가 가능하다!
🎯 OpenVINO 설정, 어느 정도 성능이 나올까?
✔ 카메라 몇 대만 객체 감지가 필요하다면, 위 설정만으로 충분히 동작한다.
✔ 여러 대의 카메라를 운영할 경우, OpenVINO 기반 최적화 설정을 추가하는 것이 좋다.
🛠 마무리: TPU 없이도 Frigate NVR은 가능하다!
이제 구글 코랄 TPU 없이도 N100 미니PC + OpenVINO 조합으로 부하를 최소화하면서 Frigate NVR을 원활하게 운영할 수 있다.
✔ TPU 없이도 객체 감지가 가능
✔ 저렴한 N100 미니PC 활용 가능
✔ CPU 부하 최소화 & GPU 가속 활용
이제 TPU 없이도 Frigate NVR을 구축해 보자! 🚀