Nie tylko kamery. Tematyka i wyniki badań projektu COPCAMS
![](https://aspolska.pl/wp-content/uploads/2017/04/grafika-18.jpg)
dr inż. Piotr Szczuko
Wydział Elektroniki, Telekomunikacji i Informatyki, Katedra Systemów Multimedialnych,
Politechnika Gdańska
W latach 2013–2016 Politechnika Gdańska uczestniczyła w projekcie współfinansowanym przez Narodowe Centrum Badań i Rozwoju oraz inicjatywę unijną ARTEMIS.
Projekt COPCAMS (Cognitive and Perceptive CAMeraS), w polskiej wersji „Kamery umożliwiające kontekstowe rozumienie pozyskiwanego obrazu”, dotyczył opracowania i przetestowania nowych inteligentnych rozwiązań dla kamer przemysłowych, systemów dozoru wizyjnego, diagnostyki wizyjnej na liniach produkcyjnych i innych dziedzin zastosowania analityki wizyjnej. Założono wytworzenie i oprogramowanie nowych typów układów elektronicznych, wielordzeniowych jednostek obliczeniowych zdolnych do wydajnych obliczeń przy zmniejszonym zużyciu energii w stosunku do typowych procesorów CPU.
W projekcie COPCAMS brały udział uczelnie techniczne i instytuty badawcze z Francji, Hiszpanii, Turcji, Danii, Słowenii, Wielkiej Brytanii i Polski, łącznie było 25 partnerów.
Dwa zespoły naukowców z Wydziału Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej, z Katedry Inżynierii Mikrofalowej i Antenowej oraz Katedry Systemów Multimedialnych już przed rozpoczęciem projektu były zaangażowane w prace koncepcyjne, formułowanie założeń projektu, a po uzyskaniu pozytywnej oceny i finansowania, w kolejnych etapach – dobór i testowanie układów, wytwarzanie nowoczesnych elementów elektronicznych, opracowywanie oprogramowania oraz testowanie prototypów w warunkach rzeczywistych.
Politechnika Gdańska koordynowała pakiet zadań „Zaawansowane koncepcje dla systemów kamer” (Advanced Concepts for Cognitive & Perceptive Video Systems) poświęcony nowym metodom przetwarzania obrazów wideo i danych wielomodalnych, tj. pochodzących z dodatkowych czujników różnego typu oraz kompresji sygnałów wizyjnych i transmisji danych.
Autorskie koncepcje i prototypy
Opisywane prace zostały zrealizowane przez zespół Katedry Systemów Multimedialnych (KSM). Opracowano autorskie koncepcje i wykonano prototypy, które zaowocowały trzema patentami.
Radar akustyczny zintegrowany z kamerą obrotową
Pierwszym z innowacyjnych rozwiązań jest radar akustyczny zintegrowany z kamerą obrotową. Jego zadaniem jest analizowanie na żywo danych o wektorowym gradiencie ciśnienia akustycznego, z których można pozyskać informacje o położeniu źródeł dźwięku w całej przestrzeni wokół kamery.
Zastosowanie specjalizowanego sensora akustycznego opracowanego przez zespół naukowców KSM (fot. 1) umożliwia analizowanie kierunkowości nadchodzących dźwięków z dużą rozdzielczością kątową i natychmiast, bez konieczności przestrajania czy obracania sensora.
![](http://aspolska.pl/wp-content/uploads/2017/04/copcams-artykuł-do-systemy-alarmowe-1-300x284.jpg)
W odróżnieniu od stosowanych od wielu lat macierzy mikrofonów z kształtowaną wiązką (beamforming) lub mikrofonów kierunkowych obsługa tego sensora jest łatwa i wyróżnia się bardzo małym rozmiarem: czujnik 5 x 5 x 5 mm i dodatkowe elementy elektroniczne wielkości karty kredytowej, grubości 10 mm.
Odpowiednie oprogramowanie do detekcji i lokalizacji źródeł dźwięków istotnych z punktu widzenia bezpieczeństwa jest w stanie wykryć i skierować obrotową kamerę w miejsce krzyku, wybuchu, wystrzału czy stłuczonej szyby. Algorytm klasyfikacji źródeł dźwięków został „wytrenowany” rzeczywistymi nagraniami i rozróżnia przykładowe ich klasy, nie reagując na dźwięki typowe, np. hałas uliczny i rozmowy.
Liczba zdarzeń analizowanych i wykrywanych jednocześnie nie jest ograniczona, a od operatora zależy, w jaki sposób zadziała oprogramowanie sterujące, np. czy ustawi kamerę na najbliższe źródło, czy na najgłośniejsze, czy wyższy priorytet ma mieć krzyk lub wystrzał itp. Ponadto informacje z jednego sensora mogą być użyte do pozycjonowania kilku kamer jednocześnie, np. każdej na inne źródło.
Rozwiązanie było testowane w warunkach rzeczywistych w pobliżu ruchliwej ulicy w Gdańsku oraz w specjalnym środowisku akustycznej komory bezechowej KSM. W wyniku badań potwierdzono wysoką skuteczność i precyzję określania kierunku, z którego dochodzi dźwięk. Dodatkową zaletą urządzenia jest brak konieczności rejestracji próbek dźwięku, gdyż analizuje ono tylko kierunki i na bieżąco przekazuje wyniki końcowe (rozpoznane typy dźwięków i lokalizacje źródeł) do modułu sterowania kamerą PTZ.
Kierunkowa antena wielosektorowa
Drugim kluczowym autorskim opracowaniem jest kierunkowa antena wielosektorowa do wykrywania i lokalizacji aktywnych znaczników radiowych wykonanych w technologii RFID. Typowo RFID w wersji pasywnej, tj. bez wbudowanej baterii, są stosowane do ochrony dóbr i towarów w sklepach. Wykrycie kradzieży jest możliwe tylko w momencie przechodzenia przez wąskie bramki stanowiące anteny nadawczo-odbiorcze, indukujące zasilanie w takim układzie i stwierdzające jego obecność. Nowe opracowanie z aktywnymi znacznikami i anteną kierunkową umożliwia ciągłe monitorowanie obecności i lokalizowanie chronionego przedmiotu oraz automatyczne pozycjonowanie na niego kamery PTZ.
W połączeniu z typowymi systemami ochrony obiektów, np. z kartami identyfikacyjnymi, antena i znaczniki zwiększają skalę zastosowań tego rozwiązania: staje się możliwe zarządzanie poziomami uprawnień do wykorzystania kluczowych dóbr w firmie, m.in. szybkie lokalizowanie przedmiotów, wykrywanie przeniesienia urządzenia przez osobę o niewłaściwych uprawnieniach, przypisanie automatycznie chronionego wyposażenia do osoby, która logowała się kartą identyfikacyjną itd.
Prace programistyczne
W projekcie skupiono się na krytycznej analizie dotychczasowych, jednowątkowych algorytmów przesyłania obrazu przeznaczonych na procesory CPU. Miało to na celu zidentyfikowanie możliwości poprawy działania tych metod poprzez wykonanie ich wersji przeznaczonych na platformy wieloprocesorowe, charakteryzujące się dużymi możliwościami zrównoleglenia obliczeń. Przykładowo w ostatnich latach dynamicznie rozwijają się platformy programistyczne CUDA i OpenCL umożliwiające uruchamianie różnorodnych obliczeń w trybie równoległym na procesorach kart graficznych (technika nazywana GPGPU – General-Purpose Computing on Graphics Processing Units, obliczenia ogólnego przeznaczenia na procesorach graficznych). Układ GPGPU zwykle ma setki, a nawet tysiące rdzeni, co skutkuje przyspieszeniem obliczeń i zmniejszeniem poboru energii w porównaniu do procesora CPU wykonującego to samo zadanie.
W projekcie COPCAMS zespół KSM wykorzystywał dostępne na rynku zestawy uruchomieniowe układów nVidia Jetson TK1 i nowszy TX1, akcelerator obliczeń Keystone II firmy Texas Instruments, prototypowy akcelerator STHORM firmy STMicroelectronics wykonany specjalnie na potrzeby projektu COPCAMS oraz układy GPGPU kilku kart graficznych.
Rosnąca popularność wielu testowanych układów przełoży się na ich dalszą
miniaturyzację i upowszechnienie. Przewiduje się wykorzystanie tego wydajnego rozwiązania w kamerach monitoringu wizyjnego zgodnie z koncepcją Edge Computing, czyli w odległych punktach w urządzeniach końcowych, bez konieczności przesyłania dużych ilości danych, strumieni wideo lub innych do centralnego komputera.
Szczególnie interesujące i potrzebne jest usprawnienie metod wykrywania ruchu i śledzenia obiektów. Algorytmy stosowane obecnie w niektórych kamerach są uruchamiane na mało wydajnych procesorach, w związku z czym nie mogą być zbyt złożone i w konsekwencji reagują często na ruch w niepożądany sposób, np. falowanie liści, wody, odbicia, uniemożliwiając stosowanie w praktyce (zbyt duża liczba fałszywych alarmów). Algorytmy działające skuteczniej wymagają szybszych obliczeń. Przykładowo w algorytmach badanych i optymalizowanych przez zespół KSM obiekty ruchome są wykrywane na zasadzie statystycznego modelowania tła i wyznaczania różnicy między aktualną klatką z kamery a tłem, następnie filtrowanie obiektów o właściwym rozmiarze, śledzenie ciągłości ich ruchu.
Elementarną operacją wykonywaną na każdym pikselu obrazu jest modelowanie tła w taki sposób, aby adaptować się do powolnych zmian w obrazie (np. zachmurzenie zmieni jasność i kolorystykę całego kadru i nie może być interpretowane jako ruch) oraz szybkich cyklicznych zmian (np. ruch listowia na tle nieba powoduje naprzemienne zmiany koloru z zielonego na niebieski i oba te kolory są tłem, a nie pierwszoplanowym obiektem ruchomym). Dla klatki wideo o rozmiarze 1 Mpix konieczne jest obliczanie i aktualizowanie 24 razy na sekundę miliona pikseli w modelu tła. Operacja ta jest najbardziej wymagająca obliczeniowo. Jej przyspieszenie i przeniesienie na układy akceleracji okazało się najbardziej korzystne.
Podobnie bardzo istotne i korzystne było zoptymalizowanie i zrównoleglenie metody analizy przepływu optycznego w strumieniu wideo (Optical Flow). Algorytm identyfikuje każdy piksel w następujących po sobie klatkach wideo i określa, czy się przemieścił, w jakim kierunku i jak daleko. W tym celu odpowiednimi deskryptorami opisuje się cechy wizualne danego piksela i jego najbliższego otoczenia, w kolejnej klatce obrazu poszukuje się najbardziej podobnego wycinka obrazu. Różnica w położeniach wzorca i nowego wycinka to wektor przepływu. Dla całej klatki liczone są miliony takich porównań, a z puli wektorów przepływu są wybierane te o wspólnym kierunku i długości, z których odczytuje się reprezentację ruchu dużego obiektu pokrywającego wiele sąsiadujących ze sobą pikseli.
Metoda przepływu została wykorzystana w projekcie do algorytmu tzw. wirtualnej bramki, zliczającej liczbę osób w bardzo dużych grupach i w tłumie (fot. 2). Ponadto z powodzeniem zastosowano ją do analizy obrazu z kamery ruchomej umieszczonej na pokładzie lecącego drona. Drgania i ciągły ruch kamery nie pozwalają stosować modelowania tła opisanego wcześniej, ale do wykrywania i śledzenia obiektów ruchomych przepływ optyczny nadaje się z powodzeniem.
![](http://aspolska.pl/wp-content/uploads/2017/04/copcams-artykuł-do-systemy-alarmowe-2.jpg)
Rozwiązania zostały przetestowane w warunkach rzeczywistych w trzech scenariuszach:
• nadzór rozległych terenów za pomocą współpracujących ze sobą kamer obrotowych zmiennoogniskowych i szerokokątnych,
• zautomatyzowana linia produkcyjna wykorzystująca analitykę wideo do oceny poprawności wykonania elementów oraz lokalizację i identyfikację RFID do zarządzania kluczowymi urządzeniami i narzędziami w hali produkcyjnej,
• monitoring otoczenia i wnętrza budynków wykorzystujący kamery, sensory akustyczne do lokalizowania źródeł dźwięków znamionujących zagrożenia, a także lokalizację i identyfikację RFID do ochrony wyposażenia.
W praktyce zweryfikowano korzyści ze stosowania dedykowanych platform obliczeniowych i wykorzystania zrównoleglonych wersji najbardziej złożonych algorytmów. Zanotowano wysoce zadowalające wartości oszczędności całkowitej energii oraz energii zużywanej w trakcie wykonywania elementarnych zadań. Przykładowo analiza jednej klatki wideo metodą przepływu optycznego na CPU odbywa się w 0,2 s i przy zastosowaniu procesora 110 W na jedną klatkę zużywa się ponad 6 mWh energii, natomiast GPU o mocy 220 W realizuje obliczenia około pięciokrotnie szybciej i zużywa połowę tej energii, tj. 3 mWh.
Wśród prac naukowych partnerów z pozostałych krajów szczególnie wyróżniały się:
• usprawnienie algorytmów kalibracji kamer i wyznaczania głębi 3D dla stereopar,
• optymalizacja wymiany danych w sieciach z wieloma klientami, kamerami i odbiorcami,
• przyspieszenie działania algorytmów detekcji ruchu w nagraniach archiwalnych (analiza w czasie 35 razy szybszym od rzeczywistego, 1 doba nagrania w 40 minut),
• połączenie możliwości monitorowania akustycznego i radiowego z wizyjnym w celu poprawy możliwości skutecznego oraz precyzyjnego wykrywania
i śledzenia zdarzeń istotnych z punktu
widzenia bezpieczeństwa,
• rozwinięcie metod współpracy między algorytmami sterującymi kamer szerokokątnych i kamer obrotowych w celu nadzoru rozległego terenu,
• usprawnienie metod poprawy czytelności obrazu w przypadku zamglenia i niedoświetlenia,
• stworzenie wydajnych i intuicyjnych środowisk programistycznych dla producentów kamer, układów obliczeniowych i innych podzespołów.