Visió per computador per a la detecció de cercles

El seguiment (tracking) d’objectes en un vídeo és un problema comú en la visió per computador. Alguns mètodes es basen en la cerca de keypoints, que posteriorment s’acaren amb les següents imatges.

En aquest post es descriu un mètode basat en la identificació d’objectes amb formes simples, en particular cercles, per a realitzar un tracking de manera robusta (malgrat el moviment o el canvi de grandària de l’objecte) per a tots els frames del vídeo on aquest objecte aparegui. A més, el mètode permet el tracking de més d’un cercle simultàniament (multi-tracking).

El cas d’estudi que es presenta aquí és el d’una escena estàtica, amb una cambra mòbil, però poden dissenyar-se mètodes similars per a cambres estàtiques i objectes mòbils. Aquest mètode es divideix en dues parts: la identificació de cercles i el tracking d’objectes.

Detecció de cercles basat en visió per computador

Els cercles es detecten frame a frame, sense cap coneixement previ dels cercles detectats anteriorment. És possible que hi hagi més d’un objecte circular en el mateix frame, així que el detector de cercles ha de ser capaç de retornar més d’un cercle, si aquest és el cas. Per tant, per a cada frame es proporciona un conjunt de cercles candidats a ser objectes circulars en la imatge.

Primer es processa el frame perquè la cerca de cercles resulti més fàcil. El pas més important en el pre-processament és l’obtenció de les vores dels objectes en la imatge. A partir d’aquestes vores, es busquen els cercles i només els millors són proporcionats al tracking.

En aquest punt, alguns cercles podrien no pertànyer a algun objecte circular, de manera que és necessari un post-processat. Els cercles poden filtrar-se sobre la base de coneixements previs sobre els objectes, per exemple establint límits en la grandària o la posició. També és possible comprovar si els cercles intersectan els uns amb els altres, o si es troben massa a prop o lluny els uns dels altres.

Detecció de cercles basat en visió per computador - Grey
Detecció de cercles basat en visió per computador - Sobel
Detecció de cercles basat en visió per computador
Imatge en escala de grises, bordes i cercles detectats (vermell). Els cercles blau i verd són els tracks.

Per a aquesta part de detecció, és tan important detectar els cercles quan apareixen en la imatge com no detectar-los quan no hi ha objectes circulars. Per tant, només els millors cercles, si hi ha algun bo, es proporcionen a la part de tracking.

(Multi) tracking de cercles

L’objectiu del multi-tracking és obtenir una estimació de la posició (centre) i grandària (ràdio) de cercles al llarg de tots els frames on l’objecte és visible, simultàniament per a tots els objectes. Aquesta estimació ha de calcular-se fins i tot si no hi ha un cercle detectat per a un objecte en un frame (o varis frames consecutius).

Per a aquells casos en els quals no existeixi detecció, s’ha desenvolupat un model dinàmic amb el qual poder predir la grandària i posició dels cercles en frames consecutius, coneixent el moviment de la càmera (en el cas d’escenes estàtiques).

A mesura que es detecten nous cercles com a candidats a objectes, aquests són descartats, associats a un track actual, o usats com a començament d’un nou track. S’ha provat que el tracking és robust contra la detecció de falsos objectes.

Els cercles es descarten si no són prou similars ni diferents dels actualment seguits. Un cercle s’estableix com una nova observació d’un objecte si és prou similar a la predicció d’aquest objecte.

Finalment, un nou objecte ha estat detectat si el cercle observat és prou diferent de qualsevol altre cercle predit, per a tots els tracks actuals.

Després d’associar les noves observacions amb alguns objectes actualment en tracking, l’estat d’aquests objectes és estimat. Això es realitza frame a frame, combinant la informació proporcionada pel model de predicció i el cercle observat, donant com a resultat un coneixement complet i filtrat de la posició i grandària de l’objecte al llarg de tots els frames.

Conclusions

Aquest mètode proporciona una estimació precisa de diversos objectes circulars simultàniament, calculant una mesura de grandària i posició per a tots els frames, fins i tot si no sempre s’han detectat cercles. És robust contra el canvi de grandària i posició dels objectes, i pot ser extrapolat a altres mètodes similars que involucrin altres formes o escenes.

Esperem que t’hagi estat útil aquest article. Si tens entre mans algun projecte d’enginyeria i creus que podem ajudar-te, aquí et deixo l’enllaç on ens podràs contactar i explicar-nos més a prop d’això.