Sprzet pod HA + Frigate w 2024 - CPU vs TPU vs NPU

Czesc,
Elektryka/skretki na budowie polozone, kamery na PoE tez, ale standardowy NVR jest tak tragiczny, ze chcialbym odpalic jak najszybciej HA + Frigate.
Jestem jeszcze kompletnie zielony i domyslam sie, ze zapewne kilkadziesiat godzin czytania dokumentacji przede mna, ale moze ktos mnie poratuje w temacie sprzetu jak wybrac.

Wiem ze zwykle CPU nie ogarnie Frigate’a, a powszechnie polecane HP-T630 / Dell Wyse 5070 wymagaja np Coral TPU, ale z tego co sie orientuje to sa juz starsze konstrukcje. Warto cos nowszego, moze z NPU?

Prosze o pomoc doswiadczonych kolegow, gdyz w miare mozliwosci wole nawet “grubo” doplacic bo juz 25 lat mniej lub bardziej podchodze do “oo, to bedzie latwe, skonfiguruje w 30 minut ktore zamienia sie w 3 weekendy”

Tam czytałeś? Wątek stary, ale posty NOWE

1 Like

Musisz podać trochę więcej informacji. Jakie masz kamery, w jakiej jakości stumienie chcesz przetwarzać? Dlaczego standardowy NVR jest dla Ciebie tragiczny? Jaki okres czasu chcesz rejestrować? Co oprócz HA+Frigate ma być uruchomione na tym sprzęcie? Czy masz, świadomość, że metod na instalację HA, Frigate i innych usług jest kilka? Od tego jakie masz kompetencje i potrzeby można doradzać konkretny sprzęt.
EDIT:
W czerwcu zakupiłem z kodem rabatoeym i zbijając cenę monetami komputerek na Ali. Jest to mini PC z intel N100 16GB RAM DDR5 (wlutowane kości) oraz dyskiem M2 SSD 512GB za 425zł. Komputerek jest o tyle fajny, że pozwala na dołożenie dodatkowego dysku SATA 2,5"

Inną alternatywą, która przykuwa moją uwagę jest używany Dell Optiplex 3000 Thin Client Intel Pentium N6005 8GB PC4 32GB USB-C Wi-Fi do dostania na Allegro za 499PLN. Przegląd tego sprzętu Dell.

U mnie wygrała ciekawość możliwości nowego procesora w połączeniu z chińską płytą. A celem było uzupełnienie braku komputera warsztatowego po tym jak swojego starszego PC Lenovo 6 gen usmażyłem jak leszcz, przez USB podając fazę 230V.

1 Like

Jeśli będziesz używał jako zwykły rejestrator z wyłączoną analityką to i3-ka pociągnie.
Osiągi dla 2 kamer z detekcją obiektów - Dell OptiFlex i5, 16Gb ram.

1 Like

Kamery: 4x Annke C800, rejestrowane w 4k
Standardowy NVR jest tragiczny z wielu powodow: przycina gdy wykryje obiekt, restartuje sie, apka jest tragiczna. Festiwal nieszczesc.
Okres czasu - ile sie uda, raczej zostane przy 4 TB na ten moment.
Co jeszcze na sprzecie - jeszcze nie wiem co bedzie konieczne do calego smart home’a - ten HA i Frigate sa pewne na ten moment.
Kompetencje mam takie ze w konsoli siedze od kiedy pamietam, wiec jako tako ogarniam, ale smart home jeszcze nie znam i gdzie sie da to wole cos doplacic i miec latwiej/szybciej no chyba ze cena wyjdzie 5000$ to jednak bede dlubal sam :smiley:
Chetnie bym uzywal relatywnie nowego sprzetu, ale jak ma nie byc gdzies sterownikow/wsparcia to juz chyba wole starsze, ale pewne.
A dotarl Ci jzu tem komp i uzywales?

@RobinI30
U mnie docelowo okolo 4-5 kamer teraz, a ostatecznie zapewne 8

Chyba jednak nie przeczytałeś tego co podlinkował @szopen, tam właśnie opisałem na świeżo swoje testy:

W tych testach wykorzystywałem jako detektor dla Frigate i modele AI z Openvino, które implementuje w swych iGPU Intel od 6-gen procesorów. To tylko testy, produkcyjnie używam Coral TPU mini PCI-e.

Jeśli chcesz wykorzystać dysk/dyski które już masz, to musisz patrzeć też pod tym kątem przy wyborze sprzętu. Jak dla mnie to zawsze musi być sprzęt z CPU Intel a drugim wyznacznik jest prosty, uzyskać jak najmłodszej generacji sprzęt za relatywnie niższą kasę. Przekłada się to na obsługę nowszych technologi jak np dekodowanie/kodowanie w H265 oraz energochłonność.

Jeśli nie straszne Ci zawiłości konfiguracji sieci, potrafisz zarządzać usługami serwerowymi itp, to możesz przebierać w sposobach instalacji. Spora część użytkowników HA wybiera wirtualizację (Proxmox). Część dokłada do tego własne kontenery. Inni preferują środowisko Docker (jak ja) ale jest spore grono użytkowników, którzy pomimo znacznej wiedzy i umiejętności informatycznych, czy nawet programowych, wybierają insatację HAOS + AddOn z uwagi na najmniejszy nakład serwisowy takiej instancji.

1 Like

To już standard na forum :wink: .

Należę do tej grupy, z prostej przyczyny - ułatwiam sobie życie :slight_smile:.

1 Like

Moje spojrzenie zupełnie z boku (nie używam Frigate, choć plany były i są i tylko dlatego jako-tako staram się śledzić temat - przy remoncie zdemontowałem stare kamery i nie nadszedł czas na nowe, więc obecnie jest prowizorka z 2 kamerami, co do których nie widzę sensu tego rozwiązania, w dodatku miałem kiedyś jetson nano ale się go pozbyłem zanim powstał ten projekt, bo uważałem za mało zabawne kilka tygodni spędzonych na konfigurację i by potestować parę dni i tracić kolejne tygodnie na konfigurację inaczej, bo akurat wyszła aktualizacja systemu i się wszystko pozmieniało… a teraz to podobno jest rozwiązanie niemal z pudełka, nVidia twierdziła, że ten sprzęt ma wystarczającą akcelerację do analizy 8 streamów HD przy dostatecznie niskim klatkażu, ale nie było mi dane się o tym przekonać).

hmm chyba przy wyborze kamer i rejestratora nie kierowałeś się tym :slight_smile:

na szczęście

  1. z punktu widzenia rozpoznawania we frigate masz dostępny substream o pomniejszonej rozdzielczości z tych kamer

  2. oraz do wyboru parę kodeków, więc możesz na słabym sprzęcie spróbować mjpeg (jego dekodowanie nie wymaga akceleracji, bo jest mało zasobożerne) zamiast h264 czy h265, bo akceleracja sprzętowa i to totalnie różna, jest potrzebna do 2 zupełnie odrębnych celów oddzielnie do rozpoznawania i oddzielnie do dekompresji wideo do surowego obrazu i ewentualnie jego późniejszej kompresji - jeśli chcesz coś sobie dorysować na nim i to nagrać - do tych celów można wykorzystać akcelerację w CPU (możliwie świeże generacje intela i AMD, od 10gen inteli jest chyba dostępna też bardzo efektywna akceleracja bodajże h265? - tu sobie też doczytaj, bo mało pamiętam) lub GPU (nVidia i AMD=dawne ATI oraz niektóre specjalizowane konstrukcje, ale 5000$ wykluczasz, więc chyba nie tędy droga, swoją drogą poszukaj po dokumentacji bo chyba akceleracja jest możliwa teraz też na Rockchip, ale nie wiem czy CPU czy GPU).

  3. akcelerację rozpoznawania można zrealizować tylko na NPU (może nie jestem na bieżąco) google Coral i wybranych GPU lub dedykach nVidii, niedawno weszła obsługa akceleracji OpenVINO (@angler jest z tym raczej na bieżąco) realizowanej na konstrukcjach intela- w praktyce chodzi o dostatecznie nowe procki intela (ale gdzieś mi mignęło, że nie dotyczy to tylko architektury x86-64 oraz, że najnowsze proce AMD też się dadzą wykorzystać poza specyfikacją :smiley: )


i się dziwisz? każesz rejestratorowi rozpoznawać 4 streamy UHD? serio?
powinieneś skorzystać z możliwości Onvif i detekcji dokonywać na poziomie kamer a do rejestratora wysyłać co najwyżej odpowiednie zdarzenia
(więc jeśli NVR nie jest totalnym złomem, to może wystarczy właściwa jego konfiguracja?)

@angler jeszcze nie czytalem, po kolei :slight_smile: Poczytam o OpenVino w takim razie. Ostatecznie mysle ze bede temat w stanie skonfigurowac, ale wolalbym nie spedzac nad tym tygodni wiec wybiore to co bedzie prostsze - wiec zapewnie HAOS+AddOn, ale jeszcze doczytam.

@szopen
Mam zestaw Annke H800, ktory ma 8 portow PoE + 4 kamery w zestawie 4k, jest dedykowanym rejestratorem to zakladalem ze uciagnie temat. Jest tam rtsp i onvif, to moze faktycznie sama poprawna konfiguracja bedzie wystarczajaca na ten moment.

I wstepnie widze ze poki co “Coral TPU is strongly recommended” to chyba najsensowniejsze rozwiazanie poki co. Jeszcze nie wiem czy cos na N100 czy dell optiplex 3000

Nie znam sprzętu to się nie wypowiem, ale nawet jeśli rejestrator w takiej cenie ma procek który jest w stanie cokolwiek wykrywać to jego moc obliczeniowa jest porównywalna do tego co zainstalowano w każdej z pojedynczych kamer, więc należy zastosować podstawową zasadę edge-computing, czyli maksymalne wykorzystanie mocy obliczeniowej w miejscu powstawania danych (czyli w tym wypadku w kamerach).
Jeśli chodzi o zacinanie się rejestratorów to najczęstszą przyczyną jest dobór nieodpowiedniego dysku (generalnie służą do tego serie dedykowane do rejestratorów i w ogromnym skrócie dlaczego - to są niemal takie same dyski jak na zwykłe dane, ale zachowują się kompletnie inaczej, dlatego się kompletnie nie nadają na normalne dane, ale do monitoringu są świetne, bo ich firmware nie dba o integralność danych nawet w przypadku błędów zapisu i odczytu, w zamian za to zwiększając ich dostępność, podczas gdy każdy normalny dysk w takiej sytuacji próbuje umieścić w innej bezpiecznej lokalizacji lub odzyskać dane, które są trudne do odczytu, to dysk dedykowany do monitoringu po prostu olewa takie sytuacje).

ALE ja nie o tym - w ciemno zgaduję, że masz w nim dysk SMR zamiast dysku CMR i to jest podstawowa przyczyna problemu z wydajnością…
bo oczywiście desktopowe dyski można stosować jest tylko jeden warunek to ma być CMR, bo technologia SMR zupełnie sobie nie radzi ze spływającymi równocześnie więcej niż 2 streamami danych (masz ich więcej…), a jeśli chodzi o równoczesny odczyt w trakcie zapisu to już jest z tym zupełny dramat.


hmm tak poza konkurencją
cytaciki ze specki tego rejestratora

Max Playback Resolution Up to 8MP (3840 X 2160)

Max Playback Capacity 4CH @1080p; 1CH @8MP

więc multikamery sobie nie poogłądasz (jeśli nie zredukujesz rozdzielczości głównego streamu z wszystkich kamer, dla 8 to chyba powinieneś użyć 720p)

Incoming Bandwidth 80 M

(chodzi o 80Mbps jakby co, bo jednostkę “M” to z tyłka wyciągnęli)

ale równocześnie każdą kamerę z kompletu można skonfigurować na bitrate

Video Bitrate 32 Kbps - 16 Mbps

tu jak znam życie typowym błędem początkującego jest ustawienie maksa na wszystkim na czym się da (czyli rejestrator klęknie po 5 kamerze)

2 Likes

@szopen do dysku robilem research i zakupilem WD Purple 4 TB CMR :slight_smile: Raczej problemem jest to ze 4 kamery osobno kosztowaly po 250zl, a zestaw 4 kamery + rejestrator 1000zl. Wiec rejestrator jakby za darmo to zapewne najnizszej jakosci :slight_smile:
Ale tej podstawowej zasady nie znalem, a wydaje sie bardzo sensowna. Zobacze co tam moge zrobic, ale jest pewnie tak jak mowisz, wymaksowane ustawienia bez wzgledu na wydajnosc sprzetu.

Dobrze, że zwróciłeś na to uwagę by dobrać sensowny dysk, to w razie czego będziesz mógł go wykorzystać w innym rozwiązaniu na dane z kamer.
No natomiast jak zajrzałem w specyfikację tego rejestratora to szału on nie robi, ale zacinać się nie powinien (tylko warto dobrać parametry pracy kamer z rozsądnym umiarem) zauważ że stream 4K/UHD zawiera 4x więcej danych od 1080p.
Warto rozważyć redukcję rozdzielczości (ograniczeniem rzeczywistej rozdzielczości często jest optyka i redukcja rozdzielczości zapisu nie powoduje tak dużej utraty informacji z obrazu jak się wydaje, no ale najlepiej zrobić testy w naturze, czy 1080p jest wystarczające).

1 Like

:+1: Tak się składa, że zajmuje się instalacją systemów rozpoznawania wykroczeń drogowy. Często spotykam się z takim podejściem użytkownika.
Na monitorze 1080p oczekuje wyświetlania na podlądzie np. obrazu 2-4k na podzielonym obrazie.
Co do samej analityki - to PC z I7 jest w stanie przeprowadzić analizę z 4 kamer: rozpoznania i dekodowania tablicy rejestracyjnej, rozpoznania typu i koloru obiektu, przekroczenia linii, i włączenia światła czerwonego (bez żadnego akceleratora) + rejestracja zdarzeń.
Wniosek mam taki, że jeśli jest potrzeba stosowania wspomagaczy to albo oprogramowanie jest napisane nieoptymalnie albo oczekiwania zbyt wysokie.
Wszystkie detektory używają różnych strumieni o niskiej rozdzielczości.
Fotka z monitora pulpitu zdalnego więc słabo widać…


Więc myślę, że przy ustawienia w granicach potrzeb (rozsądku) demona prędkości nie potrzeba.

Nie no - umówmy się - system dedykowany do konkretnych celów jest właśnie pod te cele optymalizowany, więc to znakomicie odzyskuje moc obliczeniową, która w systemie w pełni uniwersalnym musi się rozłożyć jeszcze na wiele innych zadań.

Na zdjęciu nie widać za dobrze o co chodzi ale jakieś zadania są chyba też przerzucone na GPU (dolne linijki).

O ile rozpoznawanie w ogóle nie dotyczy mojej roboty, to kompresja i dekompresja wideo czy przerzucanie ilości danych powyżej możliwości sprzętu (bo takie są zawsze życzenia zamawiających - ma być wykorzystane 100%, często 120% a czasem ile się da bez względu na wszystko, oczywiście wtedy robota nie idzie realtime! na co sobie nie można pozwolić przy ciągłym rozpoznawaniu obiektów) to jest coś, co mam na co dzień w pracy…

Mniejsza… :raised_hand: Wrzuciłem tylko dlatego, żeby nie było że “koloryzuje” :wink:
GPU jest używane do sieci neuronowych (tu wyłączone). W tym przypadku to procek ze zintegrowaną grafiką.
Program jest uniwersalny - użyty pod to zastosowanie.

No OK, ale zintegrowana grafika w prockach intela ma niesamowite możliwości od wielu lat (miałem w robocie maszynę do authoringu BlueRay, w czasach gdy to jeszcze miało sens = jakieś 12-15 lat temu i… ona cały rendering robiła właśnie na IGPU intela, no niestety nie pamiętam jaki to był procek, ale chyba i7 jakiejś wczesnej generacji).
A w kwestii kompresji/dekompresi wideo, to też w grę wchodzi akceleracja sprzętowa w CPU (więc w pewnych granicach w ogóle nie jest widoczne zapotrzebowanie na moc obliczeniową do tych zadań, a są wykonywane, no i tu oczywiście jest kwestia wspieranych kodeków, ale jak sądzę w dedykowanym sofcie nawet nie da się wybrać kodeka, który nie jest akcelerowany).

… to czy masz jakieś krótkie resume naszych dywagacji? :wink:
Potrzeba, nie potrzeba jakiegoś wypasionego sprzętu ?
Z mojego doświadczenia to: biorę jakiegoś gotowca z półki, bez wyszukanych komponentów o w miarę dobrych osiągach, ustawiam parametry i działa. Dlatego tak?.. aby w przypadku awarii szybko mógłbym znaleźć zamiennik. Dałbym nawet linka do softu (demo działa bez ograniczeń od 8-16 godz) ale zakaz reklamy :slight_smile:
Oczywiście nie jest to w temacie wątku.

TOTALNY OFF-TOPIC
No cóż odniesień z mojej roboty nie da się przenieść 1:1 do tego wątku, bo najniższy dopuszczalny bitrate (w kodeku long-GOP jakiego w ogóle się nie używa w monitoringu, bo z long-GOP to tylko h264 i h265 się przyjęły w monitoringu i ten ostatni to niedawno) to u mnie od wielu lat 50Mbps, a taki codzienny bitrate to powyżej 120Mbps (po kompresji, bo w przypadku surowych danych obracamy streamami 1.5Gbps i w górę, coraz częściej 3Gbps, a powoli bo powoli, ale wchodzi technologia 12Gbps), więc jeśli chodzi o procesory to maszyny niemal od zawsze są wieloprocesorowe na bazie Xeonów, jeśli chodzi o AMD to dopiero EPYC zaczął się liczyć na rynku i muszę powiedzieć, że wymiótł intele z najcięższych zastosowań. No, ale do clou - to nie jest sprzęt poniżej 5000$ (więc dlatego jest dążenie by był wykorzystany w ponad 100% :slight_smile: ).


A wracając do wątku to w kwestii procesora w tanim sprzęcie to powinien być intel, możliwie najnowszej generacji (warto się zastanowić nad gen >=10) i możliwie dopasowany do obciążenia.

Generalnie można wybierać po benchmarkach, ale chyba jedyny istotny to Cinebench (ale też nie można wychodzić z założenia, że jego wyniki się przełożą 1:1 na realną wydajność, bo generalnie na wydajność ogólną wpływa całość konstrukcji platformy, a tendencja wśród użytkowników HA jest taka, że kwota na komputer ma być nie wyższa niż 500zł…)

i-trójka w miarę świeżej generacji może zjadać na śniadanie i-siódemkę parę generacji starszą… (to tak w kwestii kupowania polizingów - trzeba siedzieć z nosem w specyfikacjach by dobrać jakiś sensowny kompromis między starą generacją i wydajnością), więc raczej do rozważenia nowsze generacje (ale też nie można podchodzić bezkrytycznie).

Tylko taki przykład odnośnie świeżutkiej generacji - mam na myśli chwalony za taniość N100 - trzeba pamiętać, że N100 to jest taki współczesny odpowiednik celeronka (i wszystkie konstrukcje jakie widziałem są konstrukcyjnie ściachane wydajnościowo względem maksa możliwości platformy - obsługuje DDR5, ale wszystko co jest na rynku ma DDR4, często wlutowane, ponadto jest tylko pcie 3.0 = ograniczenie wydajności nvme, sam procesor okazał się niewypałem w zastosowaniach SMP - rdzenie P i E są w nim zbyt różne, więc intel na życzenie microsoftu w rdzeniach P wyłączył niektóre elementy, by obsługiwały to samo co rdzenie E i niczego więcej)

Jeśli chodzi o konstrukcje nieco większe od thin-klientów czy NUCopodobnych, gdzie jest procesor do wyboru, to lepiej wybrać wersję proca z IGPU (mówię o intelach) niż sam proc solo, i to nawet w sytuacjach gdy jako akcelerator jest przewidywane GPU nVidii.

Szkoda, że intel się w sumie wycofał z projektu (ale przejął go Asus), ale przez ostatnie parę lat były dostęne gamingowe wersje NUCów (trochę takie pokraczne konstrukcje ITX i inne dziwne wynalazki, bo cześć była dedykowana na rynek profesonalny), do gier one się wprawdzie raczej mało nadawały, ale jako sprzęt do generalnej obróbki wideo były znakomite (wciąż można to znaleźć - handlowa nazwa serii to NUC Extreme badź NUC Enthusiast :smiley: ostatnio, gdy się tym interesowałem 11 generacja na bazie i7 była dostępna w okolicach 3000-4000 zł zależnie od konfiguracji za nowy srzęt, ale zawsze można rozważyć jakieś niższe modele za to może z nowszych serii, no nie jest to srzęt klasy budżetowej, więc trzeba to też rozważyć, u siebie ich nie używam, mam zwykłe biurowe NUCe, ale też nie używam HA jako rejestratora wideo).

Pozwolę sobie napisać własne 3 grosze. Zaznaczę, że zajmuję się tym zupełnie amatorsko na własne potrzeby. Aktualnie jestem tez na etapie wybierania sprzętu do kolejnej wersji.
Zaczynałem od 4 kamer Dahua z rejestratorem tez tej firmy służących do monitoringu, przestało mi to wystarczać z kilku powodów:
słabe wyszukiwanie zdarzeń, trudne do pogodzenia z automatyką HA, duże problemy z przeglądaniem danych za pomocą telefonu.
Decydującym momentem przejścia na system Frigate było dołączenie kilku kamer Ubiquiti - które fajnie i łatwo się integrują z HA ale nijak z Dahuą.
Obecnie system pracuje na N100 z 1 Coralem na M2, obsługuje 10 kamer i obciąża procesor na jakieś 60-70%. Ponieważ chciałbym też wykorzystać do automatyki wykrywanie nr rejestracyjnych i wykrywanie twarzy, jak również rozbudować HA o serwer muzyki postanowiłem zmienić obecną platformę.
Pierwsza próba była z Intel NUC 11 extreme (i7 11th), wydajny, można nawet dołożyć kartę graficzną i 2 corale ale problemem okazał się pobór mocy - oscylował w okolicy 100W a po dołożeniu grafiki nawet więcej - i wydaje mi się, że to jest problem wielu wydajnych procesorów intela.
Ponieważ udało mi się kupić w dobrej cenie i5-11400T to spróbuję na nim oprzeć mój nowy system monitoringu.

1 Like

Nie wiem czy w tym który masz można skręcić profil energetyczny w BIOSie przycinając wydajność na rzecz energooszczędności, ale możesz spróbować (tylko jeśli słabszy sprzęt wystarczy to i7 nie ma sensu ekonomicznego).

Serwery czy stacje robocze dedykowane do profesjonalnej obróbki wideo pobierają moce mierzone w kilowatach i nikt z tego problemu nie robi, tak samo jak się nikt nie dziwi że macbook pro przy montażu wideo będąc podłączony do zasilacza zużywa też energię z akumulatora (więc czas ciągłej pracy w tak wymagających zastosowaniach jest ograniczony pojemnością akumulatora).