Detecja i śledzenie ruchomych oietów w orazie Piotr Dala Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów
Wprowadzenie Usuwanie (odejmowanie) tła i śledzenie oietów są pierwszymi etapami w więszości apliacji z dziedziny przetwarzania orazów dotyczących np. nadzoru i monitoringu lu indesowania danych multimedialnych Celem usuwania tła jest wyrycie ruchomych oietów pierwszoplanowych w analizowanych scenach Celem śledzenia oietów jest zachowanie ciągłości analizy ich ruchu w czasie ich oecności w polu widzenia amery Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów 2
Wyrywanie oietów ruchomych Dwie główne grupy metod detecji oietów ruchomych (usuwania tła): Przepływ optyczny (ang. optical flow) Odejmowanie tła (ang. acground sutraction) Przepływ optyczny Ziór translacji (w postaci pola wetorowego), tóre przeształcają dany oraz w sewencji w następny oraz w sewencji I t x, y I x Ox, y,, y Ox, y, t 3
Przepływ optyczny Wyróżnia się: metody gradientowe azują na analizie pochodnych (przestrzennych i czasowych) intensywności orazu metody w dziedzinie częstotliwości oparte na filtrowaniu informacji orazowej w dziedzinie częstotliwości metody orelacyjne azujące na odpowiedniości oszarów orazów Metody ardzo złożone oliczeniowo Przepływ optyczny - przyład 4
Odejmowanie tła W ogólności polega na: Wyznaczeniu orazu referencyjnego Oliczeniu różnicy między ieżącą ramą sygnału, a orazem referencyjnym Wyznaczeniu masi inarnej oznaczającej, tóre pisele orazu należą do ruchomych oietów Odejmowanie tła Najprostsza metoda wyznaczenia orazu referencyjnego pojedyncza rama orazu ez ruchomych oietów trudna do uzysania w pratyce ra adaptacji Najprostsza metoda dająca się zastosować pratycznie: uśrednianie wyładnicze M x, y M x, y Ix y t t, Algorytm odejmowania tła musi yć adaptacyjny i nieustannie uatualniać model tła 5
Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów Modelowanie tła Każdy pisel orazu jest modelowany jao suma ważonych funcji Gaussowsich (ang. Gaussian mixture) Gęstość prawdopodoieństwa rozładu normalnego: x, μ, Σ t 2.5D Σ e.5 T x μ Σ x μ t t x t wartość (RGB) pisela w czasie t D = 3 ilość elementów opisujących olor pisela m i S wetor wartości średnich i macierz owariancji rozładu 6
Modelowanie tła Każdy pisel orazu jest modelowany jao suma ważonych funcji Gaussowsich (ang. Gaussian mixture) Prawdopodoieństwo, że w czasie t pisel przyjmie wartość x t jest dane wzorem: p K i i x x, μ, Σ i t w t i gęstość prawdopodoieństwa rozładu normalnego w t i waga rozładu (ich suma = ) m t i i S t i wetor wartości średnich i macierz owariancji K ilość rozładów opisujących pisel (zwyle 3 5) t t t Modelowanie tła W celu zmniejszenia złożoności oliczeniowej założono niezależność statystyczną wartości poszczególnych sładowych oloru: S i R i 2 2 G i 2 B i 7
Modelowanie tła Każdy pisel orazu opisany jest za pomocą K 7 parametrów (waga w, wartości średnie m sładowych oloru RGB oraz ich wariancje 2 ) Wielość modelu tła (K = 5, float = 32 it): dla PAL (74x576): 54 MB dla Full HD (92x8): 277 MB Wymagana przepustowość pamięci (fps=5) co najmniej: dla PAL (74x576): 8 MB/s dla Full HD (92x8): 455 MB/s Modelowanie tła Im częściej dany pisel przyjmuje oreślony olor, tym więsza szansa, że olor ten odpowiada olorowi tła Rozład najlepiej opisujący olor tła charateryzuje się dużą wagą i małymi wariancjami, a wartości średnie rozładu dążą do rzeczywistego oloru tła 8
Modelowanie tła Parametry opisujące pisele są uatualniane wraz z ażdą nową ramą orazu wejściowego Dla danego pisela sprawdzane jest, tóry rozład pasuje do ieżącej wartości pisela Rozłady są sprawdzane w olejności malejącej wartości współczynnia r aż do znalezienia pierwszego pasującego rozładu w Modelowanie tła Bieżący olor pisela pasuje do rozładu, jeśli ażda jego sładowa RGB leży w granicach ±2,5 odchyleń standardowych od wartości średniej W przypadu, gdy żaden rozład nie pasuje do ieżącego oloru, rozład o najmniejszej wartości współczynnia r jest zastępowany nowym o dużej wariancji, małej wadze i wartości średniej równej ieżącemu olorowi 9
Modelowanie tła Wagi wszystich rozładów dla danego pisela są uatualniane wg wzoru, a następnie normalizowane: w t wt M t M t = dla pasującego rozładu, a dla pozostałych współczynni szyości adaptacji (od do ) Wartości średnie i wariancje pasującego rozładu dla ażdej sładowej RGB uatualniane są zgodnie z wyrażeniami: μ t μt xt 2 2 2 t t xt mt Modelowanie tła Przyjmuje się, że model tła dla danego pisela jest tworzony przez pierwszych D rozładów posortowanych wg malejącej wartości współczynnia r D jest wyznaczane wg wzoru: D arg min d d i w t i T Próg T wyznacza, jaa część rozładów modelujących olor pisela zostanie uznana za ieżący model tła
Modelowanie tła Jeśli T jest małe, model tła jest zwyle jednomodowy Wielomodowy rozład tła oznacza, że może zawierać on ila różnych olorów i w ten sposó prawidłowo reagować na cyliczne zmiany w tle Jeśli ieżący olor pisela nie pasuje do żadnej z pierwszych D dystryucji, to jest uznawany za oiet ruchomy Modelowanie tła Bieżąca rama Model tła rozład o najwięszej wadze CzasT CzasT + 3 minut
Modelowanie tła - wydajność Komputer Intel Xeon W353 @ 2,8GHz Oraz oryginalny i o zmniejszonej rozdzielczości Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów 2
Detecja cieni oietów Cień oietu jest oecny pratycznie zawsze i poruszając się razem z oietem jest lasyfiowany jao część tego oietu Wyrywanie cienia azuje na dwóch fatach: zacienione tło sceny posiada mniejszą jasność, ale pratycznie niezmienioną arwę testura zacienionego tła sceny pozostaje niezmienna Detecja cieni oietów Różnica w jasności pomiędzy ieżącym piselem I a olorem opisanym rozładem E wynosi: arg min I E 2 Różnicę w olorze c wyznacza się z zależności: c I E Ponieważ założono, że sładowe oloru są niezależne, różnicę c wyznacza się oddzielnie dla ażdej sładowej RGB jao: c RGB I RGB E RGB 3
Detecja cieni oietów Sprawdzaniu pod ątem występowania cienia podlegają tylo te pisele, tóre zostały zawalifiowane jao należące do oietów ruchomych Jeśli różnica jasności T < <, i ażda różnica w olorze c RGB leży w granicach ±2,5 odchyleń standardowych przynajmniej jednego z D pierwszych rozładów tworzących model tła, to dany pisel jest uznawany za cień i lasyfiowany jao należący do tła T ogranicza liczę ciemnych piseli łędnie lasyfiowanych jao cień Detecja cieni oietów W dalszym etapie rane pod uwagę są tylo pisele zawalifiowane jao cień na podstawie porównania arwy i jasności Założenie o stałości testury Jao miarę testury wyorzystano operator Soela (gradient orazu w ierunu poziomym i pionowym) Jeśli różnica pomiędzy gradientem orazu w najliższym otoczeniu wyranego puntu a gradientem ieżącego modelu tła w tym samym otoczeniu jest więsza niż założony próg nie mamy do czynienia z cieniem 4
Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów Przetwarzanie mase inarnych W wyniu dotychczasowych operacji otrzymuje się masę inarną zawierającą pisele należące do wyrytych oietów ruchomych Celem przetwarzania morfologicznego i czasowego jest uzysanie rozdzielonych, jednolitych oszarów oznaczających ruchome oiety 5
Przetwarzanie mase inarnych Operacje morfologiczne: Usuwanie oietów (połączonych piseli) mających mniej niż oreśloną liczę piseli Jeśli pisel ma w swoim najliższym sąsiedztwie (3x3) przynajmniej 5 piseli o wartości, to przyjmuje wartość ; w przeciwnym wypadu Przetwarzanie mase inarnych Operacje morfologiczne c.d.: Zamyanie (dylatacja, a następnie erozja) dylatacja jeśli w najliższym sąsiedztwie pisela jest choć jeden pisel o wartości, to pisel ten też przyjmuje wartość erozja - jeśli w najliższym sąsiedztwie pisela jest choć jeden pisel o wartości, to pisel ten też przyjmuje wartość 6
Przetwarzanie mase inarnych Operacje morfologiczne c.d.: Wypełnianie dziur (oszarów o wartości, otoczonych jedynami ) Detecja ruchomych oietów Bieżąca rama Bezpośredni wyni odejmowania tła Po przetwarzaniu morfologicznym 7
Detecja oietów - przyłady Detecja oietów - przyłady Nagłe zmiany oświetlenia 8
Detecja oietów - przyłady Trudne waruni atmosferyczne Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów 9
Śledzenie ruchomych oietów Śledzenie oietów (ang. oject tracing) ma za zadanie zapewnienie ciągłości i jednoznaczności identyfiacji ażdego ruchomego oietu w orazie na cały czas jego oecności w strumieniu wizyjnym Oczeiwany efet działania algorytmu - ciągła trajetoria ruchu ażdego oietu pojawiającego się w scenie Metody śledzenia oietów Dwa rodzaje procesów sładających się na śledzenie oietów: reprezentacja i loalizacja oietów (ang. Target Representation and Localization) filtracja i asocjacja danych (ang. Filtering and Data Association) 2
Metody śledzenia oietów Reprezentacja i loalizacja oietów: stanowi podejście od szczegółu do ogółu zajmuje się opisem cech oietu i na tej podstawie loalizowaniem oietu w olejnych ramach musi soie radzić z możliwymi zmianami w wyglądzie oietów Metody śledzenia oietów Reprezentacja i loalizacja oietów - przyładowe realizacje: azujące na gradiencie i wyorzystujące ryterium orelacji stworzenie modelu oietu wyorzystującego niezmienne cechy strutury orazu oietu (np. olor, geometria) i informacje o jego ruchu użycie asady lasyfiatorów AdaBoost do śledzenia poszczególnych oietów; ażdemu wyrytemu oietowi jest przypisywany jeden trenowany w czasie rzeczywistym lasyfiator, tóry znajduje loalizację tego oietu w olejnych ramach 2
Metody śledzenia oietów Filtracja i asocjacja danych: stanowi podejście od ogółu do szczegółu zajmuje się dynamią ruchu oietów można ją w najardziej ogólny sposó zdefiniować wyorzystując podejście przestrzeni stanów w modelowaniu dynamicznych systemów dysretnoczasowych Metody śledzenia oietów Filtracja i asocjacja danych: oiet modelowany jest za pomocą sewencji stanów x,... tórych zmiany w czasie są oreślone przez dynamiczne równanie x f x, v z... Zmierzone dane są powiązane z odpowiadającymi im stanami równaniem pomiaru z h x, n W ogólności, f i h są nieliniowymi, zmiennymi w czasie funcjami odwzorowującymi rzeczywiste liczy na wetory Załada się, że ażda sewencja szumu jest niezależna i cechuje się identycznym rozładem v... n... 22
Metody śledzenia oietów Filtracja i asocjacja danych: celem śledzenia oietów jest oszacowanie stanu x z wyorzystaniem wszystich dotychczas zmierzonych wielości z : lu (równoważnie) oreślenie funcji gęstości prawdopodoieństwa p x z : Metody śledzenia oietów Filtracja i asocjacja danych przyładowe realizacje: filtr Kalmana (ang. Kalman Filter) gdy sewencje szumowe mają rozład normalny oraz funcje f i h są liniowe rozszerzony filtr Kalmana (ang. Extended Kalman Filter) gdy funcje f i h są nieliniowe ezśladowy filtr Kalmana (ang. Unscented Kalman Filter) może yć stosowany do modeli nieliniowych i nie-gausowsich 23
Metody śledzenia oietów Filtracja i asocjacja danych przyładowe realizacje: Uryte Modele Marowa (ang. Hidden Marov Models) gdy wyorzystywana przestrzeń stanów jest dysretna i słada się ze sończonej liczy stanów filtry cząsteczowe (ang. Particle Filters) azują na metodach całowania Monte Carlo Metody śledzenia oietów Sposó i stopień, w jai procesy reprezentacji i loalizacji oietów oraz filtracji i asocjacji danych są wyorzystywane w onretnej apliacji śledzenia oietów zależą od przeznaczenia danej apliacji oraz determinują suteczność jej działania Wymaga się, ay proces śledzenia oietów ył ja najmniej złożony oliczeniowo, ponieważ w systemach działających w czasie rzeczywistym zdecydowana część mocy oliczeniowej jest przeznaczona na inne zadania, z reguły wysoopoziomowe, taie ja identyfiacja oietów czy wyrywanie zdarzeń 24
Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów Filtr Kalmana Filtr Kalmana to algorytm reurencyjnego wyznaczania minimalno-wariancyjnej estymaty wetora stanu modelu liniowego, dysretnego uładu dynamicznego na podstawie pomiarów wyjścia tego uładu Przyjmuje się założenie, że zarówno pomiar, ja i proces przetwarzania wewnątrz uładu jest oarczony łędem o rozładzie gaussowsim Zalety: stosunowo łatwa implementacja, nisa złożoność oliczeniowa oraz dora suteczność działania 25
Filtr Kalmana n Pozwala na estymowanie stanu x R procesu dysretno-czasowego, tóry może yć opisany stochastycznym równaniem różnicowym: x Ax Bu w m Wyorzystuje wetor pomiarowy z R : z Hx v u opcjonalne wejście ontrolne w,v niezależne zmienne losowe reprezentujące odpowiednio szum przetwarzania i szum pomiarowy: w ~ N Q p v ~ N, R p, Filtr Kalmana x z Ax Hx Bu w v Macierz przejścia A o wymiarach n n wiąże stan procesu x w rou poprzednim ze stanem w rou ieżącym Macierz wejściowa B o wymiarach n wiąże opcjonalne wejście ontrolne ze stanem procesu x Macierz wyjściowa H o wymiarach m n wiąże stan procesu z ieżącym wetorem pomiarowym z 26
Filtr Kalmana Filtr Kalmana estymuje proces w oreślonym momencie czasu z wyorzystaniem zwrotnej informacji o ieżącym (i zaszumionym) wyniu pomiaru Równania filtru Kalmana dzielą się na: równania atualizacji czasu równania atualizacji pomiarów Filtr Kalmana Równania atualizacji czasu: doonują predycji stanu uładu w przód w celu otrzymania estymaty a priori xˆ stanu uładu w olejnym rou czasowym xˆ P P Axˆ AP Bu A T Q estymata a priori łędu owariancji P estymata a posteriori łędu owariancji 27
Filtr Kalmana Równania atualizacji pomiarów: są odpowiedzialne za sprzężenie zwrotne, tj. za włączenie nowych wyniów pomiarów do estymaty a priori stanu procesu w celu uzysania estymaty a posteriori xˆ K xˆ P H xˆ T K P I K H T HP H R z Hxˆ P K wzmocnienie filtru Kalmana (im więsze tym więszy wpływ wartości pomiarowych na estymatę stanu procesu) Plan prezentacji Wprowadzenie Metody wyrywania oietów ruchomych Podstawowe metody Modelowanie tła Usuwanie cienia Przetwarzanie morfologiczne Metody śledzenia ruchomych oietów Informacje ogólne Filtry Kalmana Zastosowanie filtrów Kalmana do śledzenia oietów 28
Śledzenie oietów za pomocą filtrów Kalmana Każdemu wyrytemu oietowi przypisywany jest oddzielny filtr Kalmana, zwany tracerem Ruchomy oiet reprezentowany jest przez prostoąt Dwa możliwe postacie wetora stanu filtru Kalmana: sześcioelementowy ośmioelementowy Wetor pomiarowy ma postać z 6 x 8 x x x x y y y w w w h h h T dx dx dy T dy dw dh T Śledzenie oietów za pomocą filtrów Kalmana Zachowanie filtru Kalmana z wetorem stanu x 8 (górny rząd) i x 6 (dolny rząd) 29
3 Śledzenie oietów za pomocą filtrów Kalmana Macierze przejścia A i H przedstawiają się następująco: Nie ma potrzey orzystania z wejść ontrolnych więc macierz B jest równa 6 8 A A 6 8 H H x Ax Hx z Śledzenie oietów za pomocą filtrów Kalmana Waruni początowe: nowemu oietowi przypisywany tracer z wetorem stanu: w następnym rou czasowym (ramce) uatualniany: T T h w y x x h w y x x ˆ ˆ 6 8 T T y y x x h w y x x h h w w y y x x h w y x x 6 8 ˆ ˆ ˆ P
Algorytm śledzenia oietów Dla ażdej rami orazu doonuje się: predycji w przód wetora stanu wszystich filtrów Kalmana przypisanych do istniejących oietów w celu otrzymania estymaty a priori położenia oietów w ieżącej ramce orazu Algorytm śledzenia oietów Dla ażdej rami orazu doonuje się: tworzenie inarnej macierz powiązań ażdej parze tracer-region przypisana jest wartość lu w zależności od tego, czy prostoąty otaczające region oraz pozycję oietu estymowaną przez tracer mają część wspólną 3
Algorytm śledzenia oietów Dla ażdej rami orazu doonuje się: ustalania poprawnych relacji pomiędzy wyrytymi oszarami należącymi do oietów ruchomych w ieżącej ramce a rzeczywistymi, ruchomymi oietami reprezentowanymi przez tracery Algorytm śledzenia oietów Dla ażdej rami orazu doonuje się: orecji wetorów stanu ażdego oietu w oparciu o parametry odpowiednich oszarów należących do wyrytych ruchomych oietów 32
Relacje między regionami i tracerami Typ relacji Region ez żadnego tracera Tracer ez żadnego regionu Jeden tracer jeden region Acja Tworzony jest nowy tracer w oparciu o parametry regionu Przeprowadzana jest tylo predycja stanu tracera; jeśli tracer nie zostanie powiązany z żadnym regionem przez pewien czas, jest usuwany Tracer jest uatualniany w oparciu o parametry regionu Jeden tracer wiele regionów Wiele tracerów jeden region Wiele tracerów wiele regionów Tracer jest uatualniany w oparciu o parametry oszaru porywającego wszystie regiony Każdy tracer jest uatualniany w oparciu o parametry regionu Iteracyjna analiza grup region-tracer i uatualnianie tracerów za pomocą najardziej pasujących regionów, znajdowanych na podstawie porównania ich wyglądu Śledzenie oietów - przyłady Różne waruni oświetleniowe 33
Śledzenie oietów - przyłady Rozwiązywanie onflitów Śledzenie oietów - przyłady Rozwiązywanie onflitów 34