Computer vision w świecie IoT: inteligentny monitoring, liczenie obiektów i analiza wideo

0
42
Rate this post

Nawigacja:

Dlaczego computer vision zmienia Internet Rzeczy, a nie tylko go „upiększa”

Computer vision i IoT – czym to się różni od zwykłego monitoringu

Internet Rzeczy kojarzy się zwykle z prostymi czujnikami: temperatury, wilgotności, ruchu, wibracji. Computer vision dokłada do tego zupełnie nowy zmysł – wzrok maszynowy. Nie chodzi tylko o podgląd z kamery, ale o automatyczne rozumienie sceny: co się dzieje, kto jest w kadrze, ile obiektów się porusza, czy dzieje się coś nietypowego.

Zwykły monitoring wideo opiera się na człowieku, który patrzy na ekran (lub nagranie) i podejmuje decyzje. W systemach IoT z computer vision kamera staje się aktywnym czujnikiem, który:

  • sam wykrywa obiekty (ludzi, pojazdy, produkty, paczki),
  • sam liczy i klasyfikuje zdarzenia,
  • może w czasie rzeczywistym reagować – wysłać alarm, zmienić ustawienia, wywołać akcję w innym systemie.

Różnica jest więc zasadnicza: z „kamery do podglądu” robi się sensor wysokiego poziomu, który generuje konkretne sygnały i dane, zrozumiałe dla innych urządzeń IoT i aplikacji biznesowych.

Najważniejsze scenariusze computer vision w IoT

W realnych wdrożeniach computer vision w świecie IoT przewijają się cztery główne grupy zastosowań. Dobrze je znać, bo większość projektów da się pod którąś z nich podpiąć, a to pomaga w doborze architektury i algorytmów.

Do najczęstszych scenariuszy należą:

  • Inteligentny monitoring wizyjny – wykrywanie intruzów, osób w strefach zakazanych, wtargnięcia na tory, wjazdu pojazdu w niewłaściwą stronę, przekroczenia linii bezpieczeństwa przy maszynach.
  • Liczenie obiektów – liczenie ludzi (ruch w sklepie, biurze, na dworcu), pojazdów (ruch drogowy, parkingi, bramki wjazdowe), produktów na taśmie, palet, paczek, zwierząt w hodowli.
  • Kontrola jakości i procesów – rozpoznawanie wad produktów, sprawdzanie kompletności zestawów, weryfikacja obecności etykiet, śledzenie przepływu surowca między stacjami produkcyjnymi.
  • Bezpieczeństwo i BHP – wykrywanie braku kasków, kamizelek, obecności ludzi w strefach niebezpiecznych, monitorowanie poślizgnięć, upadków, wykrywanie palących papierosy w strefie zakazu (tak, to też się już robi).

Wspólnym mianownikiem jest to, że system musi działać automatycznie, długo i niezawodnie, często w trudnym środowisku: kurz, zmiany oświetlenia, niestabilne łącze, a czasem brak stałego dostępu do internetu.

Dlaczego obraz wygrywa z samymi czujnikami

Klasyczne czujniki IoT są tanie i proste. Czujnik ruchu powie, że „coś się poruszyło”, kontaktron – że „drzwi się otworzyły”. Kamera z computer vision potrafi jednak z tego samego zdarzenia wyciągnąć zdecydowanie więcej:

  • nie tylko że ktoś przeszedł, ale ile osób, w jakim kierunku, w jakim czasie,
  • rozpoznać rodzaj obiektu – człowiek, samochód, rower, wózek widłowy, zwierzę,
  • ocenić kontekst – czy osoba jest w wyznaczonej strefie, czy przekroczyła linię, czy zatrzymała się zbyt długo,
  • zbudować historię ruchu – trasy, heatmapy, wzorce zachowań.

Obraz ma też tę zaletę, że jest elastyczny. Ten sam strumień wideo można dziś wykorzystać do liczenia ludzi, za rok – do wykrywania kolejek, a za dwa lata – do analizy zachowań klientów, wystarczy dołożyć nowe modele CV. Tego tradycyjne czujniki po prostu nie zapewniają.

Specyficzne wyzwania: gdy AI spotyka ograniczone urządzenia

Integracja computer vision z IoT to nie tylko fajne demo z konferencji. W praktyce trzeba zmierzyć się z kilkoma twardymi ograniczeniami:

  • Ograniczone zasoby obliczeniowe – małe urządzenia edge nie mają kart graficznych klasy serwerowej. Modele muszą być lekkie, zoptymalizowane, często zredukowane do wersji int8, pruned, quantized.
  • Przepustowość i opóźnienia – strumieniowanie surowego wideo w wysokiej rozdzielczości do chmury generuje duży koszt i latency. Dlatego część analizy trzeba przenieść na brzegi sieci.
  • Rozproszenie i skalowalność – dziesiątki, setki, a czasem tysiące kamer, w różnych lokalizacjach, z różnym łączem i zasilaniem. Konieczne są mechanizmy zdalnej aktualizacji modeli, monitoringu stanu i zarządzania konfiguracją.
  • Warunki pracy – światło, deszcz, mgła, noc, odbicia w szybach, zabrudzone obiektywy. Model z laboratoriów nagle widzi świat zupełnie inaczej i trzeba go na to przygotować.

Dlatego każdy projekt „computer vision w IoT” trzeba traktować jak inżynieryjny produkt, a nie jak jednorazowy eksperyment data science. Architektura, sprzęt, modele i proces utrzymania muszą od początku być pomyślane pod pracę w terenie.

Z czego składa się system computer vision w środowisku IoT – obraz całości

Warstwa fizyczna: kamery i dodatkowe sensory

Podstawą są kamery, ale w praktycznych wdrożeniach rzadko działają one w całkowitym oderwaniu od innych czujników. W dobrze zaprojektowanej instalacji wizyjnej ważne są:

  • Kamery IP – klasyczne, podłączone przez Ethernet/PoE lub Wi‑Fi, generujące strumień RTSP lub inne formaty. To najczęstszy wybór w halach, magazynach, sklepach.
  • Kamery z modułem AI – urządzenia, które mają wbudowaną jednostkę NPU/ASIC lub mocny SoC i potrafią same wykonywać detekcję obiektów. Dzięki temu do chmury lub systemu nadrzędnego płyną już tylko wyniki, a nie całe wideo.
  • Kamery specjalistyczne – termowizyjne (wykrywanie ludzi w nocy, przegrzanych urządzeń), 3D, stereowizyjne, time‑of‑flight, kamery z global shutter do szybkich taśm produkcyjnych.
  • Sensorowe wsparcie – czujniki ruchu (wybudzają analizę wideo), czujniki wstrząsów, czujniki otwarcia drzwi, LIDAR do dodatkowego pomiaru odległości lub konturów obiektów.

Połączenie kamery z innymi sensorami często pozwala znacząco obniżyć koszty obliczeń: system nie analizuje każdej klatki przez 24/7, tylko reaguje wtedy, gdy czujnik ruchu lub kontaktron zgłosi zmianę. To szczególnie ważne przy zasilaniu bateryjnym lub słabym łączu.

Warstwa przetwarzania: edge, fog, chmura

Dane z kamer trzeba gdzieś policzyć. W IoT przyjęło się rozdzielić to na trzy poziomy przetwarzania:

  • Edge – obliczenia na brzegu sieci, blisko kamery: w samej kamerze AI, na mini‑komputerze (Jetson, Coral, Raspberry Pi z NPU), w routerze z modułem AI. Tutaj zwykle odbywa się detekcja obiektów, prosta klasyfikacja, filtracja szumu, kompresja danych.
  • Fog – lokalny serwer lub bramka, która obsługuje kilka–kilkanaście kamer. Może wykonywać cięższe analizy, łączenie danych z wielu kamer, przechowywanie krótkoterminowe, buforowanie, gdy jest problem z łączem do chmury.
  • Chmura – centralna analityka, długoterminowe przechowywanie wyników, uczenie modeli, dashboardy, raportowanie, integracja z systemami biznesowymi (ERP, CRM, systemy logistyczne).

Rozkład zadań między te warstwy to kluczowa decyzja projektowa: od niej zależy koszt, skalowalność, opóźnienia i poziom bezpieczeństwa danych wideo.

Warstwa sieciowa: jak to wszystko się dogaduje

Strumienie wideo i wyniki analizy muszą płynąć po sieci w sposób przewidywalny i niezawodny. Najczęściej spotykane elementy tej układanki to:

  • RTSP / RTP – standardowy sposób przesyłania strumieni wideo z kamer IP do serwerów lub urządzeń edge. Dobrze wspierany, stabilny, ale niekoniecznie optymalny do streamingu do przeglądarki.
  • HTTP / REST / WebSocket – do przesyłania metadanych i wyników analizy (wykryte obiekty, współrzędne, liczby, zdarzenia). Niska przepustowość, łatwa integracja.
  • MQTT – klasyczny protokół w IoT, idealny do publikowania eventów wizyjnych: „kamera/1/strefa/A/intruz = true”, „kamera/4/licznik/wejścia = 134”. Lekki, dobry do setek urządzeń.
  • Sieci przewodowe i bezprzewodowe – Ethernet, Wi‑Fi, LTE/5G. Każda z nich ma inne opóźnienia, stabilność i koszt transferu, co wpływa na to, ile i jakich danych wideo można faktycznie wysyłać.

Przy projektowaniu systemu computer vision w IoT trzeba uwzględnić, że ciągły streaming w wysokiej jakości to jeden z najdroższych elementów całej układanki. Często lepiej jest na brzegu wyciągnąć z wideo to, co najważniejsze, a do chmury wysyłać tylko wycinki klatek (np. same wycięte obiekty) oraz metadane.

Warstwa aplikacyjna: od klatki z kamery do akcji w systemie

Sam wynik algorytmu – np. że w strefie jest 5 osób – niewiele daje, jeśli nie jest wykorzystany przez systemy nadrzędne. Dlatego warstwa aplikacyjna powinna:

  • Prezentować dane – dashboardy, heatmapy, wykresy, alerty. Operator musi szybko zrozumieć, co dzieje się w obiekcie.
  • Generować zdarzenia dla innych systemów – np. informacja o przekroczeniu progu liczby osób trafia do BMS, który ogranicza wejścia, lub do systemu kolejkowego, który otwiera kolejną kasę.
  • Umożliwiać konfigurację – strefy, linie liczące, progi alarmów, godziny pracy, poziomy czułości. Najlepiej centralnie, bez latania z drabinką do każdej kamery.
  • Logować i audytować – kto zmienił konfigurację, kiedy wyzwolił się alarm, czy system zareagował poprawnie. To kluczowe przy inspekcjach, audytach i sporach.

Integracja z istniejącymi systemami (SCADA, BMS, ERP, systemy parkingowe, systemy ochrony) to często 70% pracy – model ML bywa najłatwiejszą częścią całego projektu.

Pełen przepływ danych: od fotonu do decyzji

Cały cykl działania typowego systemu computer vision w IoT można uprościć do kilku kroków:

  1. Światło trafia na sensor kamery, powstaje klatka obrazu.
  2. Klatka jest kodowana (H.264/H.265) i wysyłana strumieniem RTSP do urządzenia edge lub serwera.
  3. Proces analityczny (model detekcji, segmentacji, tracking) przetwarza klatkę, generując metadane: lista obiektów, klasy, współrzędne, identyfikatory śledzenia.
  4. Na podstawie reguł biznesowych generowane są zdarzenia: przekroczenie linii, czas w strefie, wykrycie intruza, przekroczenie dopuszczalnej liczby osób.
  5. Wyniki są przesyłane do brokerów MQTT/HTTP i dalej do systemów nadrzędnych, które wywołują akcje: sygnał dźwiękowy, powiadomienie SMS/e‑mail, sterowanie bramą, zapis do bazy danych.
  6. Operator widzi efekty na dashboardzie, ma dostęp do nagrań powiązanych ze zdarzeniami, może korygować konfigurację.

Gdy projektuje się taki flow od początku, łatwiej uniknąć późniejszych „łatanych” integracji i niespójności danych między systemami.

Zbliżenie nowoczesnej okrągłej kamery monitoringu na rozmytym tle
Źródło: Pexels | Autor: Danial ZH

Rodzaje zadań computer vision w IoT: od prostego wykrywania do złożonej analizy wideo

Podstawowe klocki: detekcja, segmentacja, śledzenie, rozpoznawanie zdarzeń

Większość projektów IoT z computer vision opiera się na kilku podstawowych typach zadań:

  • Detekcja obiektów – model zaznacza na obrazie prostokąty (bounding boxes) wokół obiektów i przypisuje im klasy: człowiek, samochód, wózek, pies, produkt X. To fundament liczenia i monitoringu.
  • Liczenie obiektów i ludzi: od „ile tego jest” do „jak to się zmienia w czasie”

    Na detekcji obiektów można skończyć, ale wtedy system widzi tylko pojedynczą klatkę. W zastosowaniach IoT częściej liczy się dynamika: ile osób przeszło, ile paczek zjechało z taśmy, jak zmienia się zajętość parkingu. Tutaj wchodzą w grę wyspecjalizowane algorytmy liczące:

  • Liczenie na liniach przekroczenia – nad wejściem lub nad taśmą rysuje się wirtualną linię, a system zlicza obiekty, które ją przekroczą w określonym kierunku. Sprawdza się w wejściach do sklepów, przejściach bramek, sortowniach paczek.
  • Liczenie w strefach – zamiast linii definiuje się obszary: strefa kasowa, peron, zatoka parkingowa. System raportuje aktualną liczbę obiektów w strefie i czas przebywania. To podstawa do analizy kolejek i zatłoczenia.
  • Liczenie na podstawie gęstości – gdy obiekty są bardzo blisko siebie (tłum, stado, produkty w skrzynce), klasyczne wykrywanie prostokątów bywa zawodne. Używa się wtedy modeli estymujących gęstość tłumu lub liczbę obiektów w regionie bez jednoznacznego „wycinania” każdego z nich.

Istotna jest nie tylko sama liczba, ale też ciągłość liczenia. Jeśli system gubi obiekt w tłumie, pojawia się ryzyko podwójnego zliczenia. Z tego powodu liczniki prawie zawsze korzystają z:

  • mechanizmów śledzenia obiektów (tracking) – utrzymują ID obiektu między klatkami,
  • reguł filtrujących – np. ignorowanie bardzo małych lub bardzo szybkich obiektów, które są szumem.

Przykład z praktyki: system w sklepie może raportować nie tylko „przeszło 250 osób”, ale też rozkład godzinowy, średni czas spędzony w sklepie i korelację z otwarciem dodatkowych kas. Nagle licznik ludzi zamienia się w narzędzie do decyzji operacyjnych, a nie „gadżet AI”.

Analiza zachowań i zdarzeń: nie tylko „co widać”, ale „co się dzieje”

Gdy detekcja i tracking działają stabilnie, można przejść do bardziej ambitnych zadań związanych z interpretacją sceny:

  • Wykrywanie naruszeń stref – alarm, gdy ktoś pojawi się w strefie „tylko dla personelu” lub wejdzie na tor jazdy wózków AGV. Reguły mogą uwzględniać porę dnia i typ obiektu (np. ludzie vs pojazdy).
  • Analiza zachowań nietypowych – długie leżenie w jednej pozycji (upadek), poruszanie się pod prąd względem głównego kierunku ruchu, błąkanie się w tej samej strefie. Tu pojawiają się metody „anomaly detection” – system uczy się, jak scena zwykle wygląda, a potem wychwytuje odchylenia.
  • Rozpoznawanie czynności – czy operator ma założone kask i kamizelkę, czy pracownik poprawnie podnosi ładunek, czy osoba pali papierosa w miejscu zabronionym. Łączy się tu klasyczne detektory (np. segmentacja sylwetki) z modelami rozpoznawania akcji w sekwencjach wideo.

Tego typu systemy są już mocno „biznesowe”: nie chodzi tylko o detekcję osób, ale o mapowanie zdarzeń na konkretne procedury – zgłoszenie incydentu BHP, blokadę maszyny, zgłoszenie do ochrony. Im precyzyjniej zdefiniowane zdarzenia, tym mniej fałszywych alarmów i nerwów po stronie użytkowników.

Jakość, defekty, klasyfikacja wizualna w produkcji i logistyce

Internet Rzeczy w zakładach przemysłowych coraz częściej wykorzystuje komputerowe widzenie jako cyfrowe „oko kontroli jakości”. Zamiast losowo badać próbki, można oglądać wszystko:

  • Inspekcja wizualna produktów – szukanie pęknięć, zadrapań, brakujących elementów, złych nadruków. Kamery montuje się nad liniami produkcyjnymi, a modele segmentacji lub klasyfikacji rozpoznają defekty na podstawie wzorców.
  • Weryfikacja kompletności – czy w pudełku są wszystkie części, czy paleta jest poprawnie ułożona, czy etykieta trafiła tam, gdzie trzeba. Często łączy się obraz 2D z wagą lub czujnikami objętości.
  • Odczyt znaków i kodów – OCR i rozpoznawanie kodów kreskowych/2D, numerów seryjnych, rejestracji pojazdów. Z pozoru proste, ale w realnych warunkach (brud, odbicia, pośpiech na taśmie) wymaga sprytnego doboru optyki i modeli.

Plus jest taki, że AI wizyjne w produkcji bardzo szybko pokazuje wpływ na KPI – mniej reklamacji, mniej ręcznej kontroli, szybsza reakcja na problemy. Minus: trzeba zadbać o stabilne warunki oświetleniowe i naprawdę sensowny proces etykietowania danych, bo model uczony na „idealnych” próbkach polegnie przy pierwszym prawdziwym smarze na soczewce.

Sprytne wykorzystanie komputerowego widzenia do oszczędzania zasobów

Niektóre zadania nie są spektakularne, ale potrafią uratować budżet:

  • Dynamiczne sterowanie jakością nagrań – gdy w scenie nic się nie dzieje (pusty magazyn nocą), system redukuje FPS lub rozdzielczość. Jeśli pojawia się ruch, włącza pełną jakość i analizę AI.
  • Inteligentne wyzwalanie nagrywania – zamiast zapisywać 24/7, rejestruje się tylko fragmenty z wykrytym zdarzeniem (ruch, naruszenie strefy, upadek). Reszta może zostać zastąpiona snapshotami.
  • Adaptacja do warunków – wykrywanie mgły, deszczu czy zabrudzenia obiektywu. System może automatycznie przełączyć się na inne źródło danych (np. kamerę termowizyjną) albo wysłać zgłoszenie „proszę przetrzeć oko kamery”.

W skali kilkudziesięciu lokalizacji takie „drobiazgi” robią różnicę między projektem, który mieści się w kosztach chmury, a projektem, który po miesiącu jest „tymczasowo wyłączony do optymalizacji”.

Sprzęt pod AI wizyjne: kamery, edge i reszta żelastwa

Rodzaje kamer a wymagania analityki

Dobór kamery to nie jest konkurs na największą rozdzielczość. Najlepszy model AI niewiele zrobi, jeśli widzi tylko smugę światła lub prześwietlone sylwetki. Przy projektowaniu systemu przydaje się kilka kryteriów:

  • Rozdzielczość i kąt widzenia – więcej pikseli to z reguły lepsza detekcja, ale też większy strumień danych. Czasem lepiej użyć dwóch tańszych kamer z węższym kątem niż jednej „rybie oko” 4K, na której osoby mają po kilkadziesiąt pikseli wysokości.
  • Tryb nocny / IR – analiza ruchu na parkingu czy placu budowy bez oświetlenia wymaga kamer z dobrym trybem nocnym lub doświetleniem IR. Modele muszą być dodatkowo uczone na takich obrazach, bo świat w podczerwieni wygląda całkiem inaczej niż w RGB.
  • WDR i odporność na kontrast – wejścia do budynków, hale z dużymi bramami, sklepy z witrynami to klasyczne pułapki. Bez sensownego WDR (Wide Dynamic Range) połowa kadru będzie spalona, druga czarna, a detektor obiektów będzie widział głównie „jasną plamę” lub „ciemną plamę”.
  • Odporność środowiskowa – IP66/IP67, odporność na wibracje, temperatura pracy. Kamera przy piecu hutniczym ma inne życie niż ta w klimatyzowanym biurze.

Do tego dochodzą kwestie czysto instalacyjne: sposób montażu, zasilanie PoE lub 12V, dostęp do okablowania. Można mieć genialny model, ale jeśli kamera wisi pod kątem 45 stopni do ziemi i patrzy w słońce, to magia się nie wydarzy.

Edge AI: małe komputery, duża odpowiedzialność

Większość nowoczesnych systemów IoT z analizą wideo opiera się na przetwarzaniu na brzegu. Typowe „konie robocze” to:

  • Moduły typu NVIDIA Jetson – bardzo popularne w projektach przemysłowych i prototypach. Łączą GPU z CPU w jednym module, dobrze współpracują z frameworkami DL i bibliotekami do przyspieszania inferencji.
  • Akceleratory USB/PCIe (Coral, Movidius, Hailo) – małe urządzenia dołączane do istniejących komputerów lub bramek IoT. Pozwalają dobudować „mięsień AI” bez wymiany całego sprzętu.
  • Mikrokomputery z NPU na pokładzie – coraz częstsze w routerach przemysłowych czy bramkach IoT. Dają możliwość uruchamiania skompresowanych modeli typu Tiny/Edge, wystarczających do prostych zadań (detekcja ruchu, klasyfikacja kilku klas).

Przy wyborze edge’a pojawiają się klasyczne kompromisy:

  • Moc obliczeniowa vs pobór mocy – w hali z zasilaniem to nie problem, ale na maszcie w polu z zasilaniem solarnym już tak.
  • Temperatura pracy – mocne moduły potrafią się grzać, a obudowa IP66 bez sensownej wentylacji zamienia się w piekarnik.
  • Łatwość aktualizacji – urządzenie, do którego nie da się sensownie wdrożyć nowej wersji modelu czy kontenera, staje się w praktyce „sztywną czarną skrzynką”.

W dojrzałych wdrożeniach edge zazwyczaj działa w modelu „jedno urządzenie – kilka kontenerów”: osobny serwis do odbioru RTSP, osobny do inferencji, osobny do zarządzania i logowania. Ułatwia to aktualizacje i debugging, kiedy coś przestaje działać o 3 nad ranem.

Serwery, NVR-y i reszta infrastruktury

Nie wszędzie opłaca się stawiać osobne urządzenie pod każdą kamerę. Przy większych instalacjach wygodniejsze jest zbiorcze przetwarzanie:

  • NVR/VMS z modułami AI – nowoczesne rejestratory potrafią wykonywać podstawową analitykę (detekcja ruchu, naruszenie stref, proste liczenie). To szybki sposób na „upgrade” istniejącego monitoringu bez wymiany wszystkich kamer.
  • Serwery GPU w lokalnej serwerowni – dla hal produkcyjnych, centrów logistycznych czy centrów handlowych. Jeden mocny serwer obsługuje kilkanaście–kilkadziesiąt strumieni, oferując bardziej zaawansowane modele i integrację z systemami OT/IT.
  • Bramek IoT z funkcją proxy – gdy łącze do chmury jest słabe, ale trzeba przesłać wyniki analityki i fragmenty nagrań. Bramka zarządza buforowaniem, retransmisją i szyfrowaniem.

W tej warstwie szczególnie ważne są kwestie sieciowe: VLAN-y dla wideo, QoS dla krytycznych strumieni, szyfrowanie połączeń z chmurą. „Goły” RTSP po całej sieci firmowej to przepis na późniejsze spotkanie z działem bezpieczeństwa.

Zasilanie, obudowy, montaż – detale, które potrafią zabić projekt

Sprzęt w IoT żyje w świecie kabli, śrub i pogodowych kaprysów. Kilka pytań, które dobrze zadać wcześniej:

  • Czy wszystkie kluczowe elementy mają zasilanie awaryjne (UPS, baterie)? Gdy znika prąd, znikają też „dowody z kamer”.
  • Czy przewidziano dostęp serwisowy? Kamera zamontowana 12 metrów nad ziemią bez sensownego punktu serwisowego to przyszłościowy abonament na podnośnik.
  • Czy obudowy i uchwyty są dostosowane do wibracji i wiatru? Delikatnie drgająca kamera na maszcie może wyglądać malowniczo, ale detektor obiektów nie będzie zachwycony.

Inżynierskie „przyziemne” decyzje często mają większy wpływ na działanie systemu niż wybór między YOLO a EfficientDet. Kamery, które po prostu stabilnie patrzą tam, gdzie trzeba, w każdą pogodę, to już jest połowa sukcesu.

Trzy nowoczesne kamery monitoringu IoT stojące na stole w pomieszczeniu
Źródło: Pexels | Autor: Jakub Zerdzicki

Algorytmy w praktyce: detekcja, liczenie i śledzenie obiektów w świecie IoT

Detekcja obiektów: jak zamienić piksele na „samochód” i „człowieka”

Podstawą większości systemów jest model detekcji obiektów. W praktyce w IoT wykorzystuje się głównie architektury z rodziny:

  • YOLO / YOLOv5–v8, YOLO-NAS – szybkie, dobrze wspierane, z odmianami „tiny” na edge i cięższymi wersjami na serwery GPU.
  • EfficientDet, SSD, RetinaNet – często stosowane tam, gdzie liczy się kompromis między dokładnością a szybkością na słabszym sprzęcie.

Przy wyborze modelu kluczowe są trzy parametry:

  • mAP / recall – ile prawdziwych obiektów faktycznie wykrywa. Zbyt niski recall to przeoczenia (np. niepoliczone osoby).
  • FPS na docelowym sprzęcie – jeśli system potrzebuje reakcji w sekundę, a model na edge’u daje 2 FPS, to żaden postprocessing tego nie uratuje.
  • Liczenie obiektów: zliczyć tłum, samochody i palety bez liczydła

    Na detekcji świat się nie kończy. W zastosowaniach IoT często kluczowe jest nie tylko co jest w kadrze, ale ile tego jest i jak się zmienia w czasie. Zliczanie to osobna kategoria problemów, bo:

  • obiekty nachodzą na siebie (tłum w galerii, samochody na bramkach),
  • część z nich znika z pola widzenia i wraca,
  • czasem liczy się przepływ przez linię, a nie „liczbę na ekranie”.

W prostych scenariuszach (np. liczenie pojazdów na drodze z widokiem z góry) wystarczy detektor i linia wirtualna. Każdy obiekt, którego środek ciężkości przeciął linię, podbija licznik w górę. Schody zaczynają się przy:

  • dużym zagęszczeniu ludzi – wąskie wejście do sklepu w godzinach szczytu,
  • częściowym zakryciu – wózki, palety, regały zasłaniające osobę.

Tutaj dobrze sprawdzają się hybrydowe podejścia:

  • Detekcja + śledzenie (tracking) – każda osoba lub auto dostaje identyfikator i jest śledzone między klatkami. Pozwala to uniknąć sytuacji, w której ten sam obiekt liczony jest kilka razy, gdy zawraca albo krąży.
  • Metody gęstościowe (density maps) – zamiast wykrywać każdą głowę w tłumie, model przewiduje mapę gęstości i integruje ją po obszarze. Przydaje się na stadionach, placach, wszędzie tam, gdzie pojedynczych osób już prawie nie widać.

W zastosowaniach przemysłowych liczenie często łączy się z logiką biznesową. System nie tylko raportuje „10 palet na strefie załadunku”, ale uruchamia scenariusz:

  • jeśli liczba palet > próg,
  • i jednocześnie czytnik RFID nie odnotował wyjazdu,
  • to wyślij alarm do dyspozytora i zatrzymaj wydawanie kolejnych zleceń.

Taka integracja z danymi z innych sensorów (waga, RFID, czujniki zajętości) często jest ważniejsza niż sama precyzja sieci neuronowej. Nawet model z lekkim błędem potrafi być bardzo użyteczny, jeśli działa w dobrze zaprojektowanym procesie.

Śledzenie obiektów: kto jest kim między klatkami

Śledzenie to klej, który spina detekcję i logikę biznesową. Dwa główne cele:

  • utrzymać tę samą tożsamość obiektu w czasie,
  • zrekonstruować trajektorię – skąd przyszedł, dokąd poszedł, co „po drodze” minął.

W praktycznych wdrożeniach najczęściej pojawiają się:

  • Trackery klasyczne (KCF, CSRT, MOSSE) – lekkie i szybkie, często wystarczające, gdy obiekt jest wyraźny, a scena nie jest przesadnie zatłoczona.
  • Trackery „mot” (multi-object tracking) – np. DeepSORT, ByteTrack, OC-SORT, łączące detekcję z prostym modelem ruchu i/lub embeddingami wizualnymi.

W IoT szczególnie praktyczne są algorytmy, które dobrze znoszą:

  • dziury w strumieniu – kamera na niestabilnym łączu,
  • przykrycia – wózek zasłania osobę na kilka klatek,
  • nagłe zmiany kierunku – klasyka przy monitoringu ruchu pieszych.

Śledzenie otwiera drogę do bardziej zaawansowanych analiz:

  • czas przebywania w strefie (np. ile minut osoba stoi przy maszynie bez ruchu),
  • analiza ścieżek (popularne trasy, miejsca, w których tworzą się „korki”),
  • weryfikacja scenariuszy bezpieczeństwa (np. osoba zbliża się do strefy niebezpiecznej od strony, z której teoretycznie nie powinna mieć dostępu).

W praktyce pomocne bywa rozdzielenie odpowiedzialności: detektor działa z mniejszą częstotliwością (np. co drugą klatkę), a tracker „wypełnia dziury” między detekcjami. Pozwala to zbić obciążenie obliczeniowe i nadal mieć płynne ścieżki ruchu.

Postprocessing: filtracja szumu, agregacja i reguły biznesowe

Surowe wyniki modeli rzadko nadają się do użycia „as is”. Żeby system IoT działał stabilnie, trzeba dołożyć warstwę logiki po stronie postprocessingu:

  • Filtry czasowe – pojedyncza detekcja na jedną klatkę często jest traktowana jako szum. Dopiero utrzymanie obiektu przez kilka kolejnych klatek powoduje wygenerowanie zdarzenia.
  • Histereza progów – inny próg detekcji do „włączenia” obiektu, inny do „wyłączenia”. Dzięki temu ramka nie „miga”, gdy pewność modelu balansuje na granicy.
  • Łączenie zdarzeń – seria krótkich naruszeń strefy może być agregowana do jednego, dłuższego zdarzenia z precyzyjnym czasem początku i końca.

Kolejna warstwa to reguły biznesowe. Zamiast wysyłać tysiące alertów typu „wykryto człowieka”, system powinien produkować kilka sensownych powiadomień dziennie:

  • „Osoba w strefie X poza godzinami pracy”,
  • „Wózek widłowy wjechał do strefy pieszej”,
  • „Przekroczono limit liczby osób w pomieszczeniu Y”.

Taką logikę najlepiej trzymać w konfigurowalnej warstwie – silnik reguł (rules engine), DSL lub przynajmniej pliki konfiguracyjne. „Zahardkodowane” reguły w kodzie modelu lub usług inferencyjnych szybko zamieniają się w koszmar przy pierwszej zmianie procesu na hali.

Specyficzne wyzwania analizy wideo w IoT

Świat IoT rządzi się innymi prawami niż sterylne benchmarki z Kaggle. W codziennej eksploatacji pojawia się kilka powtarzalnych problemów:

  • Zmienność oświetlenia – wschód słońca, zachód, migające świetlówki, lampy sodowe rozgrzewające się przez kilka minut. Modele uczone tylko na „ładnych” obrazach potrafią się wyłożyć w realnych warunkach.
  • Zakłócenia i artefakty kompresji – przy niskim bitrate H.264/H.265 obraz w ruchu potrafi zamienić się w pikselową mozaikę. Trzeba testować modele na strumieniach o docelowych parametrach, a nie na idealnych plikach z dysku.
  • Wibracje i mikrodrgania – kamery na słupach, masztach, maszynach. Ruch tła może być większy niż ruch obiektów, co myli klasyczne algorytmy detekcji ruchu i utrudnia stabilne śledzenie.

Dobrze działa podejście „obronne”: zamiast zakładać idealne warunki, przyjmuje się, że:

  • dane wejściowe będą okresowo złej jakości,
  • modele czasem popełnią głupie błędy,
  • algorytmy muszą mieć dozorowane „bezpieczne domyślne” (fail-safe).

Przykład: jeśli system liczenia osób w wyjściach ewakuacyjnych chwilowo przestaje widzieć ludzi, nie oznacza to automatycznie, że pomieszczenie jest puste. Lepsze jest domyślne zachowanie konserwatywne – alarm lub prośba o ręczną weryfikację – niż błędna cisza.

Uczenie i dostrajanie modeli pod konkretne środowisko

„Model z internetu” działa, dopóki warunki są zbliżone do treningowych. W projektach IoT zwykle i tak ląduje się w etapie dostrajania:

  • Fine-tuning – gotowy model bazowy (np. YOLOv8) jest douczany na danych z konkretnych kamer, z nietypową perspektywą, warunkami oświetleniowymi i klasami obiektów.
  • Data augmentation – symulowanie mgły, deszczu, szumu kompresji, zmian jasności i kontrastu. To sposób na przygotowanie modelu na „gorsze dni” jeszcze w fazie treningu.
  • Pseudolabeling / semi-supervised – przy dużej ilości nienazwanych nagrań AI sama sugeruje etykiety, które człowiek tylko koryguje. Przyspiesza to budowę setek godzin materiału treningowego.

Przy uczeniu modeli w IoT kluczowy jest dobry proces iteracyjny:

  1. Zebrać próbkę danych z docelowych lokalizacji (różne pory dnia, pogoda, obciążenie ruchem).
  2. Oznaczyć niewielki, ale reprezentatywny zbiór – lepiej 2 godziny dobrze opisanych nagrań niż 20 godzin „jak leci”.
  3. Wytrenować lub dostroić model.
  4. Wdrożyć pilotażowo na kilku kamerach, zbierać logi błędów i przypadki trudne.
  5. Ponownie oznaczyć najtrudniejsze przypadki, douczyć model, powtórzyć.

Taka pętla (feedback loop) powoduje, że model realnie „uczy się” danej fabryki, magazynu czy sklepu, zamiast być generycznym rozwiązaniem „do wszystkiego i do niczego”.

Monitoring jakości modeli w czasie rzeczywistym

Modele wdrożone w IoT żyją długo i widzą świat, który się zmienia. Nowe oświetlenie na hali, przemalowane linie na podłodze, przebudowa regałów – każda z tych rzeczy może obniżyć jakość detekcji. Żeby nie dowiadywać się o tym po pół roku z audytu, przydaje się monitoring:

  • Statystyki detekcji – liczba obiektów na kamerę, rozkład po godzinach, nagłe spadki lub wzrosty. Np. jeśli liczba wykrywanych wózków widłowych spada do zera w godzinach pracy, coś jest nie tak.
  • Losowe próbkowanie – okresowe zapisywanie klatek z nałożonymi detekcjami do ręcznego przeglądu przez operatora lub zespół data science.
  • Backtesting reguł – symulowanie nowych reguł biznesowych na historycznych danych bez wpływu na system produkcyjny.

Praktycznym trikiem jest dodanie do pipeline’u niewielkiego bufora nagrań „przed” i „po” zdarzeniu (kilkanaście–kilkadziesiąt sekund). Ułatwia to weryfikację, czy alert był zasadny, i dostarcza surowego materiału do poprawek modeli.

Architektura systemu: edge vs chmura, strumieniowanie i integracja z IoT

Gdzie liczyć piksele: edge, lokalne serwery czy chmura

Decyzja „gdzie uruchomić AI” wpływa na wszystko: od kosztów, przez opóźnienia, po zgodność z RODO i wewnętrznymi politykami bezpieczeństwa. Typowe warianty to:

  • Full edge – wszystkie obliczenia na kamerach/urządzeniach brzegowych, do chmury lecą tylko zdarzenia i ewentualnie wycinki wideo. Dobrze sprawdza się w miejscach o słabym łączu lub z ostrymi wymaganiami dot. prywatności.
  • Edge + lokalny serwer – wstępna filtracja na brzegu (np. detekcja ruchu, detekcja klas ogólnych), a cięższa analityka w serwerowni obiektu. Kompromis między wydajnością a centralnym zarządzaniem.
  • Edge + chmura – podstawowe decyzje w czasie rzeczywistym na brzegu, a w chmurze uczenie modeli, raportowanie, długoterminowa analityka i integracja z innymi systemami.

Architektura „chmura robi wszystko” rzadko ma sens przy analizie wideo IoT. Koszt przesyłu dziesiątek strumieni 1080p do chmury i opóźnienia sieciowe szybko studzą entuzjazm. Rozsądniejsze jest traktowanie chmury jako „mózgu strategicznego”, a edge jako „układu odruchowego”.

Strumieniowanie wideo: RTSP, WebRTC i gąszcz protokołów

Kamera widzi świat, ale żeby AI mogła cokolwiek policzyć, trzeba ten obraz sensownie przesłać. Najczęściej używane są:

  • RTSP/RTP – standard de facto w monitoringu. Stabilny, dojrzały, obsługiwany przez większość kamer IP. Dobrze nadaje się do połączeń w sieci lokalnej i do przetwarzania w serwerowni lub na edge’u.
  • HLS/DASH – raczej do dystrybucji wideo na żywo do użytkowników (podgląd przez WWW, aplikacje mobilne), niekoniecznie jako główne źródło dla AI ze względu na buforowanie i opóźnienia.
  • WebRTC – tam, gdzie krytyczne jest bardzo niskie opóźnienie i transmisja przez internet z NAT/Firewall (np. podgląd inspekcji przemysłowych w czasie rzeczywistym).

Dobrą praktyką jest rozdzielenie strumienia „dla ludzi” i „dla maszyn”:

  • analiza AI korzysta z RTSP o niższym opóźnieniu, często w sieci lokalnej,
  • podgląd dla operatorów jest serwowany przez VMS/API jako HLS lub WebRTC, z dodatkową autoryzacją i kontrolą dostępu.

Najczęściej zadawane pytania (FAQ)

Na czym polega różnica między zwykłym monitoringiem a systemem IoT z computer vision?

Zwykły monitoring to głównie „telewizja”: kamera nagrywa, a człowiek patrzy na ekran i sam wyciąga wnioski. System IoT z computer vision traktuje kamerę jak inteligentny czujnik, który sam wykrywa obiekty, liczy je, klasyfikuje zdarzenia i wysyła konkretne sygnały do innych systemów.

W praktyce oznacza to, że zamiast ogólnego „ktoś wszedł na halę”, system potrafi zgłosić: „wejście osoby bez kasku do strefy niebezpiecznej” albo „pojazd wjechał pod prąd na parking”. Decyzje mogą być podejmowane automatycznie, w czasie rzeczywistym – bez czekania, aż operator coś zauważy na podglądzie.

Jakie są najpopularniejsze zastosowania computer vision w IoT?

Najczęściej spotykane scenariusze można zwykle podpiąć pod kilka kategorii. W praktyce dominują:

  • inteligentny monitoring wizyjny (wykrywanie intruzów, osób w strefach zakazanych, przekroczeń linii bezpieczeństwa),
  • liczenie obiektów (ludzie w sklepach i biurach, pojazdy na drogach i parkingach, produkty na taśmie, paczki, palety, zwierzęta),
  • kontrola jakości i procesów (wykrywanie wad, braków elementów, brakujących etykiet, śledzenie przepływu materiału),
  • bezpieczeństwo i BHP (brak kasku, kamizelki, obecność w strefie niebezpiecznej, poślizgnięcia, upadki, palenie w strefach zakazu).

Wszystkie te zastosowania łączy jedno: system ma działać długo, samodzielnie i niezawodnie, często w trudnych warunkach – kurz, deszcz, słabe światło czy niestabilne łącze.

Dlaczego kamery z AI są lepsze niż same czujniki ruchu w systemach IoT?

Klasyczne czujniki IoT są proste i tanie, ale przekazują bardzo ubogą informację: „coś się poruszyło” albo „drzwi się otworzyły”. Computer vision wyciąga z tego samego zdarzenia dużo więcej: ile było osób, w jakim kierunku się poruszały, jak długo przebywały w strefie, czy to był człowiek, samochód, wózek widłowy czy pies sąsiada.

Strumień wideo ma też tę przewagę, że jest elastyczny. Ta sama kamera, która dziś liczy ludzi, za rok może wykrywać kolejki, a za dwa lata analizować zachowania klientów – wystarczy dołożyć nowe modele. Czujnika ruchu nie „nauczymy” nagle rozpoznawania kasku czy tablicy rejestracyjnej.

Jakie są największe wyzwania przy wdrażaniu computer vision w IoT?

Najbardziej bolesne problemy pojawiają się zwykle tam, gdzie kończą się slajdy z prezentacji, a zaczyna prawdziwe środowisko. Typowe wyzwania to:

  • ograniczone zasoby sprzętowe na urządzeniach edge (brak mocnych GPU, konieczność lekkich, zquantyzowanych modeli),
  • przepustowość i opóźnienia – przesyłanie surowego wideo w wysokiej jakości do chmury jest drogie i wolne, więc część analizy trzeba przenosić „na brzeg”,
  • rozproszenie i skalowalność – dziesiątki lub setki kamer w różnych lokalizacjach wymagają zdalnej aktualizacji modeli, monitoringu i centralnego zarządzania,
  • warunki pracy: zmienne oświetlenie, deszcz, mgła, brudne obiektywy, odbicia w szybach – model z laboratorium musi poradzić sobie z dużo „brzydszym” światem.

Dlatego takie projekty trzeba projektować jak normalny produkt inżynieryjny: z myślą o utrzymaniu, aktualizacjach i realnym terenie, a nie tylko o jednorazowym PoC.

Jak wygląda typowa architektura systemu computer vision w środowisku IoT?

Najczęściej spotyka się trójwarstwowy model przetwarzania: edge, fog i chmura. Na brzegu (edge) działają kamery IP lub kamery z modułem AI oraz małe komputery (Jetson, Coral, router z NPU), które wykonują detekcję obiektów, prostą klasyfikację i wstępną filtrację.

Warstwa „fog” to lokalne serwery lub bramki obsługujące kilka–kilkanaście kamer. Agregują dane, wykonują cięższe obliczenia i buforują wyniki przy problemach z łączem. Chmura odpowiada za analitykę na dużą skalę, długoterminowe przechowywanie, uczenie modeli oraz integrację z systemami biznesowymi (ERP, CRM, systemy logistyczne).

Jakie kamery i czujniki najlepiej nadają się do projektów computer vision w IoT?

W prostszych wdrożeniach dominują klasyczne kamery IP (Ethernet/PoE lub Wi‑Fi, RTSP), które można podpiąć do lokalnego edge’a. Coraz częściej stosuje się kamery z modułem AI, mające wbudowane NPU lub mocny SoC, które same wykonują detekcję i wysyłają tylko wyniki, a nie całe wideo. W specyficznych zastosowaniach używa się kamer termowizyjnych, 3D, time‑of‑flight czy z global shutter na szybkie linie produkcyjne.

Kamery dobrze współpracują z dodatkowymi sensorami: czujnik ruchu może „wybudzać” analizę wideo, kontaktron na drzwiach może inicjować nagrywanie zdarzenia, a LIDAR doprecyzować odległości czy kontury obiektów. W efekcie system jest tańszy obliczeniowo i lepiej radzi sobie np. przy zasilaniu bateryjnym.

Czy computer vision w IoT wymaga stałego dostępu do internetu?

Nie zawsze. W wielu projektach zasadnicza analiza odbywa się lokalnie na brzegu sieci (edge) lub na bramkach „fog”, a połączenie z chmurą jest używane głównie do synchronizacji, raportowania i aktualizacji modeli. To ważne np. w magazynach z kiepskim zasięgiem albo zakładach przemysłowych, gdzie priorytetem jest ciągłość działania, a nie stały upload wideo.

Typowy kompromis wygląda tak: na urządzeniach edge wykrywane są obiekty i zdarzenia, do chmury trafiają tylko metadane (wyniki analizy, alarmy, statystyki), a nie surowy strumień wideo. Dzięki temu system jest odporny na chwilowe przerwy w łączności, a koszty transferu nie rosną w nieskończoność.

Najważniejsze punkty

  • Computer vision zmienia kamerę z pasywnego „podglądu” w aktywny sensor wysokiego poziomu, który sam wykrywa obiekty, liczy zdarzenia i wywołuje akcje w innych systemach IoT.
  • Główne zastosowania CV w IoT to: inteligentny monitoring, liczenie obiektów, kontrola jakości procesów oraz bezpieczeństwo/BHP – od hali produkcyjnej po parking pod biurem.
  • Obraz wygrywa z klasycznymi czujnikami, bo dostarcza dużo bogatszy kontekst: typ obiektu, kierunek i czas ruchu, naruszone strefy, a także historię i wzorce zachowań (np. heatmapy klientów w sklepie).
  • Ten sam strumień wideo można wykorzystywać do kolejnych zadań w czasie – dziś liczenie ludzi, jutro wykrywanie kolejek, pojutrze analiza zachowań – wystarczy dołożyć nowe modele, bez wymiany fizycznych czujników.
  • Największe wyzwania to ograniczona moc obliczeniowa urządzeń edge, przepustowość łącza i opóźnienia, rozproszenie tysięcy kamer oraz trudne warunki środowiskowe, które potrafią „oślepić” nawet najlepszy model z laboratorium.
  • Skuteczny system CV w IoT wymaga podejścia produktowego: przemyślanej architektury, dobrze dobranego sprzętu, lekkich i zoptymalizowanych modeli oraz procesu zdalnych aktualizacji i monitoringu stanu całej instalacji.
  • Kamery rzadko działają w próżni – w praktyce współpracują z innymi sensorami (ruchu, wstrząsów, otwarcia drzwi, LIDAR), co pozwala ograniczać zużycie zasobów i podnosić niezawodność, zamiast „młotkować” wszystko samym wideo.
Poprzedni artykułKonfiguracja VPN na routerze: praktyczny poradnik krok po kroku
Następny artykułNowoczesny komputer do gier sieciowych: niski input lag, wysoki FPS i stabilny ping
Marcin Michalski
Marcin Michalski – inżynier systemowy i administrator sieci z kilkunastoletnim doświadczeniem w środowiskach korporacyjnych i projektach dla sektora MŚP. Na Pirat-Pirat.pl odpowiada głównie za treści dotyczące infrastruktury IT, bezpieczeństwa, VPN oraz praktycznych aspektów wdrażania nowych rozwiązań. W pracy stawia na testy w realistycznych scenariuszach, porównywanie konfiguracji i analizę kosztów utrzymania. Zanim poleci konkretne narzędzie, sprawdza je w praktyce i konfrontuje z dokumentacją producenta oraz niezależnymi źródłami. Ceni przejrzystość, dlatego w artykułach jasno oddziela fakty, własne doświadczenia i subiektywne wnioski.