{"id":10360,"date":"2026-09-06T18:10:00","date_gmt":"2026-09-06T16:10:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=10360"},"modified":"2026-10-24T04:16:23","modified_gmt":"2026-10-24T02:16:23","slug":"frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/","title":{"rendered":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator"},"content":{"rendered":"<p>Jeden Coral nie ma sta\u0142ej pojemno\u015bci wyra\u017conej liczb\u0105 kamer. Obci\u0105\u017cenie detektora zale\u017cy od liczby \u017c\u0105da\u0144 inferencji, wybranego modelu i czasu pojedynczego \u017c\u0105dania. Pozosta\u0142e elementy systemu musz\u0105 r\u00f3wnie\u017c odbiera\u0107, dekodowa\u0107, \u015bledzi\u0107 i zapisywa\u0107 obraz. Bud\u017cet detektora jest u\u017cytecznym oszacowaniem, a nie gwarancj\u0105 rozpoznania ka\u017cdego wa\u017cnego obiektu.<\/p>\n<h2>Obszary nie s\u0105 po prostu poruszaj\u0105cymi si\u0119 obiektami<\/h2>\n<p>Frigate wykrywa ruch, \u0142\u0105czy s\u0105siednie pola ruchu w obszary detekcji i uwzgl\u0119dnia istniej\u0105ce \u015bledzenie. Jeden obszar mo\u017ce obejmowa\u0107 kilka obiekt\u00f3w; dwa widoczne fragmenty ruchu nie musz\u0105 oznacza\u0107 dw\u00f3ch osobnych inferencji. Obiekty nieruchome r\u00f3wnie\u017c s\u0105 okresowo sprawdzane. Spokojna scena nie oznacza wi\u0119c zerowego obci\u0105\u017cenia systemu ani zawsze zerowej pracy detektora.<\/p>\n<p>Przydatny wsp\u00f3\u0142czynnik to obserwowana liczba rzeczywistych wywo\u0142a\u0144 inferencji na przetworzon\u0105 klatk\u0119 detekcji, z uwzgl\u0119dnieniem klatek bez wywo\u0142ania i z kilkoma wywo\u0142aniami. Warto\u015b\u0107 zale\u017cy od kadru, ruchu, \u015bledzenia, masek i konfiguracji. Poni\u017csze 1,5 to za\u0142o\u017cenie ilustracyjne, a nie zmierzona typowa warto\u015b\u0107 dla kamer zewn\u0119trznych.<\/p>\n<h2>Bud\u017cet z wyra\u017anymi za\u0142o\u017ceniami<\/h2>\n<figure style=\"--cbb-digits:1\" class=\"cbb cbb--wrap cbb--numbers wp-block-code-beautifier-block-code\" data-lang=\"plain\"><figcaption class=\"cbb-head\"><span class=\"cbb-lang\">Text<\/span><span class=\"cbb-actions\"><button type=\"button\" class=\"cbb-button cbb-button--wrap\" data-cbb-action=\"wrap\" aria-pressed=\"true\" title=\"Wrap long lines\"><svg aria-hidden=\"true\" focusable=\"false\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><path d=\"M2 4h12M2 8h9.5a2.5 2.5 0 0 1 0 5H8m0 0 1.5-1.5M8 13l1.5 1.5M2 12h3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><span class=\"cbb-sr\">Wrap long lines<\/span><\/button><button type=\"button\" class=\"cbb-button cbb-button--copy\" data-cbb-action=\"copy\" data-cbb-done=\"Copied\" data-cbb-failed=\"Press Ctrl+C to copy\"><svg aria-hidden=\"true\" focusable=\"false\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><rect x=\"5.5\" y=\"5.5\" width=\"8\" height=\"8.5\" rx=\"1.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"\/><path d=\"M10.5 3.5V3A1.5 1.5 0 0 0 9 1.5H4A1.5 1.5 0 0 0 2.5 3v6.5A1.5 1.5 0 0 0 4 11h.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"\/><\/svg><span class=\"cbb-button-label\" aria-live=\"polite\">Copy<\/span><\/button><\/span><\/figcaption><pre class=\"cbb-pre\" tabindex=\"0\"><code class=\"cbb-code language-plain\" style=\"counter-reset:cbb-line 0;\"><span class=\"cbb-line\">\u017b\u0105dane inferencje\/s = suma(przetworzone klatki\/s \u00d7 \u015brednie wywo\u0142ania\/klatk\u0119)\n<\/span><span class=\"cbb-line\">Szacowany popyt na detektor szeregowy = \u017b\u0105dane inferencje\/s \u00d7 ms\/inferencj\u0119\n<\/span><span class=\"cbb-line\">\n<\/span><span class=\"cbb-line\">8 \u00d7 5 \u00d7 1.5 = 60 inferencji\/s\n<\/span><span class=\"cbb-line\">60 \u00d7 8 ms = 480 ms\/s = 48% jednego detektora szeregowego\n<\/span><span class=\"cbb-line\">\n<\/span><span class=\"cbb-line\">16 \u00d7 10 \u00d7 1.5 \u00d7 8 ms = 1920 ms\/s = 192% \u017c\u0105dane obci\u0105\u017cenie<\/span><\/code><\/pre><\/figure>\n<p>Przyk\u0142ad zak\u0142ada jeden detektor pracuj\u0105cy szeregowo, osiem kamer przetwarzanych przy 5 kl.\/s, \u015brednio 1,5 wywo\u0142ania inferencji na klatk\u0119 i 8 ms na wywo\u0142anie. Wynik to szacunkowe zapotrzebowanie wynosz\u0105ce 48 procent. Nie jest to pomiar u\u017cycia CPU, op\u00f3\u017anienia ca\u0142ego systemu ani pojemno\u015bci zapisu. R\u00f3wnie\u017c 8 ms jest warto\u015bci\u0105 hipotetyczn\u0105; potrzebny jest pomiar wybranego modelu na rzeczywistym ho\u015bcie.<\/p>\n<p>Przyk\u0142ad 192 procent \u017c\u0105da wi\u0119cej pracy szeregowej, ni\u017c mie\u015bci si\u0119 w sekundzie. Nie dowodzi odrzucenia dok\u0142adnie po\u0142owy wszystkich klatek wideo. Kolejkowanie, op\u00f3\u017anienia i pomijanie klatek zale\u017c\u0105 od ca\u0142ego przetwarzania oraz obci\u0105\u017cenia. Przy nasyceniu obserwowana liczba zako\u0144czonych zada\u0144 mo\u017ce r\u00f3wnie\u017c zani\u017ca\u0107 rzeczywiste zapotrzebowanie.<\/p>\n<p>Jednoczesna aktywno\u015b\u0107 jest wa\u017cniejsza ni\u017c \u015brednia dobowa. U\u017cyteczne pr\u00f3by obejmuj\u0105 kilka poruszaj\u0105cych si\u0119 obiekt\u00f3w, wiatr, zmiany \u015bwiat\u0142a i obraz nocny. Nawet wynik poni\u017cej 100 procent wymaga zapasu na wahania i pozosta\u0142\u0105 prac\u0119. \u017baden uniwersalny procent nie gwarantuje niezawodnego \u015bledzenia.<\/p>\n<figure class=\"lw-diagram\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/dia-10360-review-20261024.png\" width=\"1120\" height=\"580\" alt=\"Przyk\u0142adowy bud\u017cet: 60 wywo\u0142a\u0144 inferencji na sekund\u0119 przy za\u0142o\u017conych 8 ms wymaga 480 ms czasu detektora szeregowego. Model, scena i ca\u0142e przetwarzanie wymagaj\u0105 pomiaru.\"><figcaption>Przyk\u0142adowy bud\u017cet: 60 wywo\u0142a\u0144 inferencji na sekund\u0119 przy za\u0142o\u017conych 8 ms wymaga 480 ms czasu detektora szeregowego. Model, scena i ca\u0142e przetwarzanie wymagaj\u0105 pomiaru.<\/figcaption><\/figure>\n<h2>Pomiar detektora zamiast przypisywania liczby kamer<\/h2>\n<p>Czas inferencji zale\u017cy od modelu, wymiar\u00f3w wej\u015bcia, \u015brodowiska wykonawczego, hosta, po\u0142\u0105czenia i warunk\u00f3w pracy. Uniwersalna tabela 7 ms dla PCIe, 8 ms dla USB i sta\u0142ych liczb kamer ukrywa\u0142aby te zale\u017cno\u015bci. Dwa zgodne detektory Coral mog\u0105 zwi\u0119kszy\u0107 wydajno\u015b\u0107 przez wsp\u00f3ln\u0105 kolejk\u0119, lecz nie gwarantuj\u0105 podwojenia wydajno\u015bci ca\u0142ej instalacji.<\/p>\n<p>Oszacowanie dla pojedynczego detektora szeregowego nie jest uniwersalnym benchmarkiem GPU. Niekt\u00f3re mechanizmy GPU przetwarzaj\u0105 zadania wsp\u00f3\u0142bie\u017cnie. Podstawowy detektor TensorFlow Lite na CPU we Frigate nie jest zalecany do zwyk\u0142ego u\u017cycia; OpenVINO w trybie CPU jest odr\u0119bn\u0105 mo\u017cliwo\u015bci\u0105. Sama liczba rdzeni nie okre\u015bla czasu inferencji \u017cadnego z tych rozwi\u0105za\u0144.<\/p>\n<h2>Osobno dekodowanie, detekcja i nagrywanie<\/h2>\n<p>Coral wykonuje inferencj\u0119 modelu, nie dekodowanie wideo. FFmpeg mo\u017ce korzysta\u0107 z obs\u0142ugiwanego GPU lub silnika multimedialnego poprzez odpowiedni preset Frigate. Sta\u0142a deklaracja jednego rdzenia CPU na kamer\u0119 4K nie przenosi si\u0119 na dowolne kodeki, urz\u0105dzenia i ustawienia strumienia.<\/p>\n<p>Strumie\u0144 o ni\u017cszej rozdzielczo\u015bci do detekcji i g\u0142\u00f3wny do nagrywania cz\u0119sto s\u0105 dobrym uk\u0142adem. Rozdzielczo\u015b\u0107 detekcji musi jednak zachowa\u0107 szczeg\u00f3\u0142y ma\u0142ych lub odleg\u0142ych obiekt\u00f3w. Frigate wycina obszary i skaluje do wej\u015bcia modelu; niewielkie wej\u015bcie modelu nie dowodzi przydatno\u015bci ka\u017cdego \u017ar\u00f3d\u0142a o niskiej rozdzielczo\u015bci.<\/p>\n<p>Przy nagrywaniu przez kopiowanie strumienia wideo samo kopiowanie nie wymaga dekodowania i ponownego kodowania obrazu. Dodatkowe \u015bcie\u017cki podgl\u0105du, transkodowania lub analizy mog\u0105 zwi\u0119ksza\u0107 obci\u0105\u017cenie. Migawki pochodz\u0105 ze strumienia detekcji. Najlepiej, aby kamera ju\u017c nadawa\u0142a ten strumie\u0144 z docelow\u0105 liczb\u0105 klatek: zmniejszenie wy\u0142\u0105cznie <code>detect.fps<\/code> mo\u017ce pozostawi\u0107 koszt dekodowania dodatkowych klatek wej\u015bciowych.<\/p>\n<h2>Interpretacja w\u0142a\u015bciwych metryk<\/h2>\n<p><code>frigate_detection_fps<\/code> liczy uruchomienia detektora na sekund\u0119, a nie po prostu skonfigurowan\u0105 liczb\u0119 klatek. Niska warto\u015b\u0107 w spokojnej scenie jest normalna i nie dowodzi utraty klatek. Tempo odbioru, przetwarzania i pomijania opisuje r\u00f3\u017cne etapy. Rosn\u0105ce pomijanie lub malej\u0105ce tempo przetwarzania przy realistycznej jednoczesnej aktywno\u015bci wymaga analizy wraz z czasem detektora, u\u017cyciem CPU\/GPU, pami\u0119ci\u0105, dziennikami i faktycznym \u015bledzeniem.<\/p>\n<p>Metryka Prometheus <code>frigate_detector_inference_speed_seconds<\/code> u\u017cywa sekund. Warto\u015b\u0107 0,008 odpowiada 8 ms. D\u0142u\u017csza inferencja sama nie dowodzi ograniczenia termicznego: mo\u017cliwe s\u0105 zmiana modelu, konkurencja na ho\u015bcie, problemy z zasilaniem lub po\u0142\u0105czeniem. Brak zdarzenia r\u00f3wnie\u017c nie potwierdza nasycenia detektora; sprawdzenia wymagaj\u0105 pewno\u015b\u0107 modelu, maski, strefy i regu\u0142y przechowywania.<\/p>\n<h2>Dwa detektory PCIe jako fragment konfiguracji<\/h2>\n<figure style=\"--cbb-digits:1\" class=\"cbb cbb--wrap cbb--numbers wp-block-code-beautifier-block-code\" data-lang=\"yaml\"><figcaption class=\"cbb-head\"><span class=\"cbb-lang\">YAML<\/span><span class=\"cbb-actions\"><button type=\"button\" class=\"cbb-button cbb-button--wrap\" data-cbb-action=\"wrap\" aria-pressed=\"true\" title=\"Wrap long lines\"><svg aria-hidden=\"true\" focusable=\"false\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><path d=\"M2 4h12M2 8h9.5a2.5 2.5 0 0 1 0 5H8m0 0 1.5-1.5M8 13l1.5 1.5M2 12h3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><span class=\"cbb-sr\">Wrap long lines<\/span><\/button><button type=\"button\" class=\"cbb-button cbb-button--copy\" data-cbb-action=\"copy\" data-cbb-done=\"Copied\" data-cbb-failed=\"Press Ctrl+C to copy\"><svg aria-hidden=\"true\" focusable=\"false\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"><rect x=\"5.5\" y=\"5.5\" width=\"8\" height=\"8.5\" rx=\"1.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"\/><path d=\"M10.5 3.5V3A1.5 1.5 0 0 0 9 1.5H4A1.5 1.5 0 0 0 2.5 3v6.5A1.5 1.5 0 0 0 4 11h.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"\/><\/svg><span class=\"cbb-button-label\" aria-live=\"polite\">Copy<\/span><\/button><\/span><\/figcaption><pre class=\"cbb-pre\" tabindex=\"0\"><code class=\"cbb-code language-yaml\" style=\"counter-reset:cbb-line 0;\"><span class=\"cbb-line\"><span class=\"cbb-attr\">detectors<\/span>:\n<\/span><span class=\"cbb-line\">  <span class=\"cbb-attr\">coral1<\/span>:\n<\/span><span class=\"cbb-line\">    <span class=\"cbb-attr\">type<\/span>: edgetpu\n<\/span><span class=\"cbb-line\">    <span class=\"cbb-attr\">device<\/span>: pci:0\n<\/span><span class=\"cbb-line\">  <span class=\"cbb-attr\">coral2<\/span>:\n<\/span><span class=\"cbb-line\">    <span class=\"cbb-attr\">type<\/span>: edgetpu\n<\/span><span class=\"cbb-line\">    <span class=\"cbb-attr\">device<\/span>: pci:1<\/span><\/code><\/pre><\/figure>\n<p>Fragment wymaga dw\u00f3ch dost\u0119pnych urz\u0105dze\u0144 i nie tworzy drugiego akceleratora. Sterowniki hosta i dost\u0119p kontenera musz\u0105 udost\u0119pnia\u0107 oba odpowiednie w\u0119z\u0142y, cz\u0119sto <code>\/dev\/apex_0<\/code> i <code>\/dev\/apex_1<\/code>. Dla dw\u00f3ch urz\u0105dze\u0144 USB Coral selektory to <code>usb:0<\/code> i <code>usb:1<\/code>. Ka\u017cdy proces detektora pobiera \u017c\u0105dania ze wsp\u00f3lnej kolejki kamer. Nie jest to pe\u0142na konfiguracja Frigate ani Dockera.<\/p>\n<div class=\"lw-faq\"><h2>Pytania i odpowiedzi<\/h2>\n<h3>Czy maski zmniejszaj\u0105 obci\u0105\u017cenie bez strat detekcji?<\/h3><p>Niewielkie maski ruchu mog\u0105 usuwa\u0107 nieistotne wyzwalacze, np. na\u0142o\u017cony zegar. Nadmierne maskowanie mo\u017ce utrudni\u0107 \u015bledzenie. Zamaskowany obiekt nadal mo\u017ce zosta\u0107 rozpoznany, je\u015bli inny wyzwalacz utworzy obszar obejmuj\u0105cy ten obiekt; ruch w dowolnym innym miejscu nie gwarantuje analizy wszystkich zamaskowanych powierzchni. Maski ruchu nie s\u0105 zas\u0142anianiem prywatno\u015bci i nie zapewniaj\u0105 usuni\u0119cia obiekt\u00f3w z nagra\u0144.<\/p>\n<h3>Co zmieniaj\u0105 ustawienia obiekt\u00f3w nieruchomych?<\/h3><p>Udokumentowany pr\u00f3g domy\u015blny to dziesi\u0119ciokrotno\u015b\u0107 liczby klatek detekcji, czyli 50 klatek przy 5 kl.\/s. Interwa\u0142 nieruchomo\u015bci 50 sprawdza ponownie co 50 przetworzonych klatek, przy 5 kl.\/s mniej wi\u0119cej co dziesi\u0119\u0107 sekund. Przy 3 kl.\/s te same 50 klatek oznacza oko\u0142o 16,7 sekundy. Znaczenie maj\u0105 rzeczywiste ustawienia i osi\u0105gane tempo przetwarzania. Mechanizm ogranicza powtarzane inferencje, ale nie usuwa wszystkich kontroli.<\/p>\n<h3>Czy redukcja z 5 do 3 kl.\/s oszcz\u0119dza 40 procent?<\/h3><p>Tylko w przyk\u0142adzie przy niezmienionych 1,5 wywo\u0142ania na klatk\u0119 i 8 ms na wywo\u0142anie: zapotrzebowanie spada z 480 do 288 ms\/s, czyli o 40 procent. Rzeczywiste tworzenie obszar\u00f3w i \u015bledzenie mog\u0105 si\u0119 zmieni\u0107. Mniej klatek oznacza r\u00f3wnie\u017c mniej okazji do wykrycia kr\u00f3tko widocznego obiektu. Pr\u00f3by w widoku debugowania pokazuj\u0105, czy ni\u017csza cz\u0119stotliwo\u015b\u0107 pozostaje odpowiednia.<\/p>\n<h3>Jak sprawdzi\u0107 po\u0142\u0105czenie USB?<\/h3><p>W Linuksie <code>lsusb -t<\/code> pokazuje wynegocjowan\u0105 pr\u0119dko\u015b\u0107 \u0142\u0105cza. Dla odpowiedniej ga\u0142\u0119zi Corala 5000M oznacza SuperSpeed 5 Gb\/s, a 480M po\u0142\u0105czenie USB 2.0 high-speed. Kolor portu oraz pomiar inferencji 8 lub 22 ms nie zast\u0119puj\u0105 tej kontroli. Znaczenie maj\u0105 r\u00f3wnie\u017c kabel, hub i zasilanie. Coral zmienia identyfikator USB podczas inicjalizacji; przekazywanie urz\u0105dzenia musi obs\u0142ugiwa\u0107 t\u0119 zmian\u0119. Przyk\u0142ad Dockera we Frigate przekazuje magistral\u0119 USB, daj\u0105c dost\u0119p szerszy ni\u017c do jednego konkretnego urz\u0105dzenia.<\/p><\/div>\n<div class=\"lw-quellen\"><h2>\u0179r\u00f3d\u0142a<\/h2><ul><li><a href=\"https:\/\/docs.frigate.video\/\" target=\"_blank\" rel=\"noopener noreferrer\">Frigate documentation<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/configuration\/object_detectors\/\" target=\"_blank\" rel=\"noopener noreferrer\">Object detectors<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/frigate\/video_pipeline\/\" target=\"_blank\" rel=\"noopener noreferrer\">Video pipeline<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/frigate\/camera_setup\/\" target=\"_blank\" rel=\"noopener noreferrer\">Camera setup<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/configuration\/hardware_acceleration_video\/\" target=\"_blank\" rel=\"noopener noreferrer\">Video acceleration<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/configuration\/metrics\/\" target=\"_blank\" rel=\"noopener noreferrer\">Metrics<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/configuration\/masks\/\" target=\"_blank\" rel=\"noopener noreferrer\">Masks<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/configuration\/stationary_objects\/\" target=\"_blank\" rel=\"noopener noreferrer\">Stationary objects<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/frigate\/installation\/\" target=\"_blank\" rel=\"noopener noreferrer\">Installation<\/a><\/li><li><a href=\"https:\/\/docs.frigate.video\/troubleshooting\/edgetpu\/\" target=\"_blank\" rel=\"noopener noreferrer\">Edge TPU troubleshooting<\/a><\/li><li><a href=\"https:\/\/coral.ai\/docs\/accelerator\/get-started\/\" target=\"_blank\" rel=\"noopener noreferrer\">Coral USB Accelerator<\/a><\/li><li><a href=\"https:\/\/help.axis.com\/en-us\/axis-site-designer\" target=\"_blank\" rel=\"noopener noreferrer\">AXIS Site Designer<\/a><\/li><\/ul><\/div>","protected":false},"excerpt":{"rendered":"<p>Wydajno\u015b\u0107 Coral zale\u017cy od rzeczywistych wywo\u0142a\u0144 inferencji, czasu modelu i przetwarzania wideo. Przyk\u0142ad oddziela szacowane obci\u0105\u017cenie detektora od zmierzonej wydajno\u015bci i niezawodnej liczby kamer.<\/p>\n","protected":false},"author":1,"featured_media":15154,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[102],"tags":[92460,92223],"class_list":["post-10360","post","type-post","status-publish","format-standard","hentry","category-cctv-pl","tag-monitoring-cctv-pl-pl","tag-raspberry-pi-pl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-06T16:10:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-24T02:16:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lukas Wojcik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lukas Wojcik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator\",\"datePublished\":\"2026-09-06T16:10:00+00:00\",\"dateModified\":\"2026-10-24T02:16:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/\"},\"wordCount\":1170,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png\",\"keywords\":[\"CCTV\",\"Raspberry Pi\"],\"articleSection\":[\"CCTV\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/\",\"name\":\"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png\",\"datePublished\":\"2026-09-06T16:10:00+00:00\",\"dateModified\":\"2026-10-24T02:16:23+00:00\",\"description\":\"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png\",\"width\":1200,\"height\":630,\"caption\":\"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/cctv-pl\\\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"Lukas Wojcik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"Lukas Wojcik\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik","description":"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/","og_locale":"en_US","og_type":"article","og_title":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik","og_description":"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-09-06T16:10:00+00:00","article_modified_time":"2026-10-24T02:16:23+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator","datePublished":"2026-09-06T16:10:00+00:00","dateModified":"2026-10-24T02:16:23+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/"},"wordCount":1170,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png","keywords":["CCTV","Raspberry Pi"],"articleSection":["CCTV"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/","url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/","name":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png","datePublished":"2026-09-06T16:10:00+00:00","dateModified":"2026-10-24T02:16:23+00:00","description":"Ile kamer ud\u017awignie jedna TPU Coral: inferencje na sekund\u0119, czas inferencji i dlaczego zwykle dekoduj\u0105cy procesor ko\u0144czy si\u0119 wcze\u015bniej ni\u017c akcelerator.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-10360-budzet-inferencji-kamery-razy-liczba-n.png","width":1200,"height":630,"caption":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/cctv-pl\/frigate-i-coral-tpu-ile-kamer-obsluzy-jeden-akcelerator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Frigate i Coral TPU: ile kamer obs\u0142u\u017cy jeden akcelerator"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"Lukas Wojcik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"Lukas Wojcik"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/10360","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=10360"}],"version-history":[{"count":5,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/10360\/revisions"}],"predecessor-version":[{"id":23543,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/10360\/revisions\/23543"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/15154"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=10360"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=10360"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=10360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}