53
1 Algorisme de detecció de cossos en moviment a partir d’una seqüència de vídeo TITULACIÓ: Enginyeria en Automàtica i Electrònica Industrial AUTOR: Adrià Marcos Pastor DIRECTOR: Albert Oller Pujol DATA: Juny de 2011.

Algorisme De Detecció De Cossos En Moviment

  • Upload
    adriamp

  • View
    237

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algorisme De Detecció De Cossos En Moviment

1

Algorisme de detecció de cossos en moviment a partir d’una

seqüència de vídeo

TITULACIÓ: Enginyeria en Automàtica i Electrònica Industrial

AUTOR: Adrià Marcos Pastor

DIRECTOR: Albert Oller Pujol

DATA: Juny de 2011.

Page 2: Algorisme De Detecció De Cossos En Moviment

2

Agrair,

a la meva família tot el suport que sempre m’ha donat,

a l’equip d’m-BOT Solutions les hores de treball compartides,

a Albert Oller les hores que m’ha dedicat,

i a tothom que m’ha animat en la realització d’aquest projecte.

Page 3: Algorisme De Detecció De Cossos En Moviment

3

Preàmbul

Aquest projecte final de carrera conté informació confidencial i s’acull a la

NORMATIVA DE PROJECTES FI DE CARRERA (ETI-E, ETI-EI, EAEI), aprovada per

la Junta del Centre 30/05/03.

L’empresa m-BOT Solutions amb domicili a l’ Avinguda Països Catalans, número 26

(CP 43007) de Tarragona, disposa de la informació classificada com confidencial que

correspon al desenvolupament de l’algorisme i el seu codi font.

Page 4: Algorisme De Detecció De Cossos En Moviment

4

Índex

1 Introducció ..................................................................................................... 9

2 Objectiu........................................................................................................ 10

3 Especificacions ............................................................................................ 10

4 Estat de l’art ................................................................................................. 11

4.1 Imatge digital .......................................................................................... 11

4.1.1 Adquisició de la imatge digital .................................................................... 11

4.1.2 Representació digital de la imatge ............................................................... 12

4.1.3 El color ........................................................................................................ 13

4.2 Detecció del foreground per extracció del fons d’una imatge ................ 19

4.2.1 Problemes canònics en l’extracció dels fons d’una imatge .......................... 20

4.2.2 Tècniques de modelat del fons d’una imatge ............................................... 21

4.2.3 Extracció d’ombres per millorar la detecció ................................................ 35

5 Detecció de moviment amb el càlcul de l’entropia espaciotemporal de la

imatge .......................................................................................................... 39

5.1 Concepte d’entropia ................................................................................ 39

5.1.1 Definició formal d’entropia ......................................................................... 40

5.2 Detecció de moviment basat en l’entropia .............................................. 40

5.2.1 Imatge d’Entropia Espacial i Temporal (STEI) ........................................... 40

5.2.2 Imatge d’Entropia Espacial i Temporal per Diferència d’Imatges (DSTEI). 43

6 Desenvolupament de l’algorisme ................................................................ 46

6.1 Anàlisi preliminar ................................................................................... 46

6.2 Paràmetres fonamentals .......................................................................... 46

6.3 Optimització del processat ...................................................................... 49

6.3.1 Look Up Table de quantització .................................................................... 50

6.3.2 Generació dels historials .............................................................................. 50

6.3.3 Look Up Table d’entropies parcials ............................................................. 51

6.4 Variables i la seva estructura .................................................................. 53

6.4.1 Dades de la informació: historials i entropia ................................................ 53

6.4.2 LUT_QUANTITZACIÓ .............................................................................. 54

6.4.3 LUT_ENTRO .............................................................................................. 54

6.4.4 Buffer d’imatges .......................................................................................... 55

6.5 L’algorisme ............................................................................................. 55

6.5.1 Diagrama de blocs de l’algorisme ................................................................ 56

6.5.2 Inicialització de variables mitjançant el fitxer de paràmetres ....................... 56

6.5.3 Preprocessat ................................................................................................. 57

Page 5: Algorisme De Detecció De Cossos En Moviment

5

6.5.4 Nucli del sistema de detecció ....................................................................... 57

6.5.5 Post processat .............................................................................................. 60

6.5.6 Posicionament del foreground amb moviment ............................................. 61

6.5.7 Actualització del fitxer dels cossos detectats ............................................... 62

7 Anàlisi i optimització dels paràmetres de l’algorisme ................................. 63

7.1 Descripció del hardware utilitzat ............................................................ 63

7.1.1 Càmera ......................................................................................................... 63

7.1.2 Ordinador ..................................................................................................... 63

7.2 Anàlisi dels paràmetres ........................................................................... 64

7.2.1 Anàlisi dels paràmetres fonamentals del sistema ........................................ 64

7.2.2 Paràmetres del preprocessat ......................................................................... 96

7.2.3 Paràmetres del postprocessat ....................................................................... 99

7.2.4 Paràmetres de la funció de localització ...................................................... 102

8 Conclusions................................................................................................ 104

9 Manual d’instal·lació i ús ........................................................................... 105

9.1 Instal·lació del Detector de Moviment .................................................. 105

9.2 Manual d’ús del detector de moviment ................................................. 108

9.2.1 Fitxer de càrrega de variables .................................................................... 108

9.2.2 Fitxer d’informació dels objectes en moviment localitzats ........................ 110

9.2.3 Execució del programa .............................................................................. 111

9.2.4 Funcionament del programa....................................................................... 111

10 Pressupost .................................................................................................. 117

11 Referències i bibliografia ........................................................................... 118

11.1 Referències ............................................................................................ 118

11.2 Bibliografia ........................................................................................... 119

12 Annex ......................................................................................................... 122

12.1 Codi font del programa final ................................................................. 122

12.1.1 Program.cs ................................................................................................. 122

12.1.2 Deteccion.cs ............................................................................................... 123

Page 6: Algorisme De Detecció De Cossos En Moviment

6

Índex de figures

Fig. 1. Robot Roinbot® ..................................................................................... 10

Fig. 2. Nomenclatura del sistema de coordenades dels píxels d'una imatge ..... 12

Fig. 3. Resposta relativa dels receptors de la retina humana en funció de la

longitud d’ona de la llum. ............................................................................................... 14

Fig. 4. Cub del model RGB ............................................................................... 14

Fig. 5. Representació gràfica del model HSV. .................................................. 16

Fig. 6. Figura que representa el model HSL. .................................................... 17

Fig. 7. Pla de crominància CbCr amb un grau de lluminositat Y de 0.5. .......... 18

Fig. 8. Diagrama de flux genèric d’un algorisme d'extracció del fons d'una

imatge per detectar el foreground. .................................................................................. 20

Fig. 9. Exemple del mètode per diferència absoluta. [Dalt] [Esquerra] El frame

original. [Dreta] Valor absolut de la diferència. [Baix] [Esquerra] Llindar massa alt.

[Dreta] Llindar massa baix. ............................................................................................ 21

Fig. 10. [Columna esquerra] Valors adoptats per un píxel en cada un dels canals

en una seqüència de frames. [Columna dreta] Histograma del frame actual. ................ 23

Fig. 11. Diferents distribucions Gaussianes al variar els paràmetres de la mitjana

aritmètica i la variància................................................................................................... 25

Fig. 12. a) Imatge original. b) Resultat de la primera fase de detecció. c)

Resultat posterior al filtratge per alta probabilitat de desplaçament. d) Resultat d'aplicar

la condició de desplaçament del component. ................................................................. 30

Fig. 13. Exemple de resposta freqüencial del mòdul d’un filtre de Chebyshev 35

Fig. 14. a) Frame original. b) Detecció amb el model de color (R, G, B). c)

Detecció amb el model de color (r, g). ........................................................................... 36

Fig. 15. Exemple de classificació del sistema Sakbot ....................................... 38

Fig. 16. Representació gràfica de la finestra d’acumulació. .............................. 41

Fig. 17. Exemples d'imatges de tipus STEI i captures originals. ....................... 43

Fig. 18. Efecte de la constant de recursivitat en la imatge d'entropies generada.

[D’esquerra a dreta] α=0.9 , α=0.8 , α=0.7 ..................................................................... 44

Fig. 19. Exemple d'imatges DSTEI i captures originals .................................... 45

Fig. 20. Gràfic que mostra la quantització dels 256 possibles valors que pot

prendre un píxel si es treballa en escala de grisos. ......................................................... 48

Fig. 21. Efecte del paràmetre modulador en la fórmula utilitzada per calcular

l'entropia. ........................................................................................................................ 49

Fig. 22. Exemple de LUT d'entropies parcials .................................................. 52

Fig. 23. Diagrama de blocs del conjunt del procés ............................................ 56

Fig. 24. Diagrama de blocs del conjunt del procés ............................................ 59

Fig. 25. Vista de la capçalera del fitxer dels cossos detectats. .......................... 62

Fig. 26. Càmera Logitech Sphere AF. ............................................................... 63

Fig. 27. Captura del primer escenari interior. ..................................................... 64

Fig. 28. Gràfic de comparació de la velocitat de captura en FPS en funció dels

paràmetres . ................................................................................... 69 Fig. 29. Gràfic dels fps que el sistema captura en funció del paràmetre

per dos valors de diferents. ....................................................... 71 Fig. 30. Gràfic d’entropies parcials en funció de les probabilitats que es tenen

per diferents moduladors inferiors a 1 en cas que .......... 72

Fig. 31. Gràfic d’entropies parcials en funció de les probabilitats que es tenen

per diferents moduladors superiors a 1 en el cas que ..... 73

Page 7: Algorisme De Detecció De Cossos En Moviment

7

Fig. 32. [Dalt] Filtratge de la imatge STEI mitjançant el factor d’entropia

mínima. [Baix] [Esquerra] Imatge emmagatzemada en el buffer. [Dreta] Localització

dels cossos en moviment ................................................................................................ 75

Fig. 33. Evolució de l’entropia màxima en funció de per quatre

moduladors. .................................................................................................................... 76

Fig. 34. Llindars d’entropia mínima per filtrar soroll provocat per la repetibilitat

del sensor de la càmera en funció de i quatre moduladors diferents. ........... 76 Fig. 35. Exemple de detecció en un escenari exterior amb filtratge de píxels amb

entropia inferior a la mínima llindar. .............................................................................. 77

Fig. 36. Corbes de relació entre llindars d’entropia mínima i entropies màximes

en % en funció de per quatre moduladors diferents. ...................................... 78 Fig. 37. Captura del segon escenari en interiors. ............................................... 80

Fig. 38. Detall de l’efecte associat a emmagatzemar pocs frames. ................... 84

Fig. 39. Gràfic de comparació de la velocitat de captura en FPS en funció dels

paràmetres . ................................................................................... 85

Fig. 40. Detall del mal funcionament de la generació d’imatges DSTEI amb

pocs valors de quantització. ............................................................................................ 88

Fig. 41. Gràfic dels fps que el sistema captura en funció del paràmetre

per dos valors de diferents. ......................................................... 90 Fig. 42. Exemple de problemes amb canvis d’il·luminació provocats pel

moviment dels cossos. .................................................................................................... 94

Fig. 43. Exemple del problema amb el parpalleig dels sistemes d’il·luminació

artificials. ........................................................................................................................ 94

Fig. 44. Rastre generat dels objectes en moviment per la baixa velocitat de

processament . ................................................................................................................ 95

Fig. 45.[Esquerra] El cos es mou en direcció transversal a la càmera. [Dreta] El

cos es mou cap a la càmera. ............................................................................................ 95

Fig. 46. Exemple de detecció generada per vibracions de la càmera[Esquerra]

Imatge de tipus STEI. [Dreta] Imatge de tipus DSTEI. .................................................. 96

Fig. 47. Exemple d’utilitat del filtre suavitzador [Dalt] [Esquerra] Captura

original. [Dreta] Imatge d’entropia. [Baix] Imatge d’entropia amb el soroll de les fulles

filtrat. .............................................................................................................................. 98

Fig. 48. [Esquerra] [Dalt] Captura original en escala de grisos sense filtre de

Gauss. [Baix] Captura original en escala de grisos amb filtre de Gauss. [Dreta] Imatges

STEI amb finestra d’acumulació de 3 píxels d’amplada. ............................................... 99

Fig. 49. [Dalt] [Esquerra] Captura original en escala de grisos. [Dreta] Imatge

d’energia en escala de grisos. [Baix] [Esquerra] Resultat d’aplicar un llindar de 70 per

binaritzar la imatge d’energia. [Dreta] Localització dels objectes en moviment. ........ 101

Fig. 50. [Dalt] [Esquerra] Captura original en escala de grisos. [Dreta] Imatge

d’energia en escala de grisos. [Baix] [Esquerra] Resultat d’aplicar una iteració d’erosió i

una de dilatació. [Dreta] Localització dels objectes en moviment. .............................. 101

Fig. 51. Detall de l’eliminació del contorn detectat mitjançant operacions

morfològiques. .............................................................................................................. 101

Fig. 52. Exemples de situacions en les que no s’han de localitzar els píxels que

presenten entropia. ........................................................................................................ 103

Fig. 53. Instal·lador de l’aplicació. .................................................................. 105

Fig. 54. Pantalla de benvinguda al procés d’instal·lació. ................................. 106

Fig. 55. Selecció de la ruta en què el programa s’instal·larà. .......................... 106

Fig. 56. Confirmació de les opcions seleccionades i inici de la instal·lació. ... 107

Fig. 57. Procés de la instal·lació. ..................................................................... 107

Page 8: Algorisme De Detecció De Cossos En Moviment

8

Fig. 58. Finalització de la instal·lació. ............................................................. 108

Fig. 59. Exemple de fitxer de paràmetres. ....................................................... 109

Fig. 60. Exemple de fitxer amb informació dels cossos localitzats generat amb

el programa. .................................................................................................................. 111

Fig. 61. Icona del programa. ............................................................................ 111

Fig. 62. Finestra d’exploració de carpetes per establir la ruta del fitxer de

paràmetres. .................................................................................................................... 112

Fig. 63. Finestra d’exploració de carpetes per establir la ruta del fitxer dels

objectes en moviment. .................................................................................................. 112

Fig. 64. Pantalla principal reduïda. .................................................................. 113

Fig. 65. Pantalla principal expandida............................................................... 114

Fig. 66. Panell d’ajust dels paràmetres del nucli del sistema. ......................... 115

Fig. 67. Panell de control del factor d’entropia mínima llindar. ...................... 115

Fig. 68. Panell de control del filtre de Gauss del preprocessat. ....................... 115

Fig. 69. Panell de control del paràmetres de les operacions del postprocessat.116

Fig. 70. Panell de control dels paràmetres de la funció de localització. .......... 116

Fig. 71. Botó de control de l’estat del timer. ................................................... 117

Page 9: Algorisme De Detecció De Cossos En Moviment

9

1 Introducció

El desenvolupament de la Visió Artificial dels últims anys ha vingut impulsat

per la indústria de l’automòbil, per la indústria dels sistemes de vigilància i també per la

creixent indústria de la robòtica, especialment la de servei. La indústria de l’automòbil

aplica la visió artificial per desenvolupar sistemes d’assistència al conductor i sistemes

de seguretat passius, que tenen per missió intentar evitar accidents. En aquest sentit

s’han desenvolupat algorismes que identifiquen les senyals vials, detecten la presència

de vianants, realitzen la detecció de vehicles en angles morts o fan el seguiment de les

línies vials de la carretera entre d’altres aplicacions. Els sistemes de vigilància tenen per

missió detectar els elements que no s’haurien de trobar en àrees específiques. En el cas

de la robòtica de servei la visió artificial és una eina molt potent que permet als sistemes

robotitzats realitzar múltiples funcions, com per exemple detectar cares o identificar

objectes.

L’evolució de la robòtica de servei ha produït l’aparició de robots mòbils que

tenen la finalitat de donar servei a les persones. Per donar servei a les persones cal que

el robot detecti la presència d’aquestes al seu voltant. El moviment dels robots de servei

es basa en la utilització de sensors que permeten la detecció d’obstacles però aquests

sensors sovint no són suficients per permetre que el robot detecti la presència de

persones al seu voltant. La visió artificial és una eina que aporta una mesura més global

de l’entorn que rodeja el robot que la que pot donar un sensor d’ultrasons o bé un

sensor làser per mesurar distàncies.

L’empresa m-BOT Solutions S.L. és una empresa de robòtica de servei que vol

dotar a un dels seus productes d’un sistema de detecció de cossos en moviment per tal

que aquest els posicioni i es dirigeixi cap a ells. El robot de servei en el que es pretén

incorporar aquesta aplicació té per nom Roinbot®. Actualment està dotat d’un sistema

de telemetria làser que permet mesurar la planta que es troba davant del robot. En

l’últim any s’ha desenvolupat una aplicació de detecció de cares per combinar-lo amb el

sensor làser i verificar que el cos que té davant és una persona i no un altre tipus

d’objecte. El problema que apareix és que tots dos sistemes no estan dissenyats per

treballar amb objectes situats a una distància superior als cinc metres i és per això que

l’empresa busca una alternativa. Així doncs, es proposa la detecció i localització de

cossos en moviment per tal d’orientar el robot en la direcció on es troben.

Per la realització del processat digital de les imatges en aquest projecte

s’utilitzaran llibreries de codi obert, les quals són de distribució i ús gratuïts. Les

llibreries utilitzades s’anomenen OpenCV [4] i van ser creades per Intel® l’any 1999.

Les funcions de OpenCV estan preparades per ser utilitzades amb el llenguatge de

programació C. En conseqüència s’utilitzarà la cross-platform anomenada Emgu CV [5]

que permet fer ús de les funcions de OpenCV en llenguatge .Net, com és el cas del

llenguatge C# llenguatge amb el qual s’haurà de portar a terme el desenvolupament

d’aquest projecte, ja que aquesta és una de les seves especificacions.

Page 10: Algorisme De Detecció De Cossos En Moviment

10

Fig. 1. Robot Roinbot®

2 Objectiu

L’objectiu d’aquest projecte és detectar els cossos que es mouen en el camp de

visió de la càmera, per tal que el robot, en el que s’integrarà l’aplicació, identifiqui un

possible objectiu quan no detecti persones prop seu mitjançant els sistemes de què

disposa actualment. El programa actualitzarà un fitxer de forma periòdica amb les dades

que corresponen als cossos localitzats.

Tot i que no es presenti una especificació de temps màxim per portar a terme la

detecció, és interessant que l’algorisme de processament sigui ràpid per tal de reduir el

temps que el robot està esperant la direcció en la que s’ha de moure.

3 Especificacions

Per la realització d’aquest projecte es marquen les següents especificacions

tècniques:

El software s’ha de desenvolupar en llenguatge de programació C#.

Els paràmetres de configuració del sistema s’han de poder ajustar

inicialment des de l’exterior del propi programa.

La sortida del algorisme consistirà en l’actualització de forma periòdica

d’un fitxer on s’hi haurà d’emmagatzemar la informació dels cossos

localitzats. El període de mostreig ha de ser un paràmetre que pugui ser

ajustable abans d’iniciar el programa. Les dades han de ser:

o El número d’identificació de la mostra.

o El número de cossos detectats.

o Les coordenades del centre de masses dels cossos.

o Àrea en píxels dels cossos.

Page 11: Algorisme De Detecció De Cossos En Moviment

11

4 Estat de l’art

En aquest projecte es pretén realitzar el software necessari per portar a terme la

diferenciació o segmentació dels elements que pertanyen al fons d’una imatge respecte

dels que no ho són i així identificar els cossos que es troben en moviment. El concepte

de fons de la imatge, o background en anglès, no és un concepte que estigui ben definit

però, en general, es considera que el background d’una imatge és qualsevol part d’una

escena que roman estàtica.

En moltes aplicacions de visió artificial, com poden ser sistemes de seguiment i

de vigilància, un bloc fonamental dels algorismes utilitzats és el de l’extracció del fons

de la imatge, que s’encarrega de diferenciar els elements que pertanyen al que

s’anomena foreground en anglès. La informació obtinguda d’aquest bloc permet el

funcionament de tasques de més alt nivell en el que es tracta l’anàlisi del moviment,

càlcul de trajectòries, estimació de velocitats relatives, identificació, etc.

De forma general els ambients es poden classificar entre interiors o exteriors.

Cadascun d’ells presenten característiques substancialment diferents. El problema

associat a treballar en ambients exteriors és la dificultat d’extreure el fons de la imatge

quan es tenen elements que no romanen completament estàtics, com per exemple, el cas

de les fulles dels arbres. En canvi, en interiors els principals problemes a superar són els

canvis sobtats d’il·luminació i el parpalleig dels sistemes d’il·luminació artificial.

L’algorisme implementat en aquest projecte es posarà a proba en ambdós tipus

d’entorns per avaluar-ne la seva efectivitat i extreure’n unes conclusions.

En aquest apartat de la memòria del projecte, en primer lloc es parla breument de

la imatge digital on s’inclouen aspectes com l’adquisició de les imatges, es presenta la

nomenclatura utilitzada en la literatura de l’anàlisi i processat d’imatges en el camp de

la visió artificial i es parla dels diferents models de color amb què es pot treballar. A

continuació es procedeix a tractar amb més detall l’extracció del background d’una

imatge, els problemes principals que compliquen aquesta tasca, les tècniques que

s’apliquen i es fa un repàs dels algorismes existents.

4.1 Imatge digital

4.1.1 Adquisició de la imatge digital

En un sistema de visió artificial l’ordinador és l’encarregat de realitzar l’anàlisi

de la imatge i aquest ha d’estar connectat a un dispositiu que proporcioni aquesta

imatge. El dispositiu pot ser per exemple una càmera digital la qual pot estar connectada

mitjançant el bus USB (Universal Serial Bus), FireWire (IEEE 1394), Camera Link, o

bé Gigabit Ethernet (IEEE 802.3). Qualsevol càmera estàndard de vídeo requereix d’un

frame grabber que consisteix en un component hardware que accepta un estàndard de

senyal de vídeo analògic i el converteix en una imatge en un format que l’ordinador pot

reconèixer- una imatge digital. El procés de transformació d’un senyal de vídeo

estàndard a una imatge digital s’anomena digitalització. Aquesta transformació és

necessària perquè l’estàndard de vídeo consisteix en un senyal analògic i l’ordinador

necessita que les dades estiguin en format digital.

Un senyal de vídeo típic conté frames d’informació del vídeo, on cada frame

presenta una mostra completa de la informació visual que s’ha capturat. El senyal de

Page 12: Algorisme De Detecció De Cossos En Moviment

12

vídeo analògic es digitalitza mostrejant aquest senyal a una freqüència fixa, mesurant

cada cert temps el nivell de voltatge del senyal. El valor del voltatge a cada instant de

temps es converteix en un número que és emmagatzemat i que correspon a la quantitat

de brillantor de la imatge en el punt corresponent. La brillantor en un punt depèn de les

característiques intrínseques de l’objecte i de les condicions de llum que es donin en

l’escena. Una vegada s’ha completat el procés per un frame sencer, l’ordinador pot

emmagatzemar-lo i processar-lo com una imatge digital.

4.1.2 Representació digital de la imatge

La imatge es considera com una matriu bidimensional de

elements. Cada element de la matriu es coneix com a píxel

(picture element). Per les imatges digitals se segueix la següent nomenclatura.

El conveni establert de sistema de coordenades per referir-se a un píxel concret

és el que es mostra a la figura.

Fig. 2. Nomenclatura del sistema de coordenades dels píxels d'una imatge

Aquest model fa referència a les dades d’una imatge monocromàtica, mitjançant

una escala de grisos però es tenen altres tipus d’imatges amb dades que requereixen una

extensió d’aquest model ja que disposen de múltiples bandes. El tipus d’imatges

multibanda són les de color o multiespectrals, tot i que en aquest projecte només es

tracten les de color. A cada canal o banda li correspon una funció diferent del tipus

de quantitat de llum. Al llarg d’aquest projecte es tractaran diferents tipus d’imatges: binàries, escala de grisos i de color. És per això que convé fer-ne una

explicació prèvia.

4.1.2.1 Imatges binàries

Les imatges binàries són les imatges més simples, els píxels de les quals només

poden adoptar dos valors possibles “0” o “1”. Per tant, per cada píxel únicament és

necessari un bit de codificació. Aquest tipus d’imatges s’utilitzen en general per

aplicacions de visió per computadors on l’única informació requerida són formes o

contorns dels objectes.

Les imatges binàries sovint s’obtenen a partir d’imatges en escala de grisos en

les que s’aplica llindar, on els píxel que sobrepassen el llindar es converteix en blanc

(“1”) mentre que els valors que queden per sota es transformen en negre (“0”). En

aquest procés es perd molta informació, però la imatge resultant és més fàcil

Page 13: Algorisme De Detecció De Cossos En Moviment

13

d’emmagatzemar i de transmetre, gràcies a la reduïda quantitat de dades que conté si es

compara amb una imatge en colors.

4.1.2.2 Imatges en escala de grisos

Les imatges en escala de grisos són imatges monocromàtiques. La informació

que contenen és la quantitat de llum i no disposa d’informació de color. El número de

bits utilitzats per cada píxel determina el nombre de combinacions possibles per

codificar els nivells de lluminositat que es poden tenir.

En cas que una imatge en escala de grisos contingui 8 bits per píxel permet tenir

256 combinacions diferents possibles [0, 255] de nivells de lluminositat o de grisos. És

típic utilitzar aquesta quantitat de memòria per cada píxel perquè és la unitat bàsica

d’informació en el món digital.

En certes aplicacions, com per exemple mèdiques o d’astronomia, s’arriben a

utilitzar entre 12 i 16 bits de codificació, ja que són àmbits en els què és important

disposar d’una major resolució de la lluminositat.

4.1.2.3 Imatges en color

Les imatges amb color es poden modelar com una imatge amb tres bandes

monocromàtiques i a cada banda li correspon un color diferent. La informació real que

s’emmagatzema en la imatge digital és la quantitat de color en cada banda. Quan la

imatge es presenta per pantalla, la informació de brillantor es mostra mitjançant fonts

emissores d’energia corresponents a cada un dels colors. El model més utilitzat en les

imatges a color és el model de color RGB i, sovint, s’utilitzen 8 bits per cadascun dels

tres canals. Per fer referència a la intensitat de llum d’un sol píxel en cada canal,

s’utilitza la nomenclatura del vector (R, G, B). Cada valor de dins el vector indica la

quantitat de llum que es té en cada canal. Tot i així, el model RGB no és l’únic i es

presenten altres tipus de models de colors més endavant.

4.1.3 El color

La percepció del color és molt important pels humans. Els humans utilitzen la

informació del color per distingir objectes, materials, menjars, llocs i fins i tot l’hora del

dia. La percepció humana del color depèn de la física de la llum i del complex processat

que realitzen conjuntament l’ull i el cervell. Aquest últim integra les propietats de

l’estímul amb l’experiència per aquest motiu, una mateixa imatge amb diferent

informació de color fa canviar totalment la interpretació que es pot fer de la imatge ni

que es mantinguin les formes que apareixen.

D’altra banda, és l’ull l’encarregat de rebre la informació visual. La radiació

electromagnètica amb una longitud d’ona λ que es trobi en el rang entre els 400 nm i

els 700 nm estimula els receptors de l’ull humà i permet que es produeix la sensació de

color. Aquest rang configura el marge de longituds d’ona de la llum visible, és a dir, la

llum que els humans són capaços de veure. La reacció dels receptors, en realitat, és més

sensible a algunes longituds d’ona que en d’altres. Per exemple, els receptors que són

més sensibles a les longituds d’ona que es troben entre els 400 nm i els 500 nm són els

més sensibles al color blau. Els receptors sensibles al color verd presenten el seu punt

màxim de sensibilitat a la longitud d’ona de 535 nm, mentre que els que tenen més

sensibilitat a les longituds situades al voltant dels 575 nm són sensibles al color vermell.

Va aparèixer així el model de color Red-Green-Blue per tal de poder descriure de forma

Page 14: Algorisme De Detecció De Cossos En Moviment

14

numèrica els diferents colors als que els receptors de l’ull humà responen. El model de

color RGB no és l’únic model que existeix. Entre tots els existents, els models HSV,

HLS, YUV i YCbCr són els més destacables.

Fig. 3. Resposta relativa dels receptors de la retina humana en funció de la longitud d’ona de la llum.

Les màquines poden utilitzar el color amb la mateixa finalitat que ho fan els

humans. El color és especialment convenient perquè aporta múltiples mesures en un

mateix píxel de la imatge. Aquest fet permet portar a terme classificacions de forma

menys complexa que si es realitza una anàlisi de les característiques espacials que

presenta el conjunt que envolta el píxel.

4.1.3.1 Model de color RGB

La codificació de color mitjançant el model RGB utilitza els colors blau, vermell

i verd per establir les seves bases. Si per exemple, per cadascun dels 3 colors es codifica

la informació en un byte de memòria, els valors que es poden codificar per cada color

primari pertanyen a l’interval [0, 255]. En conseqüència, si es tenen 3 bytes, o 24 bits,

per codificar el valor de cada píxel es poden codificar (28)3

colors diferents, número que

ronda al voltant dels 16 milions de colors possibles. Els humans no són capaços de distingir entre tants colors diferents però pels ordinadors no deixen de ser números en

format matricial. La codificació d’un color qualsevol en l’espectre visible es pot

realitzar mitjançant la combinació dels colors primaris (RGB). Per exemple, per generar

el color groc (255, 255, 0) s’ha de mesclar el vermell (255, 0, 0) amb el verd (0, 255, 0).

La relació de les coordenades dels valors del color es pot apreciar en la figura que

segueix.

Fig. 4. Cub del model RGB

La quantitat de cada color primari dóna la seva intensitat. Si es combinen tots

tres colors primaris en la seva màxima intensitat, el color obtingut és el blanc (255, 255,

255). En canvi, el color negre és la mínima intensitat (0, 0, 0). Qualsevol tonalitat de

gris pur compleix que les seves quantitats de colors primaris és el mateix, però no és ni

Page 15: Algorisme De Detecció De Cossos En Moviment

15

el màxim (255) ni el mínim (0). Per tant qualsevol color gris serà de la forma (c, c, c) on

“c” serà més gran que 0 i més petit que 255.

A vegades és convenient escalar els valors en el rang de 0 a 1 i no tenir

representats els colors de 0 a 255. Així s’aconsegueix independitzar el rang de valors

del dispositiu que proporciona la informació del número de bits amb què dóna la

informació. S’ha de complir que la suma dels 3 components normalitzades del color

RGB sumen 1. Per calcular la intensitat i el valor normalitzat de cada component

s’utilitzen les següents expressions.

(1)

4.1.3.2 Model de color HSV

Va ser creat per Alvy Ray Smith l’any 1978 i presenta l’avantatge que s’adapta

millor a les característiques de l’ull humà. El model HSV (Hue, Saturation, Value -

Tonalitat, Saturació, Valor) pretén millorar la representació de les relacions entre els

colors que ofereix el model RGB, centrant-se en la tonalitat, la saturació i el valor. Es

tracta d’una transformació no lineal del model RGB. Les següents característiques es

refereixen als paràmetres que es poden visualitzar en la figura que representa aquest

model.

La tonalitat representa el tipus de color (com vermell, blau o verd). Es

representa mitjançant una mesura d’angle en graus que pot anar des de 0° fins a

360°. Per exemple, els 0° correspon al color vermell, els 120° correspon al color

verd i els 240° correspon al color blau.

La saturació es representa com la distància a l’eix de brillantor negre-blanc (eix

central de la figura cilíndrica). També s’anomena puresa segons la literatura del

color. Quanta menys saturació presenti el color, més tonalitat grisosa presentarà.

El valor del color és el grau de brillantor del color. Representa l’altura del eix de

negre-blanc. Com més altura més brillantor presenta.

Page 16: Algorisme De Detecció De Cossos En Moviment

16

Fig. 5. Representació gràfica del model HSV.

Equacions de transformació de RGB a HSV

Es defineix MAX com el valor màxim de les components (R, G, B) i MIN el

mínim dels mateixos. Els valors de R’, G’ i B’ han d’expressar-se amb un número

entre 0 a 1. Així doncs, es defineix primerament:

(2)

Les equacions de HSV són:

(3)

(4)

(5)

4.1.3.3 Model HSL

De la mateix forma que el model anterior, el model HSL va ser creat per Alvy

Ray Smith com una altra representació en 3D del color. El model HSL (Hue,

Saturation, Lightness - Tonalitat, Saturació, Lluminositat) presenta uns avantatges

respecte el model HSV i és que els components de saturació i lluminositat augmenten el

seu rang de valors. El model HSL conté totes les tonalitats en diferents nivells de

saturació al llarg del pla horitzontal i en varia la seva intensitat al llarg del pla vertical.

Les tonalitats purament saturades se situen al llarg del perímetre circular. La saturació

del color disminueix a mesura que es mou cap a l’eix central en el mateix pla. Si el

moviment és vertical, el canvi es produeix en la lluminositat del color. Cap amunt el

color acaba sent blanc mentre que el moviment cap baix finalitza amb el color negre.

Page 17: Algorisme De Detecció De Cossos En Moviment

17

Fig. 6. Figura que representa el model HSL.

Equacions de transformació de RGB a HSL

De la mateixa manera que en el cas anterior, les components R, G i B s’han

d’expressar entre 0 i 1. La notació MAX i MIN segueix segons el que s’ha establert en

l’apartat anterior.

(6)

(7)

(8)

4.1.3.4 Models de color YUV i YCbCr

El model RGB no és eficient per emmagatzemar ni transmetre les dades ja que

presenta molta redundància en el seu model. És per aquest motiu que els model de color

utilitzats en els dispositius de vídeo o de televisió són els models YUV i YCbCr.

Aquests models posseeixen un canal de lluminositat i dos de crominància que

codifiquen el color.

Tal i com s’ha dit anteriorment, l’ull humà no és capaç de distingir tots els colors

possibles que ofereix el model RGB. És per això que, per la creació d’aquest model s’ha

tingut en compte la percepció humana ja que utilitza un ample de banda reduït pels

components de crominància i permet una reducció considerable de la quantitat de dades

a emmagatzemar i transmetre.

Històricament el model de color YUV va ser desenvolupat per permetre la

compatibilitat entre els sistemes de televisió en blanc i negre i els que disposaven de

color. El canal Y conté la informació de lluminositat i els altres dos la codificació del

color.

Page 18: Algorisme De Detecció De Cossos En Moviment

18

El terme YUV per ell sol no està definit de forma concreta en la literatura

científica o tècnica. En general defineix el conjunt de famílies de models de colors que

treballen amb lluminositat i crominància. La millor forma d’evitar ambigüitats

associades al terme YUV és fer referència a la variant concreta del model YUV que

s’ha definit correctament mitjançant documents estàndard internacionals. És el cas del

model YCbCr el qual és definit pels estàndards ITU-R BT. 601-5 (televisió normal) i

ITU-R BT. 709-5 (televisió en alta definició) publicats per la Unió Internacional de

Telecomunicacions. Aquests documents defineixen el model YCbCr com el model a

utilitzar en els sistemes de televisió digital i donen coeficients de conversió entre el

model RGB i el model YCbCr per normalitzar els senyals digitals de vídeo.

Fig. 7. Pla de crominància CbCr amb un grau de lluminositat Y de 0.5.

Equacions de transformació de RGB a YUV

(9)

Equacions de transformació de RGB a YCbCr

Les equacions generals són:

(10)

(11)

(12)

Aplicant les constants determinades per l’estàndard ITU-R BT. 601-5:

S’obtenen les següents equacions de transformació:

Page 19: Algorisme De Detecció De Cossos En Moviment

19

(13)

4.2 Detecció del foreground per extracció del fons d’una

imatge

Els sistemes de vigilància que s’encarreguen de detectar persones, objectes o

altres successos d’interès normalment consisteixen en càmeres immòbils que enfoquen a

un entorn determinat. Mitjançant aquestes càmeres i un sistema de computació que

processa les imatges, es notifica als operadors humans o bé a altres algorismes de

processat, de la presència d’objectes que no pertanyen al background. La detecció de

moviment que es vol aconseguir en aquest projecte està molt relacionada amb els

mètodes de segmentació del foreground d’una imatge respecte el background. És per

aquest motiu que s’han estudiat prèviament el funcionament d’aquest tipus

d’algorismes.

Tot i que existeixen una gran quantitat d’algorismes que extreguin el fons d’una

imatge, la majoria d’ells segueixen un diagrama de flux com el que es pot veure en la

figura 8. Els 4 passos en un algorisme d’extracció del fons de la imatge són el

preprocessat, el modelat del fons de la imatge, la detecció del foreground i la validació

de les dades. El preprocessat consisteix en tasques de processament que modifiquen les

imatges capturades per adequar-les abans de seguir avançant en el procés. El modelat

del fons de la imatge utilitza les noves imatges obtingudes per calcular i actualitzar el

fons de la imatge. El model del fons de la imatge aporta una descripció estadística

d’aquest fons. La identificació dels píxels pertanyents al foreground de les noves

captures es produeix quan no es poden explicar de forma adequada per mitjà del model

que es té del fons de la imatge. A partir d’aquesta identificació, es genera una màscara

binària candidata per indicar si el píxel forma part del fons de la imatge o no. La

validació de les dades examina la màscara candidata i elimina aquells píxels que no es

corresponen realment amb els objectes que es troben en moviment i així es genera la

màscara final del foreground .

Captura

d’imatges

Preprocessat Modelat del

Background

Detecció del

Foreground

Validació

de les dades

Màscares del

Foregorund

EXTRACCIÓ DEL FONS D’UNA IMATGE

Page 20: Algorisme De Detecció De Cossos En Moviment

20

Fig. 8. Diagrama de flux genèric d’un algorisme d'extracció del fons d'una imatge per detectar el

foreground.

La distinció dels píxels que no formen part del background dels que sí que

formen part, no és una tasca trivial ja que existeixen una sèrie de problemes relacionats.

Aquests es descriuen en el següent apartat.

4.2.1 Problemes canònics en l’extracció dels fons d’una imatge

Els problemes que a continuació s’exposen es presenten en [16] on s’estudia

l’extracció del fons de la imatge i es proposa un algorisme que s’anomena Wallflower,

el qual s’ha convertit en una referència amb molt de renom dins aquest camp.

Els objectes moguts. Un objecte del background pot ser que es mogui i a

continuació deixi de moure’s un altre cop. Aquest tipus d’objectes no s’han de

considerar foreground per sempre. Al cap d’un temps determinat s’ha de deixar

de detectar.

L’hora del dia. La il·luminació en entorns exteriors canvia de forma gradual al

llard del dia i això altera l’aparença del fons de la imatge.

Canvis bruscs d’il·luminació. Els canvis bruscs en la il·luminació es pot

generar, per exemple, amb l’accionament d’un interruptor o bé es projecta una

ombra sobre el dispositiu que captura les imatges. En aquestes situacions,

l’aspecte del fons de la imatge canvia.

Moviment dels arbres. L’aspecte del fons de la imatge pot variar i vacil·lar, la

qual cosa comporta que l’algorisme identifiqui i permeti aquests tipus de canvis.

Camuflatge. És possible que les característiques dels píxels que pertanyen al

foreground s’incloguin involuntàriament en el model del fons de la imatge i el

degenerin.

L’efecte de bootstrapping. Terme que s’utilitza en estadística per referir-se al

remostreig per aproximar la distribució en el mostreig estadístic. El problema

que apareix és que, sovint no es disposa d’un període de temps per obtenir un

model del fons en què aquest estigui lliure d’objectes que pertanyen al

foreground.

Obertura del foreground. Quan un objecte que forma part del foreground es

mou i està acolorit de forma homogènia, el canvi en els píxels interiors de

l’objecte no es poden detectar. Aquesta situació pot generar que no es detectin

com píxels que formen part del foreground.

“Persona dorment”. Un objecte que pertany al foreground que aparenta no

tenir moviment, pot ser que no es pugui distingir del fons de la imatge.

Persona que es “lleva”. Quan un objecte del fons de la imatge es mou, tant

l’objecte com el nou fons de la imatge que queda al descobert poden aparèixer

com elements que pertanyen al foreground.

Page 21: Algorisme De Detecció De Cossos En Moviment

21

Ombres. Els objectes que pertanyen al foreground poden projectar ombres al

seu voltant provocant que les ombres generades també es detectin. Aquest

aspecte ha estat tractat molt a fons per Cucchiara, Piccardi i Patri en [6].

A més de tots aquest problemes, el funcionament en temps real és també un altre

problema que augmenta la dificultat del procés. Tot i que s’hagin desenvolupat

algorismes força robustos per realitzar l’extracció del background de la imatge, en

aquest mateix article s’adverteix que no existeix, encara, cap sistema perfecte ni una

única solució.

4.2.2 Tècniques de modelat del fons d’una imatge

Sovint és necessari un model del fons de la imatge. Com que no existeix una

forma única de resoldre el problema existeixen diferents tècniques que funcionen amb

més o menys eficàcia i eficiència.

El plantejament bàsic és detectar els elements del foreground com la diferència

entre el frame actual i una imatge de l’escena estàtica del background, que superi un

llindar concret. És a dir:

(14)

Fig. 9. Exemple del mètode per diferència absoluta. [Dalt] [Esquerra] El frame original. [Dreta] Valor

absolut de la diferència. [Baix] [Esquerra] Llindar massa alt. [Dreta] Llindar massa baix.

Aquest mecanisme genera el primer problema: obtenir de forma automàtica la

imatge que representa el fons de la imatge. Aquesta imatge no és fixa i s’ha d’adaptar

als canvis d’il·luminació graduals i instantanis, a canvis generats per les oscil·lacions de

la pròpia càmera o bé el moviment d’elements que pertanyen al background i que no

han de ser detectats com per exemple el vaivé de les fulles, onades i canvis en la

geometria del fons donat per objectes que es mouen i després queden en repòs. Els

mètodes més estesos i utilitzats són els següents.

Page 22: Algorisme De Detecció De Cossos En Moviment

22

4.2.2.1 Mètodes bàsics

Per diferència de frames

Consisteix en calcular el valor absolut de la diferència entre el frame actual i el

frame anterior. Els píxels que superin un llindar concret pertanyen al foreground i els

que no pertanyen al background.

(15)

Aquest mètode tendeix a obtenir únicament els contorns dels objectes en

moviment, pel problema de l’obertura del foreground. Els canvis d’il·luminació sobtats i

el moviment dels arbres o les vibracions de la pròpia càmera també generen problemes.

El valor del llindar és un paràmetre que depèn molt de les condicions particulars que es

tinguin en l’entorn de treball i dels objectes a detectar, així com de la seva velocitat

aparent i la freqüència en què s’obtinguin els frames.

Mitjana aritmètica

Proposats per Velastin i Cucchiara. Es pretén calcular el promig o el valor mig

aritmètic d’N frames previs per generar . A continuació s’aplicaria l’expressió (14). És més lent, millora el resultat però el gran desavantatge és el fet

d’haver de guardar en memòria N frames anteriors. El valor promig es calcula aplicant

la següent fórmula.

(16)

On:

Tractament del background com la mitjana contínua

Aquest mètode segueix l’expressió que apareix a continuació. Aquest mètode,

respecte l’anterior, presenta l’avantatge que l’ús de memòria és molt menor.

(17)

El valor de és el rati d’aprenentatge i s’obté de forma empírica, tot i que habitualment val 0.05.

Càlcul de la variància

La variància entre els valors d’un píxel concret al llarg dels N frames

emmagatzemats és un paràmetre estadístic que sovint s’utilitza per estudiar el

comportament dels píxels. La fórmula de la variància (σ) és la que segueix.

(18)

El problema que planteja aquesta fórmula és que és necessària fer una primera

passada a través de les imatges per calcular la mitjana aritmètica i una segona passada

per calcular la variància. Així que es calcula utilitzant l’última expressió que

apareix al final de la demostració.

Page 23: Algorisme De Detecció De Cossos En Moviment

23

(19)

D’aquesta manera es calcula tot de forma directa en una única passada.

Càlcul de la covariància

També es pot calcular el grau de variació entre dues seqüències de N imatges al

cap d’un temps determinat mitjançant el càlcul de la covariància que existeix entre elles entre.

(20)

On:

Per racionalitat

Es pot modelar cada píxel del background mitjançant l’aplicació d’una sèrie de

pesos promitjats a la història recent dels valors dels píxels on els pesos dels últims

frames tenen un pes més gran. En essència, el model del background es computa com

un promig històric dels valors de cada píxel al llarg dels últims N frames.

Per histogrames

Es poden localitzar els píxels que pertanyen al foreground localitzant els valors

que presenten més variació en els histogrames de les imatges obtingudes. Un

histograma és un recompte del nombre de vegades que es dóna cada valor que poden

adoptar els píxels.

Fig. 10. [Columna esquerra] Valors adoptats per un píxel en cada un dels canals en una seqüència de

frames. [Columna dreta] Histograma del frame actual.

Page 24: Algorisme De Detecció De Cossos En Moviment

24

Per selectivitat

Cada píxel del nou frame obtingut es classifica com foreground o background.

S’aprofita aquesta classificació per actualitzar el fons de la imatge. Si es detecta que el

píxel forma part del foreground, aquest no es té en compte per l’actualització del model

del background. D’aquesta manera es prevé que el model del background quedi

contaminat pels píxels que no en formen part. Existeix un interval crític per portar a

terme la selecció ja que apareixen els problemes dels “objectes moguts” i el de

“camuflatge”.

Els mètodes bàsics presenten limitacions substancials. No permeten una elecció

explícita del llindar a establir i no s’estableix un model múltiple, sinó únic i per aquest

motiu la forma de la distribució dels valors permesos és molt limitada. A més, en

general no s’estudia la relació que existeix entre els píxels cosa que genera soroll en el

resultat obtingut. L’anàlisi és a nivell de píxel i comporta obtenir falsos positius.

4.2.2.2 Mètodes estadístics

4.2.2.2.1 Probability Density Function - PDF

La funció de densitat de la probabilitat d’una variable contínua, segons la teoria

de la probabilitat, és una funció que descriu la densitat de la probabilitat en cada punt de

l’espai de tal manera que la probabilitat de què una variable aleatòria adopti un valor

dins d’un determinat conjunt, sigui la integral de la funció de densitat sobre aquest

conjunt. Una variable té una funció de densitat de probabilitat f, on f és una funció no negativa i integrable.

(21)

En visió artificial no es té una variable contínua sinó discreta. Una funció de

probabilitat d’una variable discreta és una funció que associa a cada punt, del seu espai

mostral , la probabilitat de què aquest l’adopti. Per exemple, un espai mostral de la

variable aleatòria consta de , la funció de probabilitat P associada a és:

(22)

Per definició la probabilitat ha de complir.

(23)

4.2.2.2.2 Single Gaussian - SG

Creat per Christopher Richard Wren que presenta en el seu treball Pfinder [9] un

algorisme de seguiment de persones i interpretació dels seus moviments gestuals. En ell

es planteja el modelat de l’escena al voltant de les persones detectades com una

superfície. A cada punt de la superfície se li associa la mitjana de color que presenta i

una distribució al voltant d’aquesta mitjana. Per modelar la distribució del color de cada

Page 25: Algorisme De Detecció De Cossos En Moviment

25

píxel es fa ús d’una funció de probabilitat que presenta una distribució Gaussiana

descrita per una matriu de covariància. La funció de distribució Gaussiana utilitza la

següent funció per calcular-ne la probabilitat.

(24)

Aquest tipus de funció de densitat de probabilitat genera funcions amb l’aspecte

de campana de Gauss.

Fig. 11. Diferents distribucions Gaussianes al variar els paràmetres de la mitjana aritmètica i la variància.

Abans que el sistema pretengui localitzar la persona que apareix en l’escena,

l’ha d’estudiar i construir el model de l’escena observada, sense que hi hagi persones

dins de l’escena. La seqüència d’imatges inicials típicament ha de ser d’un temps entre

1 i 2 segons per tal d’obtenir una bona estimació de la variància associada a cada píxel

de la imatge. Es defineix una μ0 com la mitjana aritmètica d’un punt en la superfície i

una per la variància de la distribució d’aquest punt. Amb cada nou frame, , s’aplica

un filtre adaptatiu i recursiu per actualitzar els valors estadístics dels píxels. La constant

α actua com la constant d’aprenantatge.

(25)

Per millorar l’eficiència, computacionalment parlant, que comporta aquest

estudi, es treballa amb l’espai de color YUV. S’utilitza la tècnica de selectivitat gràcies

al “mapa de suport” per classificar els píxels en funció de si pertanyen al background o

al foreground. Aquest algorisme és un dels primers en aparèixer i està pensat per ser

utilitzat en entorns interiors com oficines o aules.

4.2.2.2.3 Mixture of Gaussian - MoG

Chris Stauffer i W.E.L. Grimson en [3] presentaren una evolució de sistema

utilitzat per Wren i ho van combinar amb el que N. Friedman i S. Russell van iniciar en

sistemes de visió artificial: mescles de distribucions Gaussianes per classificar els

píxels. En [3] es classifiquen els píxel segons 3 distribucions Normals per tasques de

vigilància en sistemes de control de tràfic. Segons la intensitat del píxel es pondera una

mescla de 3 distribucions per determinar si el píxel forma part de la carretera, una

ombra o un vehicle.

Page 26: Algorisme De Detecció De Cossos En Moviment

26

En comptes de models explícits dels píxels com un tipus particular de

distribució, es crea per cada píxel un model particular amb una mescla de K

distribucions gaussianes. La determinació dels Gaussians que corresponen al

background de la imatge es basa en la persistència i la variància de les distribucions

gaussianes. Els valors dels píxels que no encaixen amb les distribucions del background

es consideren foreground, fins que aparegui una distribució amb consistència suficient

com per incloure’ls en el background.

Aquest sistema s’adapta de forma robusta als canvis d’il·luminació, als elements

que es mouen de forma repetitiva en l’escena, als objectes que es mouen lentament i als

objectes que s’introdueixen o s’extreuen d’ella. Els objectes que es mouen lentament

tarden més a incorporar-se en el background si els seus colors tenen una gran variància

respecte el model del fons de la imatge, en canvi el model és capaç d’aprendre les

variacions repetitives.

Si només fos la il·luminació el que canvia al llarg del temps, seria suficient un

model adaptatiu únic gaussià per cada píxel. A la pràctica cada píxel adopta valors que

presenten múltiples superfícies. Per tant és necessari construir un model que treballi

amb un conjunt de distribucions gaussianes per reduir l’error.

L’algorisme construeix el model a nivell de píxel a partir dels valors que adopta

al llarg del temps. Per exemple, en un moment donat t, se sap que els valors d’un píxel

concret en una seqüència d’imatges li corresponen els valors següents:

(26)

La història dels últims “t” valors del píxel es modelen en una barreja de

distribucions gaussianes. La probabilitat d’observar l’actual valor del píxel és:

(27)

Aquesta funció es defineix així:

(28)

El valor de K es determina segons la quantitat de memòria i la potència de càlcul

disponible. Normalment s’utilitzen valors entre 3 i 5. A més per qüestions de

computació s’assumeix que la matriu de covariància és de la forma:

Page 27: Algorisme De Detecció De Cossos En Moviment

27

(29)

Cada nou valor de píxel, , es testeja en les K distribucions gaussianes existents. Un píxel que es trobi dins del marge de 2.5 vegades la desviació estàndard,

compleix amb la distribució que s’estigui comprovant. Si el valor del píxel no satisfà

cap de les K distribucions, la distribució menys probable és substituïda per una nova

distribució amb la mitja com el nou valor, una alta variància i un pes baix associat a

aquesta distribució. Els pesos de les K distribucions en un moment t, és a dir , s’ajusten de la següent manera:

(30)

Després d’aquesta aproximació, els pesos es normalitzen. La constant de temps

que determina la velocitat en què els paràmetres de les distribucions canvien, ve definit

per 1/α. Els paràmetres μ i la σ de les distribucions que no s’han complert no

s’actualitzen. En canvi, els de les distribucions que sí s’han complert s’actualitzen

segons les expressions que segueixen:

(31)

On:

(32)

Aquest sistema dóna bons resultats tant per ambients interiors com per exteriors.

Es va utilitzar per fer tasques de seguiment de persones i de cotxes, peixos en tancs

d’aigua i detecció de formigues sobre el terra. En tots els casos es van fer servir

diferents càmeres, diferents intensitats de llum ambient i diferents objectes a seguir.

4.2.2.2.4 Kernel Density Estimation - KDE

Va ser desenvolupat i presentat per Ahmed Elgammal, David Harwood i Larry

Davis en [11]. Aquesta tècnica fa una estimació de la probabilitat de veure els valors de

la intensitat dels píxels a partir d’una mostra d’intensitats per cada píxel. El model

s’adapta ràpidament als canvis en l’escena cosa que permet una detecció molt sensible

dels objectes en moviment. A més, a partir de la informació del color s’elimina la

detecció d’ombres produïdes pels objectes que es troben en moviment.

L’objectiu d’aquesta tècnica és capturar informació recent per poder actualitzar

ràpidament la informació i ser capaç de detectar canvis ràpids en el model del

background. Com que la distribució de la intensitat d’un píxel pot canviar d’una forma

ràpida, s’ha d’estimar la funció de densitat d’aquesta distribució al llarg del temps, a

partir de la informació més recent si es vol aconseguir una detecció prou sensible.

Page 28: Algorisme De Detecció De Cossos En Moviment

28

Anomenem als valors de intensitat obtinguts d’un píxel particular en N mostres

més recents com: . Amb aquesta mostra, la funció de densitat de

probabilitat, que el valor en el moment “t” tingui aquest valor concret d’intensitat, es pot estimar utilitzant el kernel d’estimació K de la forma següent. Així no és necessari

parametritzar les variables de forma estadística.

(33)

Si s’escull el kernel d’estimació, K, com una funció normal de distribució

on representa l’ample de banda del kernel, la densitat de probabilitat es pot

estimar com:

(34)

Si s’assumeix la independència entre els diferents canals, en cas d’utilitzar algun

model de color, el kernel presenta diferents variàncies o amples de banda, , i aquests

es representarien com apareix a continuació. El terme “j” indica el número de canals

utilitzats. En un model normal com pot ser l’RGB aquest terme seria igual a 3.

(35)

En conseqüència l’estimació de la densitat es redueix a:

(36)

Mitjançant aquesta estimació de la probabilitat, el píxel es considera que pertany

al foreground si on el llindar th és un llindar global per tota la imatge i

s’ha d’ajustar per tal d’obtenir un percentatge reduït de falsos positius. Aquest sistema

es pot implementar mitjançant un codi més ràpid d’executar que la tècnica MoG.

Es pot dir que la tècnica d’estimació de la densitat de la probabilitat mitjançant

un kernel de funcions de distribucions Normals és una generalització de la tècnica MoG

on cada mostra de N mostres es considera una distribució de Gauss . Això permet estimar la densitat de la probabilitat de forma més simplificada. A més, permet

generar un model ràpidament, que “no recorda” el passat i es concentra més en la

observació més recent. Els resultats obtinguts demostren que el mètode KDE

proporciona una sensibilitat superior a la que presenta el mètode MoG de K

distribucions Gaussianes.

Per estimar la variància del kernel per cada un dels j canals de color utilitzats

per un píxel donat, es calcula la mediana de les desviacions absolutes entre els valors

d’intensitat consecutius obtinguts en el mostreig del píxel. La mediana es calcula de

Page 29: Algorisme De Detecció De Cossos En Moviment

29

forma independent per cada canal de color. Com que la mesura de les desviacions entre

parelles de valors consecutius ( provenen generalment de distribucions

semblants de forma local en el temps, s’espera que poques parelles de valors provinguin

de distribucions creuades. Per aquest motiu s’assumeix que les distribucions Normals,

, són locals en el temps. Llavors la desviació entre és Normal, de la

forma . Com que la distribució és simètrica, la mitjana de les desviacions

absolutes, m, permet calcular la desviació estàndard de i es pot estimar amb la següent expressió:

(37)

En ambients exteriors, existeixen diverses fonts de falsos positius, com pot ser el

moviment d’elements petits en la imatge, el de cas de les fulles dels arbres, o bé de les

vibracions sofertes per la càmera a causa del vent. És important que es realitzi un mòdul

que s’encarregui de suprimir les falses deteccions ocasionades per petits moviments no

modelats en el background de la imatge. En el treball [10] es presenta una segona fase

en la detecció del foreground en la que s’intenta reduir el número de falsos positius.

Posant per cas que, es detecta un píxel x, com un píxel que pertany al foreground

de la imatge, després de la primera fase de detecció. S’anomena el valor observat d’aquest píxel en el moment t. Es defineix la probabilitat de desplaçament del píxel com

que indica la probabilitat màxima que el valor observat, , pertanyi a algun píxel pertanyent a la zona de veïnatge de la distribució del fons de la imatge. Aquesta

zona es s’anomena i la màxima probabilitat a formar part d’una distribució del

fons de la imatge és:

(38)

A continuació s’aplica un llindar a i s’aconsegueix reduir el número de falsos positius obtinguts però també provoca l’eliminació d’alguns positius correctes per

aquest procés, ja que alguns dels píxels detectats poden semblar el fons de la imatge

d’algun píxel veí. Això és més freqüent quan es treballa amb imatges en escala de

grisos. Per evitar perdre massa positius correctes, s’afegeix una constant que indica que

tot l’objecte del foreground s’ha d’haver mogut des d’una posició veïna i no només dels

seus píxels. Així es defineix la probabilitat de desplaçament del component, , per

determinar la probabilitat que un component s’ha desplaçat des d’una posició

propera.

(39)

Si es considera un component connectat i aquest correspon a un objectiu real, la

probabilitat de què aquest component s’hagi desplaçat des del fons de la imatge és molt

baixa. És per això que per un píxel detectat es considerarà del background només si

compleix la condició següent:

Page 30: Algorisme De Detecció De Cossos En Moviment

30

(40)

Elgammal et al. en [11] utilitzen una regió de veïnatge de tipus circular de 5

píxels de diàmetre per calcular la probabilitat . Els valors dels llindars s’han de determinar de forma empírica per tal d’obtenir el resultat desitjat. El procés seguit es pot

apreciar en la figura que segueix.

Fig. 12. a) Imatge original. b) Resultat de la primera fase de detecció. c) Resultat posterior al filtratge

per alta probabilitat de desplaçament. d) Resultat d'aplicar la condició de desplaçament del component.

Fins ara s’ha parlat de com detectar regions de píxels que pertanyen al

foreground a partir d’una mostra recent històrica com un model del fons de la imatge.

Aquesta mostra conté N valors d’intensitat obtinguts en un temps que, de forma general

es dirà W. El l’ample de banda del kernel d’estimació requereix que les mostres siguin

consecutives en el temps. Aquestes N mostres s’han d’actualitzar de forma contínua per

tal d’adaptar els canvis en l’escena. El funcionament de l’actualització treballa amb

ordre cronològic de tipus FIFO (first in - first out), la mostra més vella de les

emmagatzemades se substitueix per la mostra més recent.

Donat un píxel nou, com ja s’ha explicat abans, hi ha dos mecanismes per

actualitzar el fons de la imatge:

1. Actualització selectiva: que consisteix en afegir la nova mostra en el model

només si aquest és classificat com una mostra del fons de la imatge.

2. Actualització a cegues: que directament introdueix la nova mostra en el model.

Cadascun presenta uns inconvenients diferents. En el primer cas, si es detecten

píxels com si fossin del foreground quan en realitat pertanyen al background, això

produeix que el model no s’actualitzi de forma correcta i no s’adapti al fons de la

imatge. En el segon cas, el problema que apareix és que el model del fons de la imatge

es vagi actualitzant mitjançant píxels que no pertanyen al fons de la imatge i aquest

quedi contaminat.

Page 31: Algorisme De Detecció De Cossos En Moviment

31

En [10] es decideix fer ús de models del fons de la imatge per solucionar els dos

problemes explicats en el paràgraf anterior.

1. Model a curt termini: el qual modelitza l’escena de forma molt recent. És

capaç d’adaptar-se a canvis ràpids i així permetre una detecció molt sensible.

Aquest model consisteix en les N mostres obtingudes més recents. Aquest model

utilitza el mecanisme de selectivitat, on la decisió d’actualitzar o no el model es

basa en una màscara la qual val 1 si el píxel p ha de ser actualitzat en el

moment t o 0 en cas contrari. S’espera que aquest model tingui dos tipus de

falsos positius: els falsos positius generats per successos estranys que no es

representen en el model, i els falsos positius persistents que haurien resultat de la

detecció incorrecta.

2. Model a llarg termini: aquest model captura la representació del fons de la

imatge i s’adapta als canvis lents. Aquest model consisteix en N mostres

obtingudes al llarg d’un temps més llarg. El mecanisme d’actualització és a

cegues la qual cosa s’espera que tingui més falsos positius per no ser el model

més recent, i més falsos negatius perquè els píxels dels objectius s’han inclòs en la mostra. Si es calcula la intersecció de dues deteccions, s’elimina la

persistència de falsos positius provinents del model de curt termini i s’eliminen

de la mateixa manera, falsos positius que es poden donar en els resultats del

model de llarg termini. Els falsos positius que segueixin apareixent seran

situacions que no són representades en cap dels models. Si aquestes situacions

persisteixen al llarg del temps en l’escena, llavors el model a llarg termini

s’adaptarà a elles i se suprimiran dels resultats al llarg del temps. Mitjançant la

intersecció, desafortunadament, se suprimeixen positius correctes en el resultat

del primer model que són falsos negatius en el segon, perquè el model a llarg

termini s’adapta als objectius com si fossin estàtics o es moguessin molt

lentament. Per acabar d’afinar el resultat, tots els píxels detectats pel model a

curt termini, que són adjacents a píxels detectats per la combinació, s’inclouen

en el resultat final.

4.2.2.2.5 Eigenbackgrounds

Nuria M. Oliver, Barbara Rosario i Alex P. Pentland presentaren amb [9] un

sistema de visió per computador per modelar la interacció humana mitjançant un

sistema de classificació Bayessià. Aquest sistema és una tècnica estadística que entrena

l’ordinador de forma supervisada i li ensenya al sistema a reconèixer els elements que

ha après. Oliver et al. tenien la intenció d’entrenar el sistema per tal reconèixer els

comportaments més habituals d’una sola persona i la interacció comuna entre dues

persones, com ara mantenir una conversa, caminar un al costat de l’altre, etc.

La primera fase d’aquest sistema és detectar i diferenciar els cossos en

moviment respecte el fons de la imatge. Aquesta segmentació s’aconsegueix mitjançant

un sistema que ha après l’escena. El problema d’aquest sistema és que necessita d’un

aprenentatge previ del fons de la imatge, que en descrigui les característiques

principals. Per cada objecte en moviment, es captura la informació que descriu

l’objecte, permetent que aquest pugui ser seguit mentre travessa oclusions temporals o

es reuneix amb altres objectes. Aplicant un filtre de Kalman es permet el seguiment de

la posició de l’objecte, la forma exterior, el color del patró i una estimació de la seva

velocitat.

Page 32: Algorisme De Detecció De Cossos En Moviment

32

Per la detecció i seguiment de vianants, s’utilitzen blobs característics de dues

dimensions. El terme blob, al llarg de la història de la imatge digital, ha tingut moltes

definicions matemàtiques diferents. La definició que actualment s’estableix és: un

conjunt compacte de píxels que comparteixen algunes característiques visuals que no

comparteixen els píxels que els envolten. Aquestes característiques poden ser el color,

textura, lluminositat, moviment, forma, o una combinació de les anteriors, o qualsevol

altra propietat espaciotemporal derivada d’un senyal (en aquest cas una seqüència de

vídeo).

El sistema que proposen per agrupar els píxels en blobs és analitzar el

moviment, perquè treballen amb una escena estàtica amb objectes en moviment. Per

detectar els objectes en moviment es construeix de forma adaptativa un espai propi, que

anomenen eigenspace, i que modela el background de la imatge (condicions de llum al

llarg del dia, etc).

L’espai propi es forma mitjançant la captura de N imatges de mostra i calculant

el valor mig de fons de la imatge i la seva matriu de covariància . Es diagonalitza

aquesta matriu mitjançant els valors propis , on és la matriu

d’autovectors de covariància de les dades i és la matriu diagonal dels seus autovalors. Per reduir la dimensió de l’espai, en el PCA o anàlisi de components

principals, només es tenen en compte M autovectors, els quals corresponen als

autovalors més grans, ja que aquests recullen la majoria d’informació que descriu la

imatge. D’aquesta manera s’obté la matriu d’autovalors . Com segueix, es forma un

vector que descriu una característica principal:

(41)

On és la imatge d’entrada, és la matriu que modela el fons de la imatge i

és el vector mig normalitzat:

(42)

Els objectes en moviment, com que no apareixen en la mateixa posició al llarg

de les N mostres i acostumen a ser petits, en el seu cas, ja que disposaven d’una càmera

situada a una gran alçada, no aporten una contribució significativa per generar el model.

En conseqüència, les regions d’imatge que contenen un objecte en moviment, no es

poden descriure correctament per aquest model d’espai propi (eigenspace), excepte en

casos inusuals en els que els objectes són similars al fons de la imatge i no es

diferencien suficientment. En qualsevol cas, l’eigenspace aporta un model robust de la

probabilitat de distribució del fons de la imatge, però no pels objectes en moviment.

Les imatges que modelen el fons de la imatge són emmagatzemades en la matriu

, així com el fons de la imatge mig en , es pot projectar cada imatge nova

obtinguda , sobre un espai presentat pel model del fons de la imatge:

(43)

A continuació calculant la distància euclidiana entre la imatge i la imatge

projectada sobre una base que descriu el fons, es poden detectar els objectes en

moviment presents en l’escena de la forma següent:

Page 33: Algorisme De Detecció De Cossos En Moviment

33

(44)

On th és un llindar establert.

La tasca d’adaptació del model és fàcil d’obtenir ja que es genera a partir de les

últimes N mostres i així es poden compensar canvis com ombres grans, objectes que

han entrat en la imatge i s’han aturat a formar part del fons o bé la mateixa variació de

la il·luminació al llarg del dia. L’avantatge que ofereix aquest sistema respecte el model

generat mitjançant una mescla de Gaussians (tècnica MoG) és que necessita d’una

menor càrrega computacional per portar a terme aquest mètode.

4.2.2.2.6 Altres mètodes estadístics

A partir dels mètodes vistos fins ara, han aparegut noves tècniques que

combinen i milloren les tècniques anteriors. Alguns exemples són:

Support Vector Machine (SVM) [13].

Support Vector Regression (SVR) [14].

Support Vector Data Description (SVDD) [17].

Single General Gaussian (SGG) [18].

Mixture of General Gaussian (MoGG) [21].

Subspace Learning using Independent Component Analysis (SL-ICA) [22].

Subspace Learning using Incremental Non-negative Matrix

Factorization (SL-INMF) [23].

Subspace Learning using Incremental Rank Tensor (SL-IRT) [24].

4.2.2.3 Mètodes per estimació

Els tres mètodes per estimació actuen com filtres per eliminar sorolls i treballen

buscant una estimació de com ha de ser el fons de la imatge respecte els valors obtinguts

fins al moment. Com que es tracta de tècniques recursives per realitzar l’estimació

treballen com certs “filtres electrònics” i és per això que s’anomenen filtres de Wiener,

Kalman i Chebyshev.

4.2.2.3.1 Filtre de Wiener

La utilització d’aquest filtre és proposat per Toyama, Krumm, Brummit i Meyers

en el treball conjunt que van realitzar en [16]. Consisteix en una tècnica d’estimació

lineal que es basa en la història dels “p” valors més recents. Es tracta d’una suma

ponderada de les mostres passades. La fórmula matemàtica del filtre de Wiener és:

(45)

Cada valor de es calcula mitjançant la covariància dels “p” últims valors. Si

un píxel amb el valor presenta una desviació superior a un llindar establert respecte al valor estimat d’aquest píxel, es declara pertanyent al foreground.

Page 34: Algorisme De Detecció De Cossos En Moviment

34

Sovint a continuació es calcula l’error quadràtic estimat, , utilitzant el mateix

conjunt de valors de la fórmula anterior.

(46)

Amb l’error quadràtic també s’estableix un llindar que si és superat, el píxel

comprovat també es declara que pertany al foreground.

4.2.2.3.2 Filtre de Kalman

Consisteix en una tècnica recursiva àmpliament utilitzada pel seguiment de

sistemes dinàmics sota soroll Gaussià. S’han proposat diferents versions d’aquesta

tècnica per modelar el fons de la imatge, que es diferencien dels espais d’estat utilitzats

pel seguiment. La versió més simple utilitza només la intensitat de la llum. Karmann i

von Brandt utilitzen la intensitat i la seva derivada [7], mentre que Koller, Weber i Malik utilitzen la intensitat i les derivades espacials [8]. A continuació es presenta de

forma breu de l’esquema utilitzat en [7]. L’algorisme recursiu és:

(47)

La matriu A descriu la dinàmica del fons de la imatge i H és la matriu de

mesura. Els valors concrets utilitzats en [7] són:

(48)

La matriu de Kalman del guany és la qual pot valer dos valors concrets en

funció de si s’havia considerat del foreground o del background.

(49)

Aquestes dues constants van directament relacionades amb l’adaptació del

model amb el fons de la imatge real. A més, cal comentar que és la constant

d’adaptació lenta i és la constant d’adaptació ràpida. Així doncs s’ha de complir que

.

4.2.2.3.3 Filtre de Chebyshev

Per altra banda, Chang, Gandhi i Trivedi en el seu treball [15] proposen la

utilització d’un filtre de tipus IIR (Infinite Impulse Response - Resposta Impulsional

Infinita). Això vol dir que, davant d’una entrada amb un senyal impulsional, la sortida

tindrà un nombre infinit de termes i mai tornarà al repòs. Concretament, es proposa la

utilització d’un filtre passa baixos de primer ordre de Chebyshev de tipus I. A nivell

Page 35: Algorisme De Detecció De Cossos En Moviment

35

analògic, aquest tipus de filtres presenten un rissat constant a la banda passant i

presenten una caiguda monòtona a la banda rebutjada.

Fig. 13. Exemple de resposta freqüencial del mòdul d’un filtre de Chebyshev

La utilització d’un filtre IIR passa baixos va dirigida a l’actualització del model

del fons de la imatge enfront dels canvis lents d’il·luminació que es produeixen.

L’avantatge que presenta és que el baix cost computacional que ofereix respecte el

mètode que combina distribucions gaussianes, per exemple, tot i que aquest és capaç de

detectar el foreground de la imatge de forma més precisa.

L’expressió que defineix el filtre digital de primer ordre de Chebyshev del tipus

I és:

(50)

Els termes s’han de calcular per satisfer les condicions de la freqüència de tall de la banda que passa.

4.2.2.4 Altres mètodes

Els anteriors mètodes no són els únics. També hi ha algorismes que treballen

amb lògica difusa per aplicar la tècnica de MoG, xarxes neurals del tipus Self

Organising Maps per estudiar el fons de la imatge i tècniques de clustering com són la

de K-means o un tipus d’algorisme anomenat Codebook. Aquest últim va guardant els

límits de diferents intervals de valors separats per una distància determinada i va

ampliant els límits a mesura que les mostres obtenen valors fora dels intervals però

propers a aquests.

4.2.3 Extracció d’ombres per millorar la detecció

Sovint les ombres generades pels objectes en moviment són classificades com

conjunts de píxels que pertanyen al foreground de la imatge i, en conseqüència,

redueixen la precisió de la detecció dels objectes. Tampoc s’han d’identificar com del

background perquè contaminarien el model del fons de la imatge. És per això que

interessa excloure-les del background i eliminar-les del foreground. Diversos autors han

proposat algorismes per extreure les ombres detectades i aconseguir millorar els positius

obtinguts. Entre ells destaquen Elgammal, Duraiswami, Harwood i Davis que, en el seu

treball [11] expliquen la tècnica que apliquen, utilitzant el mètode de Kernel Density

Estimation.

Page 36: Algorisme De Detecció De Cossos En Moviment

36

Tal i com ells indiquen, detectar les ombres com a regions que formen part del

foreground és una font de confusió per les fases d’anàlisis que es facin posteriorment .

És desitjable discriminar els objectes de les seves ombres. Treballar amb un model de

color és útil perquè permet suprimir les ombres separant la informació de color respecte

la informació d’il·luminació. Donades tres variables de color, R, G, i B, les coordenades

cromàtiques són els seus valors normalitzats. El seu càlcul apareix en l’equació 1 de la

secció 4.1.3.1 en el que es tracta del model de color RGB.

La utilització de les coordenades cromàtiques per realitzar la detecció té

l’avantatge que augmenta la insensibilitat del sistema a petits canvis en la il·luminació

produïdes per les ombres. La figura 14 mostra la diferència entre utilitzar el model de

color RGB respecte utilitzar dues components normalitzades d’aquest model, on es pot

apreciar que mitjançant l’ús del model de les components normalitzades, les ombres

generades pels elements del foreground no són detectades.

Fig. 14. a) Frame original. b) Detecció amb el model de color (R, G, B). c) Detecció amb el model de

color (r, g).

Tot i que l’ús de les coordenades cromàtiques ajudi a suprimir les ombres, tenen

un gran desavantatge: comporten la pèrdua d’informació relativa a la il·luminació. La

brillantor està relacionada amb la diferència entre el color blanc i el negre, i els diferents

grisos que es troben entre els diferents objectes. Per exemple, en el cas de considerar un

objectiu que porta una samarreta blanca i camina cap sobre un fons de color gris, no

existeix informació sobre el color. Tant el blanc com el gris es troben sobre les mateixes

coordenades cromàtiques i per tant, l’objectiu no es detectaria.

Per corregir aquest problema s’utilitza la mesura de la quantitat de llum de cada

píxel. Es defineix “s” com la mesura de la llum:

(51)

Es posa per cas que el fons de la imatge és totalment estàtic i que el valor per un

píxel és . S’assumeix que aquest píxel és tapat per una ombra en el frame “t” i el

valor obtingut per aquest píxel és . Per tant, s’espera que sigui menor que ,

ja que en principi ha de ser més fosc que el valor esperat fins a un valor límit . En resum:

(52)

Però no només pot succeir aquesta situació, sinó que també es pot donar que el

valor observat en el fons de la imatge brilli més que el valor esperat, i en conseqüència

la relació superi la unitat.

Page 37: Algorisme De Detecció De Cossos En Moviment

37

Com que el fons de la imatge que es té no és totalment immòbil, no hi ha un únic

valor esperat. Així doncs, es defineix A com el conjunt de valors mostrejats que

representen el fons de la imatge per cada píxel, on cadascun d’aquest valors es defineix

com . Es construeix el subconjunt B, , com una selecció de valors

del conjunt A que són rellevants pel valor observat de . Per valor rellevant s’entén com aquells valors de lluminositat de la mostra que es poden donar si el píxel és afectat

per ombres. Matemàticament s’expressa:

(53)

Els paràmetres i es fixen per tota la imatge. A través d’aquest subconjunt de mostres rellevants es calculen les matrius de kernels explicades en l’apartat que tracta el

mètode Kernel Density Estimation, mitjançant espais de colors normalitzats de dues

dimensions (r, g).

Una anàlisi més exhaustiva de les ombres és el que realitzen Cucchiara, Grana,

Piccardi i Parti en el seu treball [6], aportació que batejaren amb el nom Sakbot

(Statistical And Knowledge-Based ObjecT detection). Es realitza una classificació molt

més acurada dels elements detectats com foreground, que va més enllà de diferenciar

l’objecte de la seva ombra. La classificació que es realitza és la que apareix en la

diagrama que apareix a continuació.

Les diferents categories són:

a) Objecte en moviment (MVO).

b) Ombra de l’objecte en moviment (MVO SH).

c) Un fantasma (G).

d) Ombra fantasma (G SH).

Page 38: Algorisme De Detecció De Cossos En Moviment

38

Fig. 15. Exemple de classificació del sistema Sakbot

A grans pinzellades, la classificació dels elements del foreground es realitza

seguint les condicions que caracteritzen cadascun dels elements que s’indiquen a

continuació:

Imatge original

Background Foreground

Ombra

Ombra MVO

Ombra fantasma

Objecte

MVO Fantasma

Page 39: Algorisme De Detecció De Cossos En Moviment

39

5 Detecció de moviment amb el càlcul de l’entropia

espaciotemporal de la imatge

El mètode més utilitzat per detectar moviment és l’extracció dels fons de la

imatge el qual necessita d’un model del background que s’ha de mantenir per tal de fer-

ne l’extracció de la imatge que s’està visualitzant. L’ús d’un model del fons de la imatge

comporta una sèrie de problemes associats:

1. En cas d’utilitzar tècniques com SOG, MOG o KDF, el processat de les dades és

costós respecte altres mecanismes.

2. Les dades del fons de la imatge s’han d’emmagatzemar i mantenir adientment.

3. S’ha de tenir especial cura en el mecanisme d’adaptació del fons de la imatge.

És per això que s’han desenvolupat alternatives que permeten treballar sense

tenir un model del fons de la imatge. És per exemple el cas del mètode de detecció de

moviment basat en el càlcul de l’entropia espacial i temporal de la imatge, el qual no

necessita d’un model de fons de la imatge per tal de detectar els píxels que pertanyen al

foreground. Aquest mètode va ser proposat per Ma i Zhang en [1] i posteriorment

ampliat per Jing, Siong i Rajan en [2], article que ha servit de base de desenvolupament

d’aquest projecte. El procediment que presenta l’article s’ha transformat a codi i s’ha

introduït una sèrie de modificacions per millorar-lo.

Tot i que el concepte d’entropia és un concepte provinent de la teoria de la

informació, s’utilitza força en aplicacions en que s’hagi de diferenciar objectes en una

imatge. En canvi no és gaire utilitzada en mètodes de detecció de moviment. Per aquest

motiu consisteix en un mètode innovador respecte el que s’ha fet en la vessant

tradicional.

5.1 Concepte d’entropia

L’entropia és un concepte en termodinàmica, mecànica estadística i teoria de la

informació. L’entropia pot ser considerada com una mesura del desordre o incertesa que

existeix en qualsevol conjunt de dades. També s’anomena entropia la quantitat de soroll

o desordre que allibera un sistema.

L’entropia mesura l’aleatorietat i va ser presentada per Shannon en el seu article

de 1948 que porta per nom “A Mathematical Theory of Communication”. Shannon

aporta una definició per entropia que compleix les següents afirmacions:

La mesura d’informació ha de ser proporcional (contínua). És a dir, el canvi petit en una de les probabilitats d’aparició d’un dels elements d’una

senyal han de canviar poc l’entropia.

Si tots els elements de la senyal són equiprobables a l’hora d’aparèixer,

llavors l’entropia serà màxima.

Per exemple, si es pren un text escrit en català, la informació consisteix en una

cadena de lletres, espais i signes de puntuació. Estadísticament alguns caràcters no són

molt comuns, com per exemple la lletra “w”, mentre que d’altres com la lletra “e” sí ho

són. La cadena de caràcters que s’espera anar obtenint no és tan aleatòria com podria

semblar. Òbviament no es podrà predir amb total exactitud quin serà el següent caràcter

a aparèixer d’aquesta cadena i això li aporta la característica d’aleatorietat de què es

Page 40: Algorisme De Detecció De Cossos En Moviment

40

parla. En cas d’obtenir el missatge: “sfkbskfwlnasefbsaefkjn”, el qual posseeix una

longitud de 22 caràcters, es pot dir que aquest missatge arriba amb la màxima entropia

ja que és poc probable pronosticar l’entrada d’aquests caràcters perquè no estan

ordenats ni d’una forma predictiva i la cadena és d’una longitud superior a la mitjana.

5.1.1 Definició formal d’entropia

L’expressió matemàtica que defineix l’entropia és la següent.

(54)

5.2 Detecció de moviment basat en l’entropia

L’article de Jing, Siong i Rajan descriu com es calcula l’entropia dels píxels en

una seqüència d’imatges i el mètode que se segueix per identificar el moviment dins

d’aquesta seqüència. L’article divideix la seva explicació en dos apartats: l’STEI basat

en el treball [1] i el DSTEI que millora els resultats.

En una seqüència d’imatges obtinguda per càmera immòbil, el valor d’un píxel,

que té unes coordenades concretes, pot canviar de frame a frame per dos motius

diferents:

Per soroll introduït en un canal de la càmera com pot ser el parpalleig de la llum de l’entorn que s’està visualitzant.

Perquè un objecte s’està movent i produeix que el valor del píxel canviï de fons de la imatge a objecte o d’objecte a fons de la imatge.

Segons [1], un píxel que pot adoptar 256 valors diferents té 256 estats possibles i

el canvi d’un estat a l’altre se’l defineix com estat de transició. Al llarg del temps el

píxel va canviant d’estats. Els canvis d’estat generats per soroll consisteixen en canvis

d’estat pròxims entre ells, mentre que els canvis produït per moviment consisteixen en

canvis entre estats més distants. El càlcul de l’entropia pretén estudiar la diversitat

d’estats per cada píxel amb l’objectiu de caracteritzar la intensitat del moviment en la

seva posició.

5.2.1 Imatge d’Entropia Espacial i Temporal (STEI)

Per cada píxel de la seqüència d’imatges s’ha de calcular l’entropia. Els passos a

seguir per obtenir l’entropia dels píxels de les imatges capturades s’expliquen en els

apartats que venen a continuació, i són els següents:

1) Càlcul dels histogrames.

2) Càlcul de la probabilitat dels histogrames.

3) Càlcul de l’entropia.

4) Quantització en escala de grisos.

Page 41: Algorisme De Detecció De Cossos En Moviment

41

5) Determinació dels píxels que pertanyen al foreground.

5.2.1.1 Càlcul dels histogrames

S’utilitza un histograma de caràcter temporal per cada píxel en el que també

s’emmagatzemen els valors del píxels que formen el veïnatge de cada píxel. La

generació de l’histograma presenta dos aspectes importants:

a) La finestra d’acumulació ( accumulating window).

b) Nombre de valors de quantització.

5.2.1.1.1 Accumulating window

Per obtenir l’histograma de cada píxel s’aplica l’anomenada “accumulating

window” (finestra d’acumulació, en anglès). Aquesta finestra s’encarrega d’estudiar el

valor que prenen al llarg del temps de cada píxel i els píxels que l’envolten. D’aquesta

manera no només es fa un estudi temporal del valors dels píxels, sinó que a més

s’analitza els valors que prenen els píxels que entren dins de l’abast de la finestra

d’acumulació. Aquesta finestra té una profunditat temporal de i una àrea

espacial quadrada de .

La finestra d’acumulació es pot representar gràficament tal i com apareix en la següent imatge. Per simplificar la representació gràfica, la imatge que es mostra

representa que s’està treballant únicament amb un canal.

Fig. 16. Representació gràfica de la finestra d’acumulació.

Tal i com es pot observar, el número total de píxels analitzats per generar

l’historial espaciotemporal per un píxel amb coordenades (r,c) és:

(55)

En l’article s’indica que es fan servir els següents valors:

5.2.1.1.2 Nombre de valors de quantització

Tot i que un píxel pugui adquirir 256 possibles valors diferents, per tal de

augmentar la robustesa de l’algorisme incrementant la seva insensibilitat a canvis petits,

els 256 valors que poden adquirir els píxels es quantitzen en “Q” valors possibles on

Page 42: Algorisme De Detecció De Cossos En Moviment

42

Q<256. Dit en altres paraules, si la càmera és capaç de donar 256 valors diferents per

píxel, la quantització provoca que l’algorisme només en llegeixi Q valors diferents.

L’histograma d’un píxel amb coordenades (r,c) ve simbolitzat per on “q”

pot valer qualsevol dels “Q” valors que es poden tenir. Per tant l’histograma serà:

(56)

En [2] s’indica que s’ajusta:

.

5.2.1.2 Càlcul de la probabilitat dels histogrames

El següent pas és calcular la funció de densitat de probabilitat de cada píxel

( mitjançant la normalització del seu histograma. Això és:

(57)

Per tant s’ha de complir que:

(58)

5.2.1.3 Càlcul de l’entropia

Una vegada s’ha calculat la funció de densitat de probabilitat de cada píxel, es

passa a calcular l’entropia del píxel ( ). Aplicant el que s’ha vist anteriorment,

l’entropia es calcularà de la forma següent:

(59)

5.2.1.4 Quantització en escala de grisos

A cada píxel li correspon una entropia concreta. El valor de l’entropia de cada

píxel s’ha de quantitzar en una imatge en escala de 256 grisos per obtenir la imatge

d’energia que porta per nom imatge d’entropia espacial i temporal (STEI).

5.2.1.5 Determinació dels píxels que pertanyen al foreground

En [1] s’apliquen tècniques morfològiques com erosions i dilatacions per

eliminar els contorns i petits punts de soroll per la determinació dels objectes que es

troben en moviment. A continuació s’eliminen els píxels que es troben per sota d’un

llindar d’entropia mínima per filtrar els píxels que no presenten suficient entropia com per considerar que es tracta de píxels d’un objecte en moviment. D’aquesta manera

s’aconsegueix eliminar el soroll generat per elements que presenten una certa dinàmica i

que no pertanyen al foreground de la imatge, com podrien ser possibles fulles d’arbres.

Page 43: Algorisme De Detecció De Cossos En Moviment

43

5.2.1.6 Problemàtica que presenta la imatge STEI

A causa de l’anàlisi espacial que es duu a terme amb l’aplicació de la finestra

d’acumulació, resulta que els contorns dels objectes són píxels que generen molta

entropia ja que es troben al límit entre dos valors molt diferents. Aquest fet comporta

que la imatge STEI obtinguda no només presenti una elevada entropia en les zones de

moviment, sinó que també sorgeixi en els contorns més pronunciats dels objectes que

apareixen en la imatge. A continuació es mostren dos exemples d’imatges STEI. La

columna de l’esquerra consisteix en l’anàlisi d’una escena nocturna a l’exterior mentre

que les imatges de la columna s’han obtingut en l’anàlisi d’un ambient interior,

concretament la biblioteca del Campus Sescelades de la Universitat Rovira i Virgili.

Ambdues anàlisis s’han realitzat amb l’algorisme desenvolupat en aquest projecte i es

pot veure visualitzar com els contorns i els objectes en moviment presenten una elevada

entropia.

Fig. 17. Exemples d'imatges de tipus STEI i captures originals.

5.2.2 Imatge d’Entropia Espacial i Temporal per Diferència

d’Imatges (DSTEI)

Jing, Siong i Rajan proposen amb [2] una millora del mètode STEI per poder fer

front al problema provocat pels píxels que, a causa de la seva estructura espacial,

generen una alta entropia. La millora consisteix en calcular la diferència entre imatges i

a continuació calcular-ne la seva entropia espacial i temporal. Els passos a seguir són:

1) Calcular la diferència absoluta entre imatges.

2) Càlcul de l’histograma.

3) Obtenció de la DSTEI.

4) Determinació i localització dels píxels que pertanyen al foreground.

5.2.2.1 Calcular la diferència absoluta entre imatges

Les imatges es capturen utilitzant el model de color RGB. A continuació es

transformen en imatges d’escala de 256 grisos. Cada imatge en escala de grisos

Page 44: Algorisme De Detecció De Cossos En Moviment

44

s’anomenarà , on k és el número del frame. La imatge de la diferència s’anomena

i es calcula segons l’expressió següent:

(60)

5.2.2.2 Càlcul dels histogrames

Pels primers , des de fins a , es proposa calcular l’histrograma

acumulat de de la següent forma:

(61)

A continuació, es proposa utilitzar l’expressió recursiva que segueix per calcular

l’histograma dels nous frames:

(62)

El valor de s’ajusta empíricament a base de proves analitzant l’efecte en el

resultat que comporta la seva modificació. En [2] es mostra un exemple d’una mateixa

imatge d’entropies per a diferents valors de la constant Com més gran és el valor de

, és llarg és el rastre del cos que es troba en moviment.

Fig. 18. Efecte de la constant de recursivitat en la imatge d'entropies generada. [D’esquerra a dreta]

α=0.9 , α=0.8 , α=0.7

5.2.2.3 Obtenció de la imatge DSTEI

Quan es té l’histograma acumulat de cada píxel, s’aplica la funció de densitat de

probabilitat tal i com s’aplicava en el cas de la generació de la imatge STEI,

normalitzant l’histograma obtingut.

(63)

Page 45: Algorisme De Detecció De Cossos En Moviment

45

Es realitza el càlcul de l’entropia.

(64)

Els diferents valors d’entropia dels píxels es quantitzen en una escala de 256

grisos per obtenir la imatge DSTEI. Mitjançant la utilització d’aquest mètode s’eliminen

els píxels que pertanyen al fons de la imatge i que per qüestions estructurals de la

imatge generen molta entropia en el cas de la imatge STEI.

5.2.2.4 Localització dels píxels que pertanyen al foreground

L’últim pas consisteix en localitzar els píxels que pertanyen al foreground, pas

que en el cas de les imatges DSTEI és molt més senzill de realitzar ja que en general els

píxels amb més entropia destaquen sobre un fons que no presenta entropia. Els conjunts

de píxels del foreground es poden localitzar utilitzant funcions d’anàlisi de blobs o de

contorns. Aquestes funcions permeten obtenir els conjunts que satisfan certes

característiques, com per exemple, els blobs que presenten una àrea mínima per filtrar

píxels d’objectes petits que no interessa localitzar o bé de soroll que no s’han pogut

filtrar en fases anteriors.

5.2.2.5 Conclusions de la generació de la imatge DSTEI

Es pot comprovar la diferència entre les imatges STEI respecte les DSTEI si

s’observen les captures que apareixen a continuació, les quals s’han obtingut en les

mateixes condicions que les que s’han exposat anteriorment. L’entropia associada als

contorns que s’obté mitjançant la generació d’imatges STEI, en el cas de les imatges

DSTEI queda anul·lada. En canvi, els píxel corresponents a objectes que es troben en

moviment presenten una elevada entropia que destaca sobre el fons de la imatge que

apareix en negre.

Fig. 19. Exemple d'imatges DSTEI i captures originals

Page 46: Algorisme De Detecció De Cossos En Moviment

INFORMACIÓ CONFIDENCIAL

Aquest projecte conté informació confidencial que no ha estat publicada, per obtenir més informació adreçar-se a:

Albert Oller Pujol Teléfon: 977 559 704 Fax: 977 559 605 E-mail: albert.oller@ urv.cat

Page 47: Algorisme De Detecció De Cossos En Moviment

104

8 Conclusions

En el camp de la visió artificial no existeixen solucions úniques per resoldre un

problema concret perquè tant els entorns de treball poden ser molt variats. En el cas de

la segmentació dels objectes en moviment respecte el fons de la imatge, ni que

comparteixin un mateix objectiu, les solucions que han aparegut en els últims anys són

molt variades tal i com s’ha explicat a l’apartat 4. Alguns dels mètodes que s’han

desenvolupat treballen amb un model del fons de la imatge que es va adaptant al llarg

del temps. D’altres no utilitzen un model del fons de la imatge, sinó una mostra

històrica de les últimes imatges capturades, com és el cas del mecanisme de detecció

utilitzat en aquest projecte.

El mètode de detecció de l’algorisme desenvolupat en aquest projecte basa el seu

funcionament en el càlcul de l’entropia espaciotemporal de les imatges capturades en

temps real, a partir de les equacions presentades als articles científics de Zhang [1] i

Zing et al [2]. S’ha fet una aplicació que permet la utilització de dos mètodes diferents:

un a partir del càlcul de l’entropia temporal de les imatges, i l’altre a partir del càlcul de

l’entropia espaciotemporal de diferència d’imatges consecutives.

En aquest projecte s’han introduït modificacions respecte als mètodes originals

que milloren els resultats obtinguts. S’han portat a terme diferents anàlisis modificant

els paràmetres que intervenen en les equacions per tal d’estudiar el seu efecte sobre les

imatges d’entropia generades. Les anàlisis s’han portat a terme en diferents entorns

perquè l’algorisme ha de ser capaç de treballar en entorns reals on es difícil controlar les

condicions de funcionament, tal i com succeeix en proves de laboratori.

En aquest projecte s’han elaborat el manual d’instal·lació per guiar a l’usuari que

hagi d’instal·lar el programa en Roinbot®, així com un manual d’usuari per permetre a

l’usuari final fer ús de l’aplicació i poder adequar les seves variables segons li

convingui. En els apartats finals dels dos tipus de mètodes de detecció, s’estableixen uns

rangs de valors recomanables per orientar l’ajust dels paràmetres.

El programa inicia l’execució important les variables des d’un fitxer que conté

els paràmetres necessaris per dur a terme el procés de detecció. Per tal que l’usuari

pugui ajustar les variables i adequar-les a l’entorn de treball, s’ha dotat al programa

d’una interfície gràfica que permet la seva modificació de forma manual sense haver de

reiniciar la seva execució per modificar-les a través del fitxer d’importació.

A partir del resultats obtinguts, l’empresa està satisfeta amb el treball

desenvolupat i estudiarà la introducció de l’algorisme en el robot. En aquest sentit cal

comentar que el programa que s’ha creat és fàcilment compilable per a SO Linux.

Finalment, aquest projecte m’ha permès combinar els coneixements adquirits al

llarg del segon cicle, especialment les àrees d’Instrumentació, Sistemes de Percepció i

Sistemes informàtics en Temps Real. A més, he après a programar en C#, llenguatge de

programació orientat a objectes derivat dels llenguatges C i C++. Gràcies al

desenvolupament d’aquest projecte, he pogut aprofundir en el camp dels sistemes de

visió artificial, camp que des de sempre ha despertat un interès especial en mi.

Page 48: Algorisme De Detecció De Cossos En Moviment

INFORMACIÓ CONFIDENCIAL

Aquest projecte conté informació confidencial que no ha estat publicada, per obtenir més informació adreçar-se a:

Albert Oller Pujol Teléfon: 977 559 704 Fax: 977 559 605 E-mail: albert.oller@ urv.cat

Page 49: Algorisme De Detecció De Cossos En Moviment

118

11 Referències i bibliografia

11.1 Referències

[1]. Ma, Y. Zhang, H. Detecting motion object by spatial-temporal entropy.

Proc. IEEE International Conference on Multimedia and Expo, pp. 265-268, 2001.

[2]. Jing, G. Siong, C. Rajan, D. Foreground motion detection by difference-

based spatial temporal entropy image. Proc. TENCON 2004. IEEE Region 10

Conference. Vol. 1, pp. 379-382, 2004.

[3]. Stauffer, C. Grimson, W. Adaptive background mixture models for real-time

tracking. Proc. Computer Vision and Pattern Recognition. IEEE Computer Society

Conference. Jun, 1999.

[4]. Open CV Wiki. [actualitzat 1 Oct 2010; citat 1 Nov 2010]. Disponible a:

http://opencv.willowgarage.com/wiki/.

[5]. Emgu CV: OpenCV en .NET (C#, VB, C++ and more.) [actualitzat 16 Oct

2010; citat 1 Nov 2010]. Disponible a: http://www.emgu.com/.

[6]. Cucchiara, R. Grana, C. Piccardi, M. Prati, A. Detecting Moving Objects,

Ghosts, and Shadows in Video Streams. Proc. IEEE Transactions on Pattern Analysis

and Machine Intelligence, vol. 25, no.10, Oct. 2003.

[7]. Karmann, K. Brandt, A. Moving object recognition using and adaptive

background memory. Proc. Time-Varying Image Processing and Moving Object

Recognition, V. Cappellini, ed., 2, pp. 289-307, Elsevier Science Publishers B.V., 1990.

[8]. Koller, D. Weber, J. Malik, J. Robust multiple car tracking with occlusion

reasoning. Tech. Rep. UCB/CSD- 93-780, EECS Department, University of California,

Berkeley, Oct 1993.

[9]. Wren, CR. Azarbayejani, A. Darrell, T. Pentland, AP. Pfinder: Real-Time

Trackingof the Human Body. Proc. IEEE Transactions on Pattern Analysis and Machine

Intelligence, vol. 19, no. 7, Jul1997.

[10]. Elgammal, A. Harwood, D. Davis, L. Non-parametric Model for

Background Subtraction. Proc. IEEE Frame-Rate Workshop, 1999.

[11]. Elgammal, A. Duraiswami, R. Harwood, D. Davis, L. Background and

Foreground Modeling Using Nonparametric Kernel Density Estimation for Visual

Surveillance. Proc. IEEE, vol. 90, pp. 1151-1163.

[12]. Oliver, N. Rosario, B. Pentland A. ,A Bayesian Computer Vision System for

Modeling Human Interactions. Proc. IEE Transactions on Pattern Analysis and Machine

Intelligence, vol. 22, no. 8, pp. 831-843, Aug 2000.

[13] H. Lin, T. Liu, J. Chuang, A probabilistic SVM approach for background

scene initialization, ICIP 2002, Vol. 3, pp 893-896, Rochester, New York, September

2002.

Page 50: Algorisme De Detecció De Cossos En Moviment

119

[14] J. Wang, G. Bebis, R. Miller, Robust Video-Based Surveillance by

Integrating Target Detection with Tracking, IEEE Workshop on Object Tracking and

classification Beyond the Visible Spectrum in conjunction with CVPR 2006, New York,

NY, June 2006.

[15]. Chang, R. Gandhi, T. Trivedi M. Vision Modules for a Multi-Sensory

Bridge Monitoring Approach. Proc.

IEEE Conference on Intelligent Transport Systems,

Oct 2004.

[16]. Toyama, K. Krumm, J. Brumitt, B. Meyers, B. Wallflower: Principles and

practice of background maintenance. Proc. ICCV (1), pp. 255-261, 1999.

[17] A. Tavakkoli, M. Nicolescu, G. Bebis, A Novelty Detection Approach for

Foreground Region Detection in Videos with Quasi-stationary Backgrounds, ISVC

2006, pp 40-49, Lake Tahoe, USA, November 2006.

[18] H. Kim, R. Sakamoto, I. Kitahara, T. Toriyama, K. Kogure, “Robust

Foreground Extraction Technique Using Gaussian Family Model and Multiple

Thresholds”, 8th Asian Conference on Computer Vision, ACCV2007, LNCS 4843,

pages 758-768, Tokyo, Japan, November 2007.

[19]. Technical Specifications Logitech Quickcam Sphere AF. [citat 23 Gen

2011]. Disponible a: http://www.dooyoo.co.uk/pdf/web-cam/logitech-quickcam-sphere-

af/logitech_quickcam_sphere_af.pdf/.

[20]. Datasheet Logitech QuickCam Sphere AF [citat 23 Gen 2011]. Disponible

a: http://docs-europe.origin.electrocomponents.com/.

[21] M. Allili, N. Bouguila, D. Ziou, A Robust Video Foreground Segmentation

by Using Generalized Gaussian Mixture Modeling, Fourth Canadian Conference on

Computer and Robot Vision, CRV 2007, pp 503-509, 2007

[22] M. Yamazaki, G. Xu, Y. Chen, Detection of Moving Objects by

Independent Component Analysis, ACCV 2006, pp 467-478, 2006.

[23] S. Bucak, B. Gunsel, O. Gursoy, Incremental Non-negative Matrix

Factorization for Dynamic Background Modeling, International Workshop on Pattern

Recognition in Information Systems, Funchal, Portugal, June 2007

[24] X. Li, W. Hu, Z. Zhang, X. Zhang, Robust Foreground Segmentation Based

on Two Effective Background Models, MIR 2008, pp 223-228, Vancouver, Canada,

October 2008.

11.2 Bibliografia

Rymel, J. Renno, J. Greenhill, D. Orwell, J. Jones, GA. Adaptative Eigen-

Backgrounds for Object Detection. Proc. ICIP 2004. International Conference, vol.3,

pp. 1847- 1850, 2004.

Yao, X. Qian, Q. Background Subtraction for Surveillance Systems Using an

Iterative Uniform Operator. Proc. 7th World Congress on Intelligent Control and

Automation, June 2008.

Page 51: Algorisme De Detecció De Cossos En Moviment

120

Mittal, A. Paragios, N. Motion-Based Background Subtraction using Adaptive

Kernel Densit Estimation Proc. CVPR (2), pp.302-309, 2004.

Atev, S. Masoud, O. Papanikolopoulos, N. Practical Mixtures of Gaussians

with Brightness Monitoring. Proc. IEEE Intelligent Transpoltation Systems Conference,

pp. 423-428, Oct 2004.

Wang, L. Wang, L. Wen, M. Zhuo, Q. Wan, W. Background Substraction Using

Incremental Subspace Learning. Proc. ICIP, pp. 45-48, 2007.

Matsuyama, T. Ohya, T. Habe, H. Background Substraction for Non-Stationary

Scenes. Proc. Asian Conference on Computer Vision, pp. 662-667.

Wang, D. Feng, T. Shum, H. Ma, S. A Novel Probability Model for Background

Maintenance and Subtraction. Proc. 15th International Conference on Vision Interface;

2002.

Monnet, A. Mittal, A. Paragios, N. Ramesh, V. Background Modeling and

Subtraction of Dynamic Scenes. Proc. ICCV, pp.1305-1312, 2003.

Mahadevan, V. Vasconcelos, N. Background Subtraction in Highly Dynamic

Scenes. Proc: Computer Vision and Pattern Recognition, Jun 2008.

McIvor, A. Background Subtraction Techniques. International Conference on

Image and Vision Computing, Auckland, New Zealand, 2000.

Ferrari, A. Bleggi, L. Studio ed implementazione dell’algoritmo di Morion

Detection di Davis et al. Università degli Studi di Milano. Facoltà di Scenze

Matematich Fisiche e Naturali, 2008.

Kima, K. Chalidabhongseb, T. Harwooda, D. Davisa, L. Real-time foreground–

background segmentation using codebook model. Elsevier, 2005

Calic, J. Izquierdo, E. Eficient Key-Frame Extraction and Video Analysis. Proc.

ITCC, pp.28-33, 2002.

Banerjee, P. Sengupta, S. Human Motion Detection and Tracking for Video

Surveillance. National Conference for Communication, 2008.

Cheung, S. Kamath, C. Robust techniques for background subtraction in urban

traffic video. Video Communications and Image Processing, Proceedings, Volume

5308, SPIE Electronic Imaging, pp.881-892, Jan 2004.

Chen, Y. Chen, C. Huang, C. Hung, Y. Efficient hierarchical method for

background subtraction. Elsevier, Nov 2006.

Nascimento, J. Marques, J. Performance evaluation of object detection

algorithms for video surveillance. Proc.IEEE Transactions on Multimédia, vol. 8, no. 4,

August, pp. 761-774, 2006.

Zhong, B. Liu, S. Yao, H. Zhang, B. Multi-Resolution Background Subtraction

for Dynamic Scenes. Proc, ICIP, pp. 3193-3196, 2009.

Cheng, L. Gong, M. Realtime Background Subtraction from Dynamic Scenes.

Proc, International Conference on Computer Vision, Sept 2009.

Page 52: Algorisme De Detecció De Cossos En Moviment

121

Cheung, S. Kamath, C. Robust Background Subtraction With Foreground

Validation For Urban Traffic Video. Eurasip Journal on Applied Signal Processing,

Volume 14, pp 1-11, 2005.

Zhang, S. Yao, H. Liu, S. Spatial-Temporal nonparametric background

subtraction in dynamic scenes.

El Baf, F. Bouwmans, T. Vachon, B. Type-2 Fuzzy Mixture of Gaussians Model:

Application to Background Modeling. 4th International Symposium on Visual

Computing, pp. 772-781, Dec 2008.

Collins, R. Lipton, A. Kanade, T. Fujiyoshi, H. Duggins, D. Tsin, Y. et al. A

System for Video Surveillance and Monitoring. Technical Report CMU-RI-TR-00-12,

Robotics Institute, Carnegie Mellon University, 2000.

Makhoul, J. Linear Prediction: A Tutorial Review. Proc. IEEE, vol.63, no.4,

pp.561-580, Apr 1975.

Page 53: Algorisme De Detecció De Cossos En Moviment

INFORMACIÓ CONFIDENCIAL

Aquest projecte conté informació confidencial que no ha estat publicada, per obtenir més informació adreçar-se a:

Albert Oller Pujol Teléfon: 977 559 704 Fax: 977 559 605 E-mail: albert.oller@ urv.cat