Postupci detekcije i praćenja pokretnih objekata
primjenom dinamičkog računarskog vida

Ukratko Suradnici Opširnije Rezultati Reference



Opširnije o projektu


Posljednjih godina svjedoci smo sve većeg zanimanja za područje automatskog nadgledanja prostora (engl. surveillance) i praćenja objekata (engl. object tracking). Razlog je značajno povećanje mogućnosti računalne opreme, koje je dovelo do mogućnosti izvođenja vrlo složenih proračuna na stolnom računalu vrlo pristupačne cijene.

Mogućnosti primjene sustava za detekciju i praćenje objekata su raznolike i variraju od detekcije uljeza, praćenja prometa, analize kretanja sportaša ili pacijenata na terapiji, analize rada organa (npr. srca) na temelju medicinskih slika, praćenja i analize sportske igre, do vojnih primjena (praćenje i automatsko gađanje ciljeva).

Praćenje objekata u općenitom slučaju vrlo je zahtjevan problem. Međutim, korištenjem specifičnosti konkretne primjene, problem se može pojednostavniti, pa je moguće ostvariti sustav koji uspješno i učinkovito prati određenu vrstu objekata u nekom rasponu uvjeta osvjetljenja. Pritom je i postupak praćenja ovisan o specifičnim uvjetima. U okviru projekta razmatrane su različite vrste uvjeta u kojima se objekti prate.

  • Praćenje usamljenog objekta, objekt je kontrastan u odnosu na pozadinu, veličina i oblik objekta u slici se ne mijenja značajno;
  • Praćenje nekoliko objekata koji su kontrastni u odnosu na podlogu. Broj objekata se ne mijenja tijekom praćenja.
  • Praćenje objekata koji prolaze kroz scenu. Objekti su različitih boja, oblika i veličina.


Praćenje jednog kontrastnog objekta

Ukoliko je zadatak praćenje jednog objekta koji se kreće u sceni, a on se može identificirati nekim postupkom statičke segmentacije, samo praćenje se svodi na povezivanje težišta objekta pronađenog u svakoj slici. Međutim, problem segmentacije pojedinačne slike je sam za sebe u općenitom slučaju vrlo složen. Naime, u složenijim scenama teško je pronaći pravu interpretaciju, odnosno identificirati pojedine objekte. Tim se problemom danas bavi područje perceptualne organizacije. Cilj je kombinirati različite značajke niske razine u slici (vrhove, rubove, područja slične boje i teksture) kako bi se dobila percepcijski opravdana područja u slici. To područje istraživanja je vrlo aktivno.

U nekim primjenama moguće je ostvariti dobar kontrast između objekta i pozadine, pa se segmentacija slike može temeljiti na usporedbi svjetlosnog intenziteta pojedine točke u slici s unaprijed definiranim pragom. Primjer takve specifične primjene je vizualno praćenje i analiza kretanja laboratorijske životinje u farmakološkim ili biomedicinskim istraživanjima. U takvom se slučaju kontrast postiže postavljanjem odgovarajuće podloge ispod prozirnog kaveza sa životinjama. Sličan se pristup može upotrijebiti i za praćenje jednog zračnog ili morskog cilja ukoliko se kreće ispred jednostavne pozadine. Ako je pozadina teksturirana i ne značajno različite boje od cilja, segmentacija je značajno otežana. U takvom je slučaju nužna uporaba postupaka segmentacije na temelju promjena u slici koje se događaju uslijed kretanja objekta. No, takav način segmentacije ne uočava objekte koji se ne kreću. Stoga je dobro kombinirati različite pristupe segmentaciji i koristiti dodatna specifična znanja raspoloživa za pojedinu primjenu. Primjerice, ako su objekti koji se prate prepoznatljive boje, moguće je koristiti segmentaciju na temelju boje.

animated gif animated gif animated gif
Primjer. Zahvaljujući dobrom kontrastu objekta (model automobila), moguće je praćenje na temelju segmentacije svake ulazne slike usporedbom sive razine pojedinih točaka s pragom. Rezultat praćenja prikazan je kao crvena kontura.


Praćenje unaprijed određenog broja objekta

Kada je u sceni prisutan veći broj objekata koji se kreću, problem postaje složeniji. Uz pretpostavku da je moguće uspješno segmentirati sliku, tj. odvojiti područja koja pripadaju objektima od područja pozadine, praćenje se može temeljiti ne određivanju podudaranja objekata u susjednim slikama. Ako odredimo koji objekt u tekućoj slici odgovara pojedinom objektu iz prethodne slike, postižemo praćenje objekata. Postupak podudaranja temelji se na minimizaciji ukupnog prevaljenog puta svih objekata između dvije susjedne slike. Postupak se može olakšati (i poboljšati rezultati praćenja) ako je broj objekata u sceni poznat i stalan. Ta informacija pomaže u otklanjanju pojave prekobrojnih "objekata" nastalih dijeljenjem područja koja pripadaju pojedinim objektima uslijed šuma. Također, olakšava se rješavanje problema spajanja područja uslijed dodira ili zakrivanja objekata u sceni. Primjer primjene je praćenje laboratorijskih životinja tijekom farmakoloških ispitivanja. Životinje se nalaze u kavezu tijekom cijelog eksperimenta i ne mogu napustiti kavez, niti im se može povećati broj.

Nažalost, ovakav postupak nije u stanju pouzdano pratiti objekte čije se projekcije u slici dodiruju ili zakrivaju. Ako su objekti slične boje, segmentacijom slike dobiva se jedno zajedničko područje, koje je teško razdvojiti. Stoga je razvijen postupak praćenja temeljen na aktivnim modelima konture. Pomak praćenog objekta od između dvije susjedne slike određuje se na temelju procjene optičkog toka, koja se obavlja u točkama praćene konture. Nakon pomaka konturnog modela koji predstavlja praćeni objekt, obavlja se iterativno prilagođavanje konturnog modela trenutnoj slici. Prilagođavanje konturnog modela temelji se na tzv. slikovnoj energiji, koja nastoji privući točke konturnog modela rubovima u slici, pritom čuvajući glatkoću i kontinuitet konturnog modela. Očuvanje glatkoće i kontinuiteta konturnog modela osigurava se tzv. unutrašnjim energijama. Problem praćenja se svodi na minimizaciju energija praćenih kontura. U svakoj slici se kao polazna aktivna kontura pojedinog objekta koristi model koji je dobiven konvergencijom iterativnog postupka u prethodnoj slici, pomaknut na temelju vektora optičkog toka. Praćenje tijekom kontakta objekata u ovakvom sustavu omogućeno je svojstvom lokalnosti optičkog toka, te globalnom reprezentacijom konture objekta. Na taj način se kontura kao cjelina pomiče od slike do slike, na temelju lokalnih procjena optičkog toka. Informacija o pomaku se u područjima objekta koja nisu zakrivena može pouzdano odrediti, dok ta informacija u područjima zakrivenosti ili dodira nije raspoloživa. Na temelju modela konture informacija koja nedostaje nadomještava se na temelju informacije koja se može odrediti. Jasno je da postupak može funkcionirati samo ako su područja zakrivenosti konture mala u odnosu na duljinu konture.

animated gif
Primjer. Postupak praćenja u kojem su objekti predstavljeni aktivnim konturnim modelima.


Problem inicijalizacije praćenja

U opisanom postupku praćenja na temelju aktivnih konturnih modela i optičkog toka pretpostavlja se da u početnom trenutku praćenja imamo poznate početne konturne modele objekata koje pratimo. Međutim, tu je inicijalizaciju potrebno na neki način obaviti. Štoviše, u nekom trenutku praćenja može doći do pogreške, pa će biti potrebno tu pogrešku uočiti i obaviti reinicijalizaciju nekog konturnog modela. U nekim primjenama moguće je od korisnika zahtijevati da ručno podesi početni model kojim se nakon toga objekt autonomno prati. Primjer je analiza medicinskih slika gdje liječnik-ekspert označava područje koje ga zanima, a zatim se to područje automatski prati i analizira kroz sekvencu slika. U općenitom slučaju želimo postići autonomnost sustava praćenja, što zahtijeva automatsku inicijalizaciju modela kojima se objekti prate.

U postupku automatske inicijalizacije prikladno je koristiti specifična znanja vezana za konkretnu aplikaciju. Primjerice, ograničenje o "zatvorenom svijetu" u slučaju da se broj objekata u sceni ne mijenja, može biti vrlo korisno za inicijalizaciju konturnih modela kojima se prate objekti. Specifična znanja omogućavaju i oblikovanje postupka provjere ispravnosti rezultata praćenja na temelju njihove konzistentnosti. U slučaju kontrastnih objekata može se koristiti statička segmentacija svake ulazne slike dobivena usporedbom sive razine pojedinih točaka s pragom. Kada su objekti koje treba pratiti prepoznatljive boje, statička segmentacija (pronalaženje objekata u pojedinoj slici) može se temeljiti na analizi boje točaka u slici i njihovom grupiranju. Inicijalizacija konturnih modela kojima se prate objekti u takvom se slučaju obavlja na temelju statičke segmentacije.

Često statička segmentacija slike ne daje dovoljno dobre rezultate. Primjerice, ako se objekt kreće ispred teksturirane pozadine u odnosu na koju nije dovoljno kontrastan, odnosno boja mu se ne razlikuje značajno od boje pozadine. U takvom je slučaju puno prikladnije koristiti dinamičku segmentaciju, tj. pronalaženje nakupina točaka u slici čije su značajke kretanja međusobno slične. Najjednostavniji oblik dinamičke segmentacije postiže se na temelju slika razlika. Usporedbom vrijednosti svjetlosnih intenziteta odgovarajućih točaka u dvije susjedne slike i pronalaženjem nakupina točaka kod kojih su te razlike (promjene između dvije susjedne slike) značajne, dobivaju se područja u slici koja odgovaraju kretanju objekata. Na taj je način moguće usmjeriti pažnju na objekte koji se kreću. Ovaj način segmentacije omogućava samo pronalaženje objekata čiji su pokreti između dvije susjedne slike značajni, dok statični ili spori objekti ostaju nezamijećeni. Stoga je potrebno dinamičku segmentaciju slike kombinirati sa statičkom.


Segmentacija slike na temelju oduzimanja pozadine kao temelj za praćenje objekata

Kada je kamera kojom se prate objekti statična (učvršćena) ili se pomiče sporo, može se primijeniti postupak oduzimanja pozadine (engl. background subtraction). Ideja je da se izgradi model pozadine, s kojim se zatim uspoređuje svaka sljedeća slika. Ako dođe do promjene u slici, obično to znači da je u kadar ušao neki objekt, a njegov položaj se može odrediti pronalaženjem nakupina slikovnih elemenata u kojima je došlo do promjene. Naravno, promjene se mogu dogoditi i uslijed šuma u slici ili promjene osvjetljenja u sceni. Očekujemo da područja promjene uslijed šuma budu malena, pa ih je analizom veličine moguće odbaciti. Promjene osvijetljenja, kao i promjene strukture pozadine (primjerice zbog pomaka nekih pozadinskih objekata -- npr. pomicanja lišća na stablu) mogu se uključiti u model pozadine tako da se on dinamički prilagođava.
Postupak detekcije pokretnih objekata na temelju oduzimanja pozadine posebno je prikladan za primjenu u nadzoru prostora. Ulazak objekta u vidno polje kamere se može učinkovito detektirati i pokrenuti predviđene sigurnosne mjere (uključivanje alarma, obavještavanje čuvara i usmjeravanje/zumiranje njegovog prikaznog uređaja na objekt-uljeza i slično). Na slici dolje desno prikazan je rezultat segmentacije slike na temelju oduzimanja pozadine. Model pozadine je u ovom slučaju izgrađen na temelju prvih nekoliko slika, u kojima nema pokretnih objekata. Vidi se da se pokretni objekti učinkovito detektiraju (njihova područja su u slici omeđena crveno).

animated gif animated gif
Primjeri. Segmentacija slike, koja će se koristi za praćenje objekata, može se temeljiti na slici razlika (lijevo) ili na oduzimanju pozadine (desno).


Složeni sustav za praćenje objekata

Na temelju prikazanih tehnika i postupaka moguće je izgraditi složeni sustav za praćenje objekata u kojemu se kombiniraju informacije iz različitih izvora: statička segmentacija na temelju usporedbe s pragom u scenama u kojima je to prikladno, statička segmentacija slike postupcima za pronalaženje rubova u slici, informacija dobivena segmentacijom na područja sličnih statističkih svojstava (tekstura), dinamička segmentacija na temelju slika razlika i oduzimanja pozadine, dinamička segmentacija na temelju optičkog toka. Naravno, sustav bi uključivao i specifična znanja, koja bi se proširivala i dograđivala učenjem. Takav sustav nije implementiran u okviru ovog projekta, a njegova bi složenost i računska zahtijevnost svakako daleko nadilazila mogućnosti rada u stvarnom vremenu (na današnjim računalima). Stoga smo se u ovom projektu ograničili na manje zahtjevna rješenja, prilagođena specifičnim područjima primjene, ali koja učinkovito mogu poslužiti praćenju objekata. Arhitektura složenog sustava za vizualno praćenje objekata prikazana je na sljedećoj slici.


Slika. Arhitektura složenog sustava za praćenje objekata.

Rezultati jednogodišnjeg projekta primjene informacijske tehnologije -- Ministarstvo znanosti i tehnologije republike Hrvatske

Copyright(c) Zavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave
Fakultet elektrotehnike i računarstva
Sveučilište u Zagrebu

Zoran Kalafatić
Zadnja promjena: 14. 11. 2002.