estudo e implementa¸c˜ao de um sistema para monitoramento ... · para contagem de ve´ıculos em...
Post on 21-Jan-2019
219 Views
Preview:
TRANSCRIPT
Gabriel Irribarem Soares Ruas
Victor Alberto Parcianello Benso
Estudo e implementacao de um sistema
para monitoramento do fluxo de veıculos
em cruzamentos urbanos atraves de vıdeo
digital
Curitiba – PR
Novembro / 2006
Gabriel Irribarem Ruas
Victor Alberto Parcianello Benso
Estudo e implementacao de um sistema
para monitoramento do fluxo de veıculos
em cruzamentos urbanos atraves de vıdeo
digital
Trabalho apresentado como requisito da dis-ciplina Projeto de Graduacao
Orientador: Prof. Dr. Evelio Martın Garcıa Fernandez
Co-Orientador: Marcus Vinicius Lamar,Ph.D.
Departamento de Engenharia EletricaSetor de Tecnologia
Universidade Federal do Parana
Curitiba – PR
Novembro / 2006
Dedicamos esta dissertacao aos nossos pais, irmaos,
namoradas e amigos que de forma ımpar
nos apoiaram na realizacao deste projeto.
Agradecimentos
Dedico meus sinceros agradecimentos para:
– Aos Professores Doutores Marcus Vinicus Lamar e Evelio Martın Garcıa Fernandez
pelas insistentes revisoes solicitadas e pelas crıticas altamente construtivas que contribui-
ram em muito para a realizacao deste projeto;
– A equipe do Laboratorio de Processamento de Vıdeo Digital nas pessoas de Ticiano
Bragatto e Andre Leone, que nao pouparam esforcos nos auxiliando na obtencao de dados
experimentais;
– Ao professor da disciplina de projeto final, pelo apoio sempre manifestado;
– Ao Centro de Formacao de Recursos Humanos em Transporte da Universidade de
Brasılia, pelo financiamento do projeto;
“A atividade da engenharia, enquanto permanecer atividade,
pode levar a criatividade do homem a seu grau maximo;
mas, assim que o construtor para de construir e se entrincheira
nas coisas que fez, as energias criativas se congelam,
e o palacio se transforma em tumba.”
Marshall Berman
Resumo
Este trabalho apresenta uma nova metodologia baseada em processamento de vıdeopara contagem de veıculos em cruzamentos e vias urbanas. O objetivo deste projeto edemonstrar a viabilidade tecnica do uso de tecnicas de visao computacional para a cons-trucao de um equipamento portatil que realize a contagem de fluxo de veıculos urbanosde forma completamente automatica. Tecnicas de processamento de imagens, tais comosubtracao de fundo, definicao e rastreamento de caracterısticas de objetos quaisquer fo-ram utilizadas no desenvolvimento e implementacao do prototipo. Os resultados obtidos,demonstram a viabilidade tecnica, atingindo taxas de acerto da ordem de 91.3% para viasde mao dupla e 83.3% em cruzamentos mais complexos.
Sumario
Lista de Figuras
Lista de Tabelas
1 Introducao p. 12
2 Revisao Bibliografica p. 14
2.1 Sistemas com Modelagem Tridimensional da Cena . . . . . . . . . . . . p. 14
2.2 Sistemas Monoculares de Rastreamento . . . . . . . . . . . . . . . . . . p. 16
2.2.1 Rastreamento de Contornos . . . . . . . . . . . . . . . . . . . . p. 16
2.2.2 Rastreamento de Caracterısticas . . . . . . . . . . . . . . . . . . p. 17
3 Sistema Proposto p. 18
3.1 Estrutura do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 19
3.1.1 Captura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 20
3.2 Subtracao de Fundo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 23
3.2.1 Mistura de Gaussianas . . . . . . . . . . . . . . . . . . . . . . . p. 24
3.2.2 Scoreboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 26
3.2.3 Motion Templates . . . . . . . . . . . . . . . . . . . . . . . . . . p. 27
3.2.4 Comparacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 27
3.3 Segmentacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 28
3.4 Identificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 28
3.5 Rastreamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 29
3.5.1 Cria CARROS . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 29
3.5.2 Extrai caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . p. 29
3.5.3 Segue caracterısticas . . . . . . . . . . . . . . . . . . . . . . . . p. 30
3.5.4 Estima CARRO . . . . . . . . . . . . . . . . . . . . . . . . . . p. 31
3.5.5 Corrige Referencias . . . . . . . . . . . . . . . . . . . . . . . . . p. 31
3.5.6 Apaga CARROS . . . . . . . . . . . . . . . . . . . . . . . . . p. 32
3.6 Contagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 32
3.7 Interface Grafica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 32
3.7.1 Operacao do Sistema . . . . . . . . . . . . . . . . . . . . . . . . p. 33
3.7.2 Especificacao do cruzamento . . . . . . . . . . . . . . . . . . . . p. 33
3.7.3 Especificacoes de processamento . . . . . . . . . . . . . . . . . . p. 33
3.7.4 Controles da Camera . . . . . . . . . . . . . . . . . . . . . . . . p. 34
3.7.4.1 Exposicao . . . . . . . . . . . . . . . . . . . . . . . . . p. 34
3.7.4.2 Obturador . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
3.7.4.3 Ganho . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
3.7.4.4 Brilho . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
3.7.4.5 Nitidez . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
3.7.4.6 Gama . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 36
3.7.4.7 Saturacao . . . . . . . . . . . . . . . . . . . . . . . . . p. 36
3.7.4.8 Balanco de Branco . . . . . . . . . . . . . . . . . . . . p. 37
3.7.5 Elaboracao de Relatorios . . . . . . . . . . . . . . . . . . . . . . p. 37
4 Resultados Obtidos p. 38
4.1 Resultados em Vias Simples . . . . . . . . . . . . . . . . . . . . . . . . p. 38
4.2 Resultados em Cruzamentos . . . . . . . . . . . . . . . . . . . . . . . . p. 40
4.3 Recursos do Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 45
4.3.1 Desenvolvimento . . . . . . . . . . . . . . . . . . . . . . . . . . p. 45
4.3.2 Prototipo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 45
4.3.3 Analise de Mercado . . . . . . . . . . . . . . . . . . . . . . . . . p. 46
5 Conclusao p. 48
Referencias p. 50
Lista de Figuras
1 Fluxograma de processamento em algoritmo com modelagem 3D. . . . p. 15
2 Fluxograma de processamento da proposta . . . . . . . . . . . . . . . . p. 16
3 Fluxo de processo do software desenvolvido . . . . . . . . . . . . . . . . p. 20
4 Cruzamento da rua Santa Quiteria . . . . . . . . . . . . . . . . . . . . p. 21
5 Cruzamento da rua Francisco H. dos Santos . . . . . . . . . . . . . . . p. 21
6 Comparativo entre lentes . . . . . . . . . . . . . . . . . . . . . . . . . . p. 22
7 Pixel com gaussianas concentradas . . . . . . . . . . . . . . . . . . . . p. 25
8 Pixel com gaussianas espalhadas . . . . . . . . . . . . . . . . . . . . . . p. 25
9 Fluxograma de funcionamento da etapa rastreadora . . . . . . . . . . . p. 30
10 Janela para marcacao de vias . . . . . . . . . . . . . . . . . . . . . . . p. 33
11 Janela para ajuste dos parametros de operacao . . . . . . . . . . . . . . p. 34
12 Influencia da exposicao . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
13 Influencia do brilho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35
14 Influencia da nitidez . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 36
15 Influencia da correcao de gama . . . . . . . . . . . . . . . . . . . . . . p. 36
16 Influencia da saturacao . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 36
17 Influencia do balanco de branco . . . . . . . . . . . . . . . . . . . . . . p. 37
18 Sistema monitorando fluxo em vias simples . . . . . . . . . . . . . . . . p. 38
19 Sistema monitorando fluxo em vias simples . . . . . . . . . . . . . . . . p. 39
20 Resultados da contagem para o cruzamento da Figura 18. . . . . . . . . p. 40
21 Resultados da contagem para o cruzamento da Figura 19 . . . . . . . . p. 40
22 Sistema monitorando fluxo em cruzamento . . . . . . . . . . . . . . . . p. 41
23 Sistema monitorando fluxo em cruzamento . . . . . . . . . . . . . . . . p. 41
24 Resultados da contagem para o cruzamento da Figura 22 . . . . . . . . p. 42
25 Resultados da contagem para o cruzamento da Figura 23 . . . . . . . . p. 43
26 Situacao de oclusao parcial . . . . . . . . . . . . . . . . . . . . . . . . . p. 44
Lista de Tabelas
1 Exemplo de matriz que sumariza os dados coletados pelo sistema . . . . p. 32
2 Custos de implementacao do prototipo . . . . . . . . . . . . . . . . . . p. 46
12
1 Introducao
Nos ultimos anos devido a estabilidade economica e carencia de um sistema de trans-
porte coletivo de passageiros que seja funcional e ofereca conforto aos usuarios, o numero
de veıculos particulares aumentou de forma significativa nos centros urbanos. Neste con-
texto surge a necessidade de um planejamento urbano que preze pela eficiencia no transito.
Este planejamento demanda informacoes sobre o fluxo de veıculos em vias urbanas. Estas
informacoes sao coletadas atualmente pelas autoridades de transito utilizando metodos
automaticos de contagem ou por mera observacao humana.
Este trabalho propoe o desenvolvimento de um sistema automatico para o monito-
ramento do fluxo de veıculos em cruzamentos urbanos que seja de baixo custo e com o
grande diferencial inovador de ser portatil.
O sistema proposto e baseado em processamento inteligente de imagens ,unica solucao
tecnologica a baixo custo que atende aos requisitos exigidos. Uma camera de vıdeo digital e
um computador portatil customizado sao os unicos requerimentos de hardware necessarios
a execucao do sistema proposto.
O sistema computacional desenvolvido no decorrer do projeto tem-se mostrado como
alternativa viavel, tanto no aspecto tecnico quanto no economico, aos metodos atualmente
existentes para obtencao do fluxo de veıculos em cruzamentos. Algumas melhorias ainda
serao adicionadas ao projeto visando aumentar sua robustez as condicoes de iluminacao e
posicionamento da camera, bem como reduzir a incerteza de sua contagem pela melhoria
dos algoritmos de processamento de imagens. Tecnicas para a reducao da complexidade
computacional do sistema serao aplicadas ao sistema ao final desse processo, visando
reduzir ainda mais os custos relativos a plataforma de hardware necessaria.
Este trabalho encontra-se organizado da seguinte maneira: A secao 2 apresenta uma
pesquisa bibliografica realizada no ambito do monitoramento de veıculos e processamento
de imagens e vıdeos visando essa aplicacao. O sistema proposto e apresentado na secao 3.
A secao 4 e dedicada a apresentacao e discussao dos resultados obtidos com o prototipo
1 Introducao 13
implementado. Finalmente a secao 5 apresenta as conclusoes deste trabalho e sugestoes
de trabalhos futuros.
14
2 Revisao Bibliografica
Um sistema automatico e portatil, que tenha como objetivo estimar o fluxo de veıculos
que trafegam por um cruzamento ou via, baseado em processamento de imagens, precisa
mostrar-se robusto a varias questoes tais como: modificacoes de iluminacao ao longo
do dia, multiplicidade de pistas, oclusao entre veıculos, infracoes de transito, variacoes
bruscas de clima e transito de pedestres entre muitos outros. Propoe-se um sistema que
faca uso de apenas uma camera para obtencao das informacoes e que sua montagem e
operacao sejam intuitivas a um usuario leigo.
Em pesquisas, bibliografia cientıfica e de produtos comerciais, realizadas sobre o tema
nao foi encontrado nenhum sistema que realize as metas apresentadas neste trabalho sob
as condicoes de portabilidade propostas. Existem varios sistemas destinados ao moni-
toramento de auto-estradas, pracas de pedagio, entradas de estacionamentos ou vias de
mao unica. Os estudos de monitoramento de interseccoes e bastante escasso. Todos os
sistemas pesquisados basicamente utilizam um sistema fixo, baseado em lacos indutivos
implantados sob a via, ou entao atraves do uso de uma camera estrategicamente colocada,
porem de posicionamento fixo dedicado ao processamento das imagens da via a partir de
um angulo muito bem definido, o que facilita muito o modelamento dos objetos a serem
detectados. Alguns mesmo nao atendendo especificamente as condicoes propostas pelo
corrente trabalho serviram de ponto de partida para as pesquisas bibliograficas sobre como
abordar o problema do processamento visual portatil ora proposto de forma coerente.
2.1 Sistemas com Modelagem Tridimensional da Cena
Nestes sistemas e necessario o conhecimento das coordenadas da camera e a calibracao
da mesma para que se possa analisar o espaco tridimensional por onde os veıculos circulam.
E comum seu uso em conjunto com algoritmos que envolvam a modelagem tridimensional
dos veıculos. Sistemas como este sao apresentados em (ELLIS; TEAL, 1997) e em (KIM;
MALIK, 2003).
2.1 Sistemas com Modelagem Tridimensional da Cena 15
Figura 1: Fluxograma de processamento em algoritmo com modelagem 3D.
Nestes casos, e necessario conhecimento a priori das caracterısticas de todos os ele-
mentos presentes na cena em analise. Este fato, dificulta em muito o desenvolvimento
de um sistema que seja robusto a varios ambientes, tendo em vista que a portabilidade
do sistema proposto pode conduzi-lo a cenarios de difıcil modelagem. Nestas condicoes.
torna-se ainda necessario o desenvolvimento de uma base de dados com os parametros
tridimensionais dos veıculos observados pelo sistema, tais como automoveis sedam, vans,
micro-onibus, onibus, caminhoes, veıculos utilitarios, motocicletas, etc. Estas necessida-
des de sistemas deste tipo desmotivam sua adocao quanto a sua aplicabilidade em tempo
real no escopo da proposta deste projeto.
O fluxograma de processamento apresentado na figura 1 e o proposto em (ELLIS; TEAL,
1997), e evidencia as etapas de calibracao e utilizacao dos modelos tridimensionais.
Em sua proposicao principal, deteccao e separacao de veıculos oclusos em situacoes de
transito em vias de mao unica, o algoritmo citado apresenta excelentes resultados, estes
acima de 90% de correto modelamento em casos de oclusoes.
Em (KIM; MALIK, 2003) e apresentado um metodo que faz uso de multiplas cameras
para a modelagem tridimensional dos veıculos e das cenas. Neste artigo, fixam-se multiplas
cameras no alto de um predio de mais de 30 andares, a fim de obter uma visao mais
proxima da ideal, que seria a visao perpendicular superior, da via. Esta situacao foge
das condicoes previstas para a operacao do sistema proposto, uma vez que nao se pode
requerer a existencia de um predio desse porte em todo e qualquer cruzamento a ser
analisado. No entanto, cabe ressaltar aqui, que a metodologia proposta neste trabalho,
2.2 Sistemas Monoculares de Rastreamento 16
aplica-se perfeitamente a essa condicao ideal, e resultados otimos tambem podem ser
esperados, embora nao tenha sido efetivamente testada por nao ser o escopo visado aqui.
A figura 2 apresenta o algoritmo de processamento adotado no artigo.
Figura 2: Fluxograma de processamento da proposta. (KIM; MALIK, 2003)
Como pode-se notar a complexidade computacional deste algoritmo e bastante ele-
vada, principalmente devido ao fato de ser uma aproximacao de multiplas cameras de
difıcil instalacao em um sistema portatil.
2.2 Sistemas Monoculares de Rastreamento
Nas pesquisas bibliograficas realizadas, encontrou-se varios metodos que utilizam um
sistema de visao monocular – apenas uma camera – propondo-se a desempenhar o acom-
panhamento de objetos moveis em uma sequencia de vıdeo.
Estes sistemas dentre varias abordagens possıveis, em sua grande maioria, concentram-
se em duas categorias basicas: acompanhamento de contornos e acompanhamento de
caracterısticas. Cada um destes metodos sera apresentado em pormenores nas secoes
seguintes.
2.2.1 Rastreamento de Contornos
Sistemas que utilizam contornos para acompanhamento de corpos em movimento sao
largamente descritos na literatura, tais como em (TECHMER, 2001), (GEMIGNANI et al.,
2.2 Sistemas Monoculares de Rastreamento 17
1999), (WANG; AI; XU, 2002) e tem aplicacoes em diversas areas.
Algumas destas tecnicas mostram-se poderosas tanto para rastreamento quanto para
tarefas de classificacao de objetos como proposto em (JOLLY; LAKSHMANAN; JAIN, 1996).
2.2.2 Rastreamento de Caracterısticas
Outro metodo amplamente difundido em aplicacoes de rastreamento de objetos moveis
em sequencias de vıdeo – (RICHARDSON; BLOSTEIN, 1992), (XIE; SUDHAKAR; ZHUANG,
1995), (TOMMASINI et al., 1998), (CUCCHIARA; PICCARDI, 1999) entre outros – e o baseado
em definicao e rastreamento de caracterısticas locais. Nessa classe de sistemas, uma regiao
que define o objeto nao e rastreada no espaco de pixels diretamente, mas sim em um espaco
transformado, no qual se definem certas caracterısticas que definam bem o objeto e sejam
invariantes a sua movimentacao, ao contrario da sua imagem que pode sofrer alem dos
deslocamentos, deformacoes e variacoes de iluminacao. As tecnicas eficientes de extracao
dessas caracterısticas para aplicacoes definidas ainda sao problemas bastante desafiadores
para a comunidade cientıfica. Um dos metodos mais populares e computacionalmente
simples, praticavel em aplicacoes de tempo real e o definido por Harris em (HARRIS;
STEPHENS, 1988). Harris propoe o uso da funcao de auto correlacao local de um sinal para
determinar a posicao das caracterısticas mais significativas do mesmo. O procedimento
matematico que define esta tecnica encontra-se detalhado em (HARRIS; STEPHENS, 1988).
Metologias existentes para agrupamento das caracterısticas extraıdas de acordo com
suas tendencias de movimento sao apresentadas por (MODAYUR; SHAPIRO, 1996), (CAMA-
PUM; FISHER, 1998) e (WEI; NGAN; HABILI, 2004). Tais metodologias podem no futuro ser
incorporadas ao projeto buscando maior robustez para situacoes de oclusao parcial entre
veıculos.
18
3 Sistema Proposto
O sistema proposto tem como um de seus principais objetivos a portabilidade. Desta
forma, ele deve ser aplicavel a quaisquer cruzamentos urbanos, inclusive aqueles que nao
encontram-se proximos a uma grande construcao, local este aonde a maioria dos artigos
ate aqui apresentados posicionavam suas cameras. Essa fixacao em um local bastante
elevado, facilita muito o rastreamento dos objetos, uma vez que a projecao do espaco
de visao da camera e praticamente paralela ao plano do CCD. No entanto, uma vez que
devido a portabilidade necessaria, essa solucao nao e viavel, temos de trabalhar com
projecoes mais realistas e de maior complexidade visual, do ponto de vista de perspectiva
e probabilidade de oclusoes.
O posicionamento da camera e um fator importantıssimo e deve ser cuidadosamente
estudado. Colocar a camera ao nıvel dos veıculos, aumenta em demasia a probabilidade
de oclusao dos mesmos, gerando assim um elevado ındice de perda, diminuindo a precisao
do sistema na contagem dos veıculos. Alem de nao permitir discriminar as rotas de cada
veıculo de maneira eficiente.
Certamente a posicao ideal a ser posicionada a camera e diretamente acima do cru-
zamento. De forma a reduzir a zero os problemas de oclusao de veıculos. No entanto,
essa solucao esbarra em varios aspectos praticos e de legislacao. O posicionamento de um
dispositivo a 6m localizado no meio de um cruzamento, envolve, alem da disponibilidade
de infra estrutura adequada a esse posicionamento atraves de cabos, a permissao do orgao
regulador de transito local, que nem sempre e de facil e rapida obtencao. Sob os aspectos
tecnicos, uma camera digital localizada nesta posicao, alem da necessidade de levar cabos
de alimentacao ao local, necessita que o cabo de dados (USB ou FireWire) tenha com-
primento suficiente para alcancar a central de processamento. Limitacoes normativas dos
cabos USB e de 5m e FireWire 4,5m, insuficientes portanto para uma distancia de 15 a
20m. Uma solucao seria o uso de repetidores de modo a aumentar o alcance, no entanto
esses dispositivos encarecem o sistema.
3.1 Estrutura do Sistema 19
Tornou-se entao necessario, o projeto e a construcao de um suporte desmontavel. O
criterio de portabilidade e conseguido utilizando-se 3 modulos de 1,5m que podem entao
ser facilmente manejado pelo operador do sistema em qualquer cruzamento em estudo,
sendo posicionado na lateral do cruzamento ou via, sem necessidade de infra-estrutura
local muito elaborada. Desta forma, a camera fica posicionada a uma altura de 4,5m. No
entanto, essa solucao portatil, gera uma serie de fatores complicadores aos algoritmos de
processamento de imagens devido ao maior ındice de oclusoes.
A metodologia de (CUCCHIARA; PICCARDI; MELLO, 2000) e (CUCCHIARA; PICCARDI,
1999) que divide o sistema em modulos de processamento de imagens e aplicacao de regras
mostrou-se muito convincente e foi adotada neste desenvolvimento.
As tecnicas de subtracao de fundo propostas em (ELLIS; TEAL, 1997) tambem mostram-
se muito promissoras, ja que as condicoes de funcionamento no artigo apresentam relativa
semelhanca com as condicoes de operacao ora propostas.
Apos uma analise das referencias bibliograficas aqui citadas, quanto ao seu desem-
penho tanto em precisao quanto em complexidade computacional, ındice este ausente na
maioria dos trabalhos, optou-se pelo desenvolvimento de um sistema inovador hıbrido
que herdasse as caracterısticas mais promissoras de todos os estudados e que no futuro
pudesse ser aprimorado de forma contınua em busca de um sistema cada vez mais robusto
e eficiente.
3.1 Estrutura do Sistema
O sistema proposto neste trabalho tem seu fluxograma de processamento apresentado
na figura 3, sendo que a descricao de suas etapas e feita em maiores detalhes nas secoes
seguintes.
Cada sessao do sistema e composto basicamente de tres etapas gerenciadas pela in-
terface grafica com o usuario:
• Ajustes e definicoes da camera e via;
Nesta etapa e escolhida pelo operador a posicao da camera com base principalmente
no criterio de maior visibilidade do cruzamento, e definicao das regioes de entrada
e saıda conforme detalhada na sessao 3.7
• Operacao em tempo-real;
3.1 Estrutura do Sistema 20
Figura 3: Fluxo de processo do software desenvolvido
Etapa onde efetivamente o sistema permanece em operacao, monitorando os veıculos.
• Apresentacao dos relatorios obtidos para a sessao.
Encerramento da sessao de monitoramento. Os relatorio escolhidos pelo usuario sao
finalizados e apresentados.
3.1.1 Captura
No sistema proposto, as imagens sao adquiridas utilizando uma camera de vıdeo digi-
tal. Dados o proposito deste projeto, procura-se posicionar a camera e capturar sequencias
de imagens em que aparecam cruzamentos, com todas, ou a maioria das suas vias de acesso
bem evidenciadas.
O angulo sob o qual a camera observa o cruzamento e de fundamental importancia
para o resultado final. Tendo em vista a portabilidade proposta, o posicionamento da
camera em uma posicao definitiva nao e possıvel, demandando do sistema de processa-
mento de vıdeo uma grande robustez quanto a variacoes do posicionamento da mesma.
Os vıdeos capturados durante o desenvolvimento do projeto contemplam interseccoes
de duas vias em angulos proximos de 90o. Conforme mostrado nas figuras 4 e 5.
A camera escolhida para utilizacao no prototipo, apresenta as seguintes vantagens,
quando comparada as cameras usualmente encontradas no mercado, capacidade de cap-
3.1 Estrutura do Sistema 21
Figura 4: Cruzamento da rua Santa Quiteria
Figura 5: Cruzamento da rua Francisco H. dos Santos
3.1 Estrutura do Sistema 22
(a) (b)
Figura 6: Comparativo entre lentes: a) lente grande angular(107o), b) lente convencionalwide(89.95o)
tura progressiva e controle individual sobre suas caracterısticas, tais como tempo de ex-
posicao, brilho, contraste, balanco de branco, ganho e saturacao.
Desta forma, e possıvel ajustar a camera para minimizar a influencia das condicoes
de iluminacao do ambiente sobre o vıdeo capturado. No entanto para operacoes de mo-
nitoramento por um longo perıodo de tempo, 24 horas ou mais, torna-se necessario o
desenvolvimento de um pre-processamento capaz de adaptar o sistema desenvolvido as
variacoes de iluminacao ao longo do dia e noite. Neste primeiro prototipo, o tempo de
monitoramento e definido como curto, de forma que as variacoes de iluminacao possam
ser desprezadas.
Outra vantagem que a camera utilizada apresenta e a possibilidade de mudar a lente
utilizada, para que seja possıvel obter uma visao mais ampla do cruzamento, sem o corte
de alguma das duas vias de entrada ou saida, conforme acontece na figura 5. Adotou-
se uma lente grande angular, com uma abertura de 107◦. Abertura esta que colabora
em muito para que o sistema contemple todas as vias envolvidas no cruzamento, como
apresentado na figura 6.
A figura 6, mostra claramente que o uso da lente grande angular amplia de forma
significativa o campo de visao da camera, no entanto, esta lente incorpora a imagem
uma distorcao do tipo esferica. Dado que neste prototipo, nao serao necessarias realizar
medidas baseadas nos deslocamentos, tais como velocidade do veıculo, a distorcao causada
pela lente nao e um problema serio.
O modelo de camera utilizado foi o UNIBRAIN Fire-i (http://www.unibrain.com).
Capaz de realizar captura progressiva com resolucao maxima de 640x480 pixels (VGA)
a uma taxa maxima de 30 quadros por segundo. Quanto maior for a taxa de quadros
3.2 Subtracao de Fundo 23
conseguida, melhor sera a resolucao temporal e por conseguinte mais facil e o rastreamento
dos objetos. No entanto, a maioria das cameras de baixo custo sao voltadas a captura de
vıdeo para fins de comunicacao pela internet (MSN, Yahoo Messenger, etc), isso devido a
limitacao de sensibilidade do olho humano a movimentos muito rapidos. Cameras capazes
de adquirir a 60, 120 ou mais quadros por segundo sao extremamente caras e dedicadas
a aplicacoes especiais, fugindo do escopo deste projeto.
3.2 Subtracao de Fundo
Um metodo tipicamente utilizado para deteccao de objetos em movimento em uma
sequencia de vıdeo e a subtracao de fundo. Esta tecnica envolve a estimacao de uma ima-
gem de referencia a partir da sequencia de imagens obtidas anteriormente, que representa
o fundo do vıdeo. Esse fundo corresponde a caracterıstica estatica da cena. A imagem
capturada e entao subtraıda deste fundo estimado e comparada a um limiar, gerando uma
mascara binaria que destaca as regioes referentes as regioes nao estacionarias do quadro
atual. Em ambientes controlados em que nao haja mudancas na luminosidade, e possıvel
utilizar uma imagem real do fundo ao inves de uma estimativa, porem isto e inviavel em
aplicacoes de monitoramento automatico como este projeto, uma vez que o cenario esta
em constante alteracao, como por exemplo, luzes piscando, folhas de arvores se movendo,
nuvens, e mudancas gradativas e lentas de luminosidade.
A maneira mais simples de se obter a estimativa do fundo e atraves de uma media
temporal de quadros obtidos previamente, porem esta tecnica apresenta diversas desvan-
tagens. Primeiramente, para que o fundo seja estimado de maneira correta, e necessario
garantir um perıodo inicial de treinamento em que apenas o fundo seja visıvel. Objetos
inicialmente estacionarios que entrem em movimento serao considerados como perten-
centes a uma regiao nao estacionaria, porque o objeto ainda estara presente por um
determinado tempo na estimativa do fundo. Objetos em movimento que se tornem esta-
cionarios tambem sao considerados nao estacionarios ate que sejam assimilados na imagem
de fundo. Esses dois problemas advem da natureza da media temporal, utilizada para
realizar a estimativa. Para que a imagem media comece a assimilar um novo objeto (ou o
espaco deixado por um objeto), e necessario que este objeto permaneca estacionario por
tanto tempo quanto a media estivesse rodando antes da presenca (ou ausencia) do objeto.
Devido a esta dificuldade de adaptacao, mudancas na luminosidade da cena ou pequenas
perturbacoes na posicao da camera podem trazer grandes problemas ao monitoramento.
3.2 Subtracao de Fundo 24
Devido ao exposto acima, sao necessarios algoritmos mais avancados para estimar o
fundo. A seguir, serao apresentados os tres algoritmos testados para este projeto.
3.2.1 Mistura de Gaussianas
O metodo basico da mistura de gaussianas busca modelar os pixels do fundo atraves
de uma funcao de distribuicao de probabilidades aproximada por uma soma de K dis-
tribuicoes Gaussianas ponderadas, onde cada Gaussiana representa uma cor do pixel do
fundo (KAEWTRAKULPONG; BOWDEN, 2001). Os pesos de cada gaussiana representam a
proporcao de tempo em que cada cor esteve presente na cena. O fundo e representando
pelas B Gaussianas que mais permanecem, isto e, por aquelas com maior peso.
O metodo utilizado para atualizar as Gaussianas e uma variacao do algoritmo de
Expectation-Maximization (EM).O EM e um algoritmo iterativo que garante a con-
vergencia a um maximo local em um dado espaco de buscas. Devido aos requerimentos do
modelamento do fundo, utiliza-se um algoritmo de EM online, isto e, que otimize o mo-
delo progressivamente com a captura de novos quadros. Foram desenvolvidos dois tipos de
algoritmos de EM online: os parametricos buscam uma estimacao parametrica da funcao
de distribuicao de probabilidades do fundo, isto e, atualizam o modelo anterior sem modi-
ficar a estrutura do mesmo; ja os nao-parametricos fazem uma aproximacao mais simples
das probabilidades do pixel. O algoritmo usado neste projeto e um nao-parametrico.
Ao modelar-se o fundo, regioes estaticas sao representadas por agrupamentos de gaus-
sianas mais concentradas, como na figura 7, enquanto que regioes de movimento sao re-
presentadas por gaussianas mais espalhadas, como na figura 8. A atualizacao do modelo
e dada por um esquema de atualizacao seletiva, na qual cada novo pixel e comparado
contra os componentes do modelo existente, ordenados pelo agrupamento. Caso o valor
do pixel esteja a uma distancia igual ou menor a um limiar de desvios-padrao de uma
gaussiana, essa gaussiana e atualizada pelo algoritmo EM. Caso o pixel nao corresponda
a nenhum componente do modelo, a gaussiana com menor probabilidade e descartada, e
uma nova gaussiana e criada, com media igual ao valor atual do pixel, uma grande matriz
de covariancia e peso pequeno.
Para evitar uma dificuldade inicial de adaptacao, a estimativa nos primeiros L quadros
e feita com equacoes diferentes dos quadros restantes, para acelerar a adaptacao inicial.
O limiar T e a menor probabilidade para que uma gaussiana seja escolhida como repre-
sentando o fundo. A subtracao e realizada marcando-se todos os pixeis que nao sejam
classificados como uma das B cores do fundo como pertencendo a frente da cena.
3.2 Subtracao de Fundo 25
Figura 7: Pixel com gaussianas concentradas. A linha contınua indica a gaussianaescolhida como fundo
Figura 8: Pixel com gaussianas espalhadas. As linhas contınuas indicam as gaussianasescolhidas como fundo
3.2 Subtracao de Fundo 26
3.2.2 Scoreboard
O algoritmo de scoreboard para a subtracao de fundo e uma tentativa de unir duas
tecnicas mais simples de subtracao de fundo, a media movel e a moda movel.(LAI; YUNG,
1998)
O fundo pode ser considerado, como visto acima, a caracterıstica estatica da cena.
Uma maneira de se capturar essa caracterıstica estatica dos pixeis, e estimar a funcao
densidade de probabilidade do pixel para um certo numero de quadros anteriores, sendo
a intensidade mais frequente, isto e, a moda do pixel, considerada como a intensidade do
pixel do fundo. A precisao deste metodo aumenta com o aumento do numero de ima-
gens anteriores consideradas para o calculo, porem o tempo de calculo tambem aumenta,
tornando este metodo bastante demorado.
Utilizando a media movel, o fundo passa a ser simplesmente a media movel dos ultimos
quadros. Este e um calculo computacionalmente mais rapido, porem, a precisao deste
metodo e reduzida, principalmente em regioes de grande movimento.
Para aproveitar tanto a velocidade da media movel quanto a precisao da moda movel,
utiliza-se o algoritmo de scoreboard, ou placar. A ideia basica deste algoritmo e detectar
as regioes do quadro que sofrem altas ou baixas variacoes em relacao ao fundo estimado.
Nas regioes de baixa variacao utiliza-se a media movel, enquanto que nas de alta variacao,
onde a media movel seria mais imprecisa, utiliza-se a moda movel. Para isso, a cada
quadro todos os pixeis recebem uma pontuacao, de acordo com a variacao em relacao
ao fundo. Variacoes pequenas, isto e, menores que um determinado limiar, recebem uma
pontuacao positiva, ate um maximo de 1.0 para pixeis que nao sofreram nenhuma variacao.
Variacoes maiores que o limiar recebem uma pontuacao negativa, limitada em -1.0 para
evitar a propagacao de erro. Essas pontuacoes sao acumuladas em um placar, gerando
tres possıveis situacoes para os pixeis:
1. Placar positivo e pontuacao positiva - O pixel de fundo e atualizado pela media
movel;
2. Placar positivo e variacao negativa - O pixel de fundo nao e atualizado;
3. Placar negativo - O pixel de fundo e atualizado pela moda movel;
3.2 Subtracao de Fundo 27
3.2.3 Motion Templates
Ao contrario das tecnicas apresentadas anteriormente, a tecnica de motion templates,
ou padroes de movimento, busca modelar o movimento dos objetos na cena. Isso e feito
atraves da diferenciacao temporal dos quadros, isto e modelado como a subtracao do
quadro mais recente e do quadro anterior. Em regioes de baixo ou nenhum movimento,
nao ha grandes variacoes entre um quadro e outro e isto resulta em um valor proximo
de zero. Em regioes de maior movimento, havera uma maior variacao entre os quadros
e, portanto, o resultado da subtracao sera maior. Comparando-se o resultado obtido
com um limiar pre-estabelecido, obtem-se uma mascara binaria que indica as regioes do
quadro em que houve movimento. Estas mascaras sao acumuladas da seguinte maneira:
primeiramente, os valores contidos na imagem acumulada sao atenuados. Em seguida,
os pixeis com alto valor da mascara sao adicionados a imagem acumulada com o valor
maximo da imagem.
A imagem acumulada resultante contem um historico do movimento da cena nos
ultimos quadros, onde as areas com maior intensidade indicam um movimento recente,
enquanto que areas de menor intensidade representam o movimento mais antigo. Esta
imagem permite, atraves da analise do gradiente da imagem, estimar a direcao e a velo-
cidade dos objetos. Estas informacoes podem ser usadas posteriormente para o rastrea-
mento dos objetos.
3.2.4 Comparacao
A analise dos tres metodos pode ser feita a partir dos seguintes parametros: tempo
de adaptacao do modelo, qualidade da segmentacao e complexidade computacional. Os
metodos da mistura de gaussianas e do scoreboard necessitam de um tempo inicial para
adaptar seus modelos de fundo. Este tempo pode ser ajustado, porem quanto menor o
tempo menor sera a qualidade da estimacao. Ja o metodo de motion templates, que nao
estima um modelo do fundo, e capaz de detectar os objetos a partir do inıcio da sequencia
de vıdeo. Deste modo, o sistema proposto aqui permite que o usuario escolha qualquer
um dos 3 tipos para ser usado durante uma sessao de monitoramento de trafego.
3.3 Segmentacao 28
3.3 Segmentacao
O resultado obtido das tecnicas de subtracao de fundo apresentadas acima e uma
imagem binaria que representa as regioes consideradas de interesse para o posterior pro-
cessamento. O papel da etapa de segmentacao e separar e localizar estes objetos, alem de
filtrar os objetos que sejam oriundo de ruıdo, ou objetos que nao interessam ao programa.
O primeiro passo realizado e remover regioes muito pequenas que muito provavelmente
foram geradas pelo ruıdo do sistema de aquisicao, e destacar as regioes que representam
objetos. Isto e feito atraves da utilizacao dos filtros morfologicos de erosao e dilatacao. A
erosao remove pixeis de alta intensidade que tenham pixeis de baixa intensidade ao seu
redor, tendo como efeito remover pequenas regioes classificadas como frente do quadro
devido a ruıdo. A dilatacao realiza o oposto da erosao, isto e, ela tende remover pixeis
de baixa intensidade que estejam cercados por pixeis de alta intensidade. Este procedi-
mento reforca as regioes detectadas, eliminando pequenos buracos nos objetos e evitando
a fragmentacao dos objetos.
Uma vez que a mascara esteja processada e o ruıdo eliminado, e necessario separar os
objetos para o processamento seguinte. Os objetos sao localizados atraves do algoritmo
de componentes conectados. Este algoritmo realiza uma busca em todos os pixeis, locali-
zando todos os de mesma intensidade e agrupando-os em regioes chamadas neste trabalho
de blobs. Estes blobs sao agrupados em uma estrutura de arvore, com os blobs mais ex-
ternos e abrangentes na raiz da arvore, e aqueles que se encontram dentro de outros blobs
localizados nos galhos da arvore. Para este trabalho, apenas os blobs mais externos sao
escolhidos para as proximas etapas do processamento. As informacoes do blob obtidas
apos a analise de componentes conectados sao a posicao de sua centroide e as dimensoes
do retangulo que contem a regiao localizada.
3.4 Identificacao
Apos a localizacao dos blobs, eles sao organizados em um vetor e identificados por sua
posicao no mesmo.
3.5 Rastreamento 29
3.5 Rastreamento
O modulo de rastreamento e responsavel por validar as informacoes que sao proveni-
entes das etapas anteriores, e seu funcionamento e mostrado na figura 9.
Definiu-se uma entidade chamada CARRO, e como seu proprio nome sugere, esta
devera representar um veıculo que esteja passando pelo cruzamento. Ela possui proprie-
dades que definem sua procedencia, suas dimensoes e suas caracterısticas.
A seguir explica-se em maiores detalhes o funcionamento dos blocos apresentados no
fluxograma de rastreamento, figura 9.
3.5.1 Cria CARROS
Esta etapa utiliza as informacoes provenientes do modulo de Identificacao anterior-
mente descrito. Para cada regiao que a etapa de Identificacao validou como blob, o bloco
seguinte procede uma serie de verificacoes e caso o blob passe em todas as condicoes o
bloco cria uma entidade CARRO para o mesmo. As verificacoes sao as seguintes:
• Possui parte de sua area distribuıda em uma regiao de entrada?
• Nao possui parte de sua area compartilhada com outro CARRO?
Caso o blob seja reprovado em qualquer um dos dois testes ele nao sera processado
neste quadro, sendo entao desprezado.
3.5.2 Extrai caracterısticas
Para cada um dos CARROS existentes e feita a verificacao do numero de carac-
terısticas que o mesmo possui, caso este numero seja inferior que um determinado limiar,
e necessario executar o processo de identificacao destas caracterısticas. O sistema desen-
volvido esta utilizando o conjunto de caraterısticas de Harris(HARRIS; STEPHENS, 1988)
para acompanhar os corpos.
Nos CARROS criados no item anterior, existe a clara necessidade de localizacao
destas caracterısticas, ja nos CARROS que estao em processamento ha mais quadros,
isso nao acontece com tamanha frequencia. A necessidade de identificacao de novas ca-
racterısticas para os CARROS ja em processamento acontece pois o metodo de acompa-
nhamento das caracterısticas, em determinadas ocasioes nao consegue rastrear de forma
3.5 Rastreamento 30
eficiente algumas delas, logo estas sao excluıdas pelo proprio sistema para que caso ne-
cessario sejam localizadas outras mais significativas.
Figura 9: Fluxograma de funcionamento da etapa rastreadora
A figura 9 apresenta o diagrama de blocos da etapa rastreadora de caracterısticas.
Funciona basicamente da seguinte maneira: quando um objeto blob e localizado sobre
uma regiao previamente definida como entrada, suas caracterısticas sao detectadas e entao
cria-se um objeto CARRO que acompanhara o movel em deslocamento ate que este passe
por uma regiao marcada como saıda e seja contado pelo sistema.
3.5.3 Segue caracterısticas
Quando um objeto CARRO ja possui um grupo de caracterısticas, provenientes
de deteccao no quadro anterior ou rastreamento na sequencia de quadros anteriores, o
sistema aplica um algoritmo que baseado no fluxo luminoso calculado entre o quadro
atual e o quadro anterior, determinando deste modo, o deslocamento de cada uma das
caracterısticas existentes.
O algoritmo aqui empregado no calculo do fluxo luminoso entre os quadros e o desen-
volvido por Lucas e Kanade em (LUCAS; KANADE, 1981), que dentre os diversos algoritmos
de calculo de fluxo luminoso apresenta a vantagem de ser computacionalmente otimizado.
Uma vez obtidos o deslocamento de cada uma das caracterısticas entre os dois ultimos
quadros de vıdeo, passa-se para o proximo modulo que estima os novos parametros do
carro.
3.5 Rastreamento 31
3.5.4 Estima CARRO
Cada CARRO delimita uma regiao retangular do quadro, regiao esta que engloba
as caracterısticas encontradas e rastreadas nas etapas anteriores do processo. Tendo em
vista o deslocamento dos veıculos, existe a necessidade de estimar qual a proxima posicao
em que deve-se procurar as caracterısticas no proximo quadro. Desta forma e necessario
estimar a translacao do objeto CARRO.
Outro atributo que deve ser estimado e a mudanca de tamanho sofrida pelo carro
entre um quadro e outro, sendo que este ao aproximar-se da camera tem uma imagem
maior e ao afastar-se tem uma imagem menor.
Nesta etapa sao utilizadas apenas as caracterısticas que mostrem consistencia entre
si, evitando assim que caracterısticas que nao puderam ser acompanhadas com precisao
na etapa anterior alterem de forma negativa a precisao do processo de estimacao.
Calcula-se media e desvio padrao dos deslocamentos das caracterısticas obtidos na
etapa anterior de processamento, e eliminam-se todas as que distanciam-se da media por
mais de 1 desvio padrao.
Utiliza-se a media para estimar a translacao do objeto carro e para estimar seu novo
tamanho, calcula-se o retangulo que engloba todas as caracterısticas que nao foram eli-
minadas na regra do desvio padrao.
3.5.5 Corrige Referencias
Como o objeto CARRO agora passa a ter uma nova posicao, e necessario atualizar a
posicao que suas caracterısticas ocupavam anteriormente, tendo em vista que as coorde-
nadas das mesmas referiam-se nao a origem do quadro de vıdeo, mas a origem do objeto
carro em si.
Calcula-se o deslocamento da origem do sistema de coordenadas do carro, seu vertice
superior esquerdo, e entao aplica-se o deslocamento que este sofreu em todas as suas
caracterısticas, garantindo que apesar da mudanca local de coordenadas, estas ainda assim
apontam para os mesmos pixeis na imagem.
3.6 Contagem 32
FluxoHHHHHHS
E0 1 2
0 1 0 01 5 0 32 0 2 0
Tabela 1: Exemplo de matriz que sumariza os dados coletados pelo sistema
3.5.6 Apaga CARROS
Esta etapa do processo calcula a area em comum entre cada objeto CARRO e cada
uma das saıdas do cruzamento. Caso esta area em comum seja maior que um limiar,
o CARRO e contabilizado na matriz de contagem e nao e mais rastreado nos quadros
seguintes.
3.6 Contagem
Quando uma entidade CARRO e rastreada ate um espaco delimitado como saıda,
ela deixa de ser rastreada e e creditada em uma matriz que descreve o fluxo de carros
entre as entradas e saıdas do cruzamento. Tal matriz tem colunas referentes as entradas
do cruzamento e suas linhas referentes as saıdas. A Tabela 1 exemplifica a matriz entrada
saıda para o cruzamento apresentado na figura em um perıodo de 15 segundos..
Neste exemplo, 5 veıculos provenientes da entrada 0 saıram por 1, 2 entraram por 1
e saıram por 2 durante o tempo de monitoramento.
No capıtulo 4, sao apresentados e analisados os resultados obtidos pelo sistema nos
teste de campo ao quais este sistema foi submetido.
3.7 Interface Grafica
Este modulo foi desenvolvido empregando a biblioteca GTK+ e tem como objetivo
proporcionar ao usuario do sistema uma forma intuitiva de coletar e inserir dados no
mesmo, bem como ajustar seus parametros de operacao.
3.7 Interface Grafica 33
3.7.1 Operacao do Sistema
3.7.2 Especificacao do cruzamento
Neste procedimento o usuario observa o vıdeo capturado em uma janela na qual pode-
se marcar com o auxılio de um dispositivo apontador, mouse, as regioes em que e prevista
entrada ou saıda de veıculos. Uma vez marcada uma regiao com o botao primario do
apontador, utiliza-se o botao secundario para a definicao da regiao, que pode ser entrada
ou saıda de veıculos. As entradas e saıdas devem ser numeradas de forma crescente a
partir de zero.
As regioes ja marcadas sao mostradas na janela em exibicao em cores distintas, verde
para entradas e azul para saıdas. A figura 10 mostra os resultados do processo de marcacao
de entradas e saıdas.
Figura 10: Janela para marcacao de vias
3.7.3 Especificacoes de processamento
Na janela apresentada pela figura 11 sao ajustados os parametros para a operacao
do sistema. Dependendo das condicoes de iluminacao, velocidade media dos veıculos ou
necessidades proprias do operador, o sistema pode ser ajustado para responder de forma
diferente ao fundo, estatico ou dinamico, efetuar o rastreamento dos veıculos em uma
3.7 Interface Grafica 34
janela de busca maior, ou caso conveniente salvar os vıdeos capturados e/ou processados
para uma analise posterior.
Figura 11: Janela para ajuste dos parametros de operacao
3.7.4 Controles da Camera
A camera utilizada possui a capacidade de ajustar seus parametros automaticamente,
de acordo com as condicoes do ambiente. Essas mudancas bruscas na imagem podem
confundir a subtracao de fundo, dificultando o funcionamento do sistema. Por essa razao,
e necessario que o operador possa ajustar os parametros da camera manualmente. Esses
parametros serao explicados brevemente a seguir.
3.7.4.1 Exposicao
A exposicao pode ser definida como a quantidade de luz que atinge o sensor da camera
para uma determinada imagem. Ela e definida por dois parametros: o obturador e o ga-
nho. Seu ajuste correto depende do nıvel de iluminacao e evita a saturacao da imagem ou
a escuridao excessiva. O padrao IEEE1394 preve um controle automatico da exposicao,
com um parametro de Referencia de Exposicao. Caso a Exposicao Automatica seja utili-
zada, o valor medio da imagem em escala de cinza e comparado a esta referencia, e caso
haja diferenca os parametros de obturador e ganho sao ajustados para compensar esta
diferenca. Na figura 12 pode-se ver um exemplo de diferentes valores da exposicao.
3.7 Interface Grafica 35
Figura 12: Influencia da exposicao:(a)automatica;(b)mınima(c)maxima
3.7.4.2 Obturador
O parametro Obturador - do ingles Shutter - controla o tempo de exposicao do sensor
da camera a luz.
3.7.4.3 Ganho
O parametro Ganho determina a amplificacao do sinal de saıda do sensor, alterando
o contraste da imagem.
3.7.4.4 Brilho
O Brilho e um valor constante adicionado a saida do sensor CCD, para que a faixa
dinamica do mesmo possa ser melhor aproveitada.O efeito de diferentes valores do brilho
pode ser visto na figura 13
Figura 13: Influencia do brilho:(a)automatico;(b)mınimo;(c)maximo
3.7.4.5 Nitidez
A Nitidez envolve a capacidade de percepcao de descontinuidades. Quanto menor a
nitidez, menos definidas ficam as descontinuidades da imagem. Quanto maior a nitidez,
mais definidas ficam as descontinuidades, porem isto pode causar uma maior visibilidade
do ruıdo. Isso pode ser visto na figura 14
3.7 Interface Grafica 36
Figura 14: Influencia da nitidez:(a)padrao(b)mınima(c)maxima
3.7.4.6 Gama
O parametro Gama, quando ativado, altera os nıveis medios de intensidade da imagem.
Isto serve unicamente para compensar a nao-linearidade dos monitores de CRT. Os efeitos
desta chamada correcao de gama podem ser vistos na figura 15
Figura 15: Influencia da correcao de gama:(a)Ligada(b)Desligada
3.7.4.7 Saturacao
A saturacao indica a intensidade das tonalidades da imagem. Uma imagem com baixa
saturacao se aproxima de uma imagem em escala de cinza, enquanto que uma imagem
com alta saturacao apresenta cores mais intensas e destacadas. Pode-se ver estes efeitos
na figura 16.
Figura 16: Influencia da saturacao:(a)Padrao(b)Baixa(c)Alta
3.7 Interface Grafica 37
Figura 17: Influencia do balanco de branco .A esquerda, a imagem original. Em (a) haexcesso de azul. Em (b) ha falta de azul. Em (c) ha excesso de vermelho e em (d) ha
falta de vermelho.
3.7.4.8 Balanco de Branco
O Balanco de Branco define a relacao entre o azul e o vermelho na imagem. Seu ajuste
permite uma representacao das cores mais fiel a realidade. Os efeitos dos diferentes ajustes
do balanco de braco podem ser vistos na figura 17
3.7.5 Elaboracao de Relatorios
Para analisar o desempenho do sistema e sumarizar as informacoes por este obtidas
durante o processamento realizado para um determinado cruzamento, desenvolveu-se um
sistema que apresenta os dados obtidos em um relatorio intuitivo, de facil exportacao para
qualquer outro programa de analise de dados tais como Excel ou MatLab, e de facil analise
por parte do usuario final, o Engenheiro de Transportes. E possıvel elaborar relatorios com
varios graus de detalhamento, de acordo com as necessidades do usuario. Desde um relato
simples que apresente a matriz de contagem resultante do processamento, como outros
muito mais detalhados que apresentem as imagens de cada um dos veıculos detectados,
bem como o horario/data de sua deteccao, o tempo que demandou para realizar o percurso
e qual foi a sua trajetoria exata. No entanto, como a definicao destes relatorios e uma
tarefa da area de Engenharia de Transportes, nao abordaremos aqui a sua concepcao,
bem como a estruturacao do banco de dados necessario a fim de armazenar os dados para
a consolidacao dos relatorios desejados.
38
4 Resultados Obtidos
Este capıtulo apresenta os resultados obtidos pela implementacao do sistema em
tempo-real processando arquivos de vıdeo previamente armazenados e video ao vivo, em
duas situacoes tıpicas de monitoramento de trafego: Via simples de mao dupla e cruza-
mento.
4.1 Resultados em Vias Simples
O sistema desenvolvido para monitoramento de cruzamentos, foi testado inicialmente
em uma aplicacao mais simples, na qual este foi configurado para monitorar o fluxo de
veıculos nos dois sentidos de uma via, conforme esquema apresentado nas Figuras 18 e
19.
Figura 18: Sistema monitorando fluxo em vias simplesLocal:Amoroso Costa x Carlos Pradi
A analise de validacao realizada considerou os dados obtidos pelo processamento das
imagens e os comparou com fluxo real de veıculos do cruzamento, sendo que este fluxo real
foi obtido pela contagem manual, a partir do vıdeo gravado, dos veıculos que transitaram
pelo cruzamento durante o processamento. Definiram-se as seguintes grandezas para
avaliar o desempenho do sistema:
4.1 Resultados em Vias Simples 39
Figura 19: Sistema monitorando fluxo em vias simples - Local:Francisco H. dos Santos xCarlos Pradi
• CC - Veıculos contados pelo sistema, valores obtidos da matriz de contagem.
• FP - Falsos Positivos: Sao os veıculos que foram contados em excesso pelo sistema.
• FN - Falsos Negativos: Veıculos que deveriam ter sido contados pelo sistema mas
que foram desconsiderados.
• CR - Carros Reais: Veıculos que transitaram pela via ou cruzamento, contados por
um observador humano a partir de um vıdeo gravado.
As tabelas 20 e 21, apresentam a analise de validacao feita sobre os dados coletados
pelo sistema durante o processamento realizado respectivamente nos cruzamentos das vias
apresentados nas Figuras 18 e 19. Sendo que as percentagens apresentadas nos graficos
foram obtidas a partir das equacoes 4.1, 4.3 e 4.2.
CC% =CC
CR(4.1)
FP% =FP
CR(4.2)
FN% =FN
CR(4.3)
Sumarizando os dados apresentados nesta secao, constata-se que quando aplicado
em vias simples o sistema obtem uma taxa media de acerto da ordem de 91,43% com
desvio padrao de 12,70%. Valores estes calculados a partir da Taxa de Acerto(TA%)
obtida conforme Equacao 4.4 e ponderada pelo numero de carros reais que passaram pelo
cruzamento durante a medicao.
TA% = 100(1− |CR− CC|CR
) (4.4)
4.2 Resultados em Cruzamentos 40
Desempenho0 → 1 1 → 0
Figura 20: Resultados da contagem para o cruzamento da Figura 18. Sendo CR01 = 43e CR10 = 74 veıculos
Desempenho0 → 1 1 → 0
Figura 21: Resultados da contagem para o cruzamento da Figura 19. Sendo CR01 = 238e CR10 = 193 veıculos
4.2 Resultados em Cruzamentos
Quando utilizado em cruzamentos, para monitorar todas as vias envolvidas na in-
terseccao, conforme apresentado nas Figuras 22 e 23, o sistema alcancou o desempenho
apresentado nas Figuras 24 e 25.
Observa-se que a precisao obtida nas medicoes realizadas no cruzamento da Figura
22, supera em muito aquela obtida para o cruzamento da Figura 23. Fato este que se deve
as modificacoes de iluminacao que constantemente aconteceram durante aquela medicao,
situacao esta que pode ser claramente observada na Figura 23 que apresenta ao mesmo
tempo regioes de iluminacao excessiva e regioes com pouca iluminacao.
Nas regioes da imagem em que ocorre a saturacao, os algoritmos de extracao de ca-
4.2 Resultados em Cruzamentos 41
Figura 22: Sistema monitorando fluxo em vias simples - Local:Francisco H. dos Santos xCarlos Pradi
Figura 23: Sistema monitorando fluxo em vias simples - Local:Amoroso Costa x CarlosPradi
4.2 Resultados em Cruzamentos 42
Saıda Entrada0 1 2 3
0 Sem Transito
1 Sem Transito Sem Transito
2 Sem Transito Sem Transito
3 Sem Transito Sem Transito Sem Transito
Figura 24: Resultados da contagem para o cruzamento da Figura 22
4.2 Resultados em Cruzamentos 43
Saıda Entrada0 1 2 3
0 Sem Transito
1 Sem Transito Sem transito
2 Sem Transito Sem Transito Sem Transito
3 Sem Transito Sem Transito
Figura 25: Resultados da contagem para o cruzamento da Figura 23
4.2 Resultados em Cruzamentos 44
racterısticas utilizados, nao retornam nenhuma caracterıstica. Desta forma os carros que
surgem nestas regioes nao conseguem ser corretamente tratados pelo modulo de rastrea-
mento. Fenomeno semelhante acontece quando o sistema vem acompanhando um carro e
este entra em uma regiao de saturacao, neste caso, os algoritmos de fluxo luminoso nao
convergem ao procurar as novas posicoes das caracterısticas de cada carro, uma vez que
isso ocorra, o algoritmo de rastreamento em sua atual forma nao consegue acompanhar o
deslocamento do carro dali em diante.
Para evitar este tipo de situacao, propoe-se como atividade futura o desenvolvimento
de uma rotina em software que controle em tempo real os atributos da camera visando
otimizar a qualidade da imagem captada pela mesma. Em conjunto com este dispositivo,
pode-se adotar uma lente que possua um filtro que iniba a captacao da faixa de luz
infra-vermelha a qual os CCDs das cameras sao altamente sensıveis.
Problemas previamente previstos, como por exemplo situacoes de oclusao parcial entre
veıculos atualmente sao tratadas pelo sistema com grande robustez, como mostrado na
Figura 26.
Figura 26: Situacao de oclusao parcial
Nesta situacao, o veıculo de numero 1 apresenta-se parcialmente ocluso pelo veıculo 2,
entretanto o sistema consegue atraves do acompanhamento das caracterısticas individuais
de cada movel, computa-los de maneira correta.
Para as situacoes em que ocorre oclusao total, ainda deve ser desenvolvido um metodo
que a partir do caminho ja percorrido pelo veıculo extrapole qual o seu provavel destino,
ou a provavel posicao onde este possa ser encontrado. Metodos mais apurados para a es-
timacao dos parametros dos carros tambem podem ser implementados, sistemas baseados
em filtros de Kalman(XIE; SUDHAKAR; ZHUANG, 1995) ou algoritmos como o CONDEN-
4.3 Recursos do Projeto 45
SATION (MEIER; ADE, 1999).
Resumindo-se os resultados apresentados nesta secao, constata-se que quando aplicado
em cruzamentos o sistema obtem uma taxa media de acerto da ordem de 83,33% com
desvio padrao de 21,53%. Valores estes calculados a partir da Taxa de Acerto(TA%)
obtida conforme Equacao 4.4 e ponderada pelo numero de carros reais que passaram pelo
cruzamento durante a medicao.
4.3 Recursos do Projeto
O presente projeto foi financiado em parte por um laboratorio de pesquisa na area de
engenharia de transportes, que forneceu as bolsas de Iniciacao Cientifica para os alunos, e
emprestou os recursos computacionais para a implementacao do prototipo. Assim, sendo
no calculo dos recursos necessarios ao desenvolvimento serao considerados tambem esses
investimentos feitos.
4.3.1 Desenvolvimento
O projeto foi desenvolvido no sistema operacional Linux, utilizando a biblioteca de
visao computacional OpenCV para o processamento de vıdeo, e a biblioteca GTK+ para
a interface grafica. Todos estes sao softwares livres e gratuitos, o que significa que nao
houve nenhum custo para licenciamento de software. Os computadores utilizados para
o desenvolvimento sao do modelo Pentium IV, com 512 MiB de memoria RAM. Para o
desenvolvimento inicial, foi utilizada uma filmadora digital JVC para gravar os vıdeos de
teste, pertencentes ao Laboratorio de Processamento de Vıdeo (LPVD) da Universidade
Federal do Parana (UFPR).
Foram necessarios 2 bolsistas de Iniciacao Cientıfica para seu desenvolvimento. Con-
siderando que o projeto teve seu inicio efetivo em Maio de 2006, foram investidos para
o desenvolvimento do prototipo 2 homens trabalhando 80 horas/mes, durante 6 meses,
ao custo de R$500,00 mes/homem. Resultando em investimento em mao-de-obra de
R$6.000,00, ate o momento.
4.3.2 Prototipo
O prototipo montado consiste da camera firewire Unibrain Fire-i, com lente grande
angular 107◦, conforme explicado na secao 3.1.1, conectada a um computador portatil
4.3 Recursos do Projeto 46
Tabela 2: Custos de implementacao do prototipo
Componente CustoLaptop R$7520,00Camera R$350,00Suporte R$50,00Alimentacao R$180,00Total R$8100,00
Pentium Dual Core 1.63GHz com 1 GiB de memoria RAM. Foi utilizado um computador
completo devido a necessidade de realizar testes e ajustes durante a operacao em campo do
programa, o produto pensado final utilizara um PC customizado de mais baixo custo. Para
posicionar a camera em uma posicao adequada, foi desenvolvido um suporte desmontavel
feito de canos de alumınio, que uma vez montado alcanca 4,5 metros de altura. Para
alimentar o computador e a camera, optou-se por utilizar um inversor de frequencia
acoplado a bateria de um carro. Evita-se desta maneira problemas de autonomia que
pudessem surgir com o uso de baterias. Os custos de montagem do prototipo estao
sumarizados na tabela 2, nao incluindo nesta tabela a mao de obra.
Cabe ressaltar mais uma vez, que este e o custo do prototipo caso ele fosse o produto
final. O custo de desenvolvimento deve-se acrescentar ainda cerca de R$1.000,00 gastos
em material de consumo durante os 6 meses, alem dos gastos com pessoal. Assim, o custo
de desenvolvimento e construcao deste prototipo e estimado em R$15.100,00.
A analise do preco de um produto final a ser comercializado esta fora do escopo deste
trabalho, uma vez que o objetivo e validar a metodologia. No entanto, podemos estima-lo
para fins de relatorio, sem contar a recuperacao dos custos de desenvolvimento e possıveis
lucros: computador customizado embarcado R$1.000,00, camera firewire R$350, suporte
profissional R$100.00. Totalizando R$1.450,00 como preco do produto para producao nao
em larga escala.
4.3.3 Analise de Mercado
Conforme dito no capıtulo 2, nao foi possıvel encontrar um produto com especificacoes
similares as propostas neste trabalho. Mesmo produtos comerciais baseados em visao
computacional, como o software israelense See Car, disponıvel em http://www.htsol.com,
necessitam que a camera seja posicionada em uma estrutura permanente, numa posicao
pre-determinada da pista. A portabilidade deste sistema e de grande interesse para orgaos
governamentais ligados ao transito e empresas que prestem servicos a esses orgaos. O
4.3 Recursos do Projeto 47
sistema desenvolvido permite a execucao de estudos mais abrangentes e detalhados do
transito das cidades, uma vez que a instalacao do sistema em uma via nao traz nenhum
custo adicional e nao interfere no trafego da via. Isto, por sua vez, permite que os planos
de desenvolvimento da malha viaria possam ser feitos com maior exatidao.
48
5 Conclusao
Este projeto propos a concepcao, desenvolvimento e implementacao de um sistema
automatico de determinacao de fluxo de veıculos em cruzamentos e vias urbanas, tendo
como principal diferencial inovador a portabilidade. Inicialmente uma extensa revisao
bibliografica foi realizada, fornecendo insumos tecnicos e conhecimento do estado-da-arte
de rastreamento de objetos e veıculos, bem como detalhamento dos principais problemas
e solucoes encontradas pela comunidade cientıfica em aplicacoes semelhantes. O sistema
desenvolvido e baseado na analise visual do cruzamento atraves do uso de um computador
portatil e uma camera digital de baixo custo. Problemas inerentes a portabilidade do
sistema proposto, tais como, variacoes do cenario, variacoes das condicoes de iluminacao,
grande variabilidade do formato dos veıculos dependendo do posicionamento da camera,
ruıdos e regioes de movimentacao indesejaveis, foram analisados e solucoes baseadas em
tecnicas de subtracao de fundo e rastreamento de caracterısticas foram apresentadas e
aplicadas.
O prototipo foi desenvolvido e aplicado a situacoes reais em campo, mostrando-se
bastante robusto e eficiente, atingindo taxas de acertos de 91.4% quando comparados aos
resultados obtidos pela analise humana manual, em vias simples. Em cruzamentos, devido
a maior complexidade da analise da cena, o desempenho cai para 83.3%, no entando a
analise visual humana atinge tambem menores ındices de acertos. Em ambos os casos, um
grande diferencial do sistema proposto e a ausencia do incremento do fator erro humano
devido a fadiga, ausencias, distracoes, e outros diversos fatores inerentes de uma massante
contagem manual.
Os resultados obtidos mostram que a solucao proposta e tecnicamente viavel a um
custo baixo uma vez que as tecnicas de visao computacional empregadas sempre visaram
minimizar a complexidade computacional, com isso um hardware barato de facil aquisicao,
juntamente com uma camera de baixo custo, tornam o sistema economicamente acessıvel
a qualquer agente regulador ou planejador de Sistemas de Transporte Urbanos.
5 Conclusao 49
Como trabalhos futuros, este prototipo sera incrementado de forma a torna-lo mais
robusto a variacao de iluminacao durante o dia, permitindo que o monitoramento contınuo
do fluxo seja realizado por um perıodo muito maior de tempo (12, 24, 48hs ou mais),
medidas impossıveis de se obter com a tecnica de contagem manual realizada hoje em
dia. Implementaremos ainda rotinas que permitam classificar os tipos de veıculos em
automoveis de passeio, vans, motos, caminhoes e onibus, cujo interesse de conhecimento
da Engenharia de Trafego e Transportes e muito grande devido a dificuldade de se estimar
com precisao o fluxo de cada uma dessas categorias em rotas em cruzamentos urbanos.
Com essa informacao, os gestores e projetistas urbanos podem desenvolver tecnicas muito
mais eficientes de gestao de recursos e planejamento do transporte urbano, melhorando a
qualidade de vida de toda populacao.
50
Referencias
CAMAPUM, J.; FISHER, M. Segmentation using spatial-feature clustering fromimage sequences. In: Image Processing, 1998. ICIP 98. Proceedings. 1998 InternationalConference on. [S.l.: s.n.], 1998. p. 799–803.
CUCCHIARA, R.; PICCARDI, M. Vehicle Detection under Day and Night Illumination.1999. Disponıvel em: <citeseer.ist.psu.edu/cucchiara99vehicle.html>.
CUCCHIARA, R.; PICCARDI, M.; MELLO, P. Image analysis and rule-based reasoningfor a traffic monitoring system. IEEE Trans. on Intelligent Transportation Systems, v. 1,n. 2, p. 119–130, 2000.
ELLIS, T.; TEAL, M. Occlusion prediction based on target dynamics and spatialreasoning. Image Processing and Its Applications, 1997., Sixth International Conferenceon, v. 1, p. 219–223, 1997.
GEMIGNANI, V. et al. A dsp-based real time contour tracking system. In: ImageAnalysis and Processing, 1999. Proceedings. International Conference on. [S.l.: s.n.],1999. p. 630–635.
HARRIS, C.; STEPHENS, M. J. A combined corner and edge detector. Alvey VisionConference, p. 147–152, 1988.
JOLLY, M.-P. D.; LAKSHMANAN, S.; JAIN, A. Vehicle segmentation and classificationusing deformable templates. Pattern Analysis and Machine Intelligence, IEEETransactions on, v. 18, p. 293–308, 1996. ISSN 0162-8828.
KAEWTRAKULPONG, P.; BOWDEN, R. An improved adaptive background mixturemodel for real-time tracking with shadow detection. In: 2nd European Workshop onAdvanced Video Based Surveillance Systems. [S.l.]: Kluwer Academic Publishers, 2001.
KIM, Z.; MALIK, J. Fast vehicle detection with probabilistic feature grouping andits application to vehicle tracking. In: ICCV ’03: Proceedings of the Ninth IEEEInternational Conference on Computer Vision. Washington, DC, USA: IEEE ComputerSociety, 2003. p. 524–0.
LAI, A.; YUNG, N. A fast and accurate scoreboard algorithm for estimating stationarybackgrounds in an image sequence. Circuits and Systems, 1998. ISCAS ’98. Proceedingsof the 1998 IEEE International Symposium on, v. 4, p. 241–244, 1998.
LUCAS, B. D.; KANADE, T. An iterative image registration technique with anapplication to stereo vision (ijcai). In: Proceedings of the 7th International JointConference on Artificial Intelligence (IJCAI ’81). [S.l.: s.n.], 1981. p. 674–679. A morecomplete version is available as Proceedings DARPA Image Understanding Workshop,April 1981, pp.121-130.
Referencias 51
MEIER, E.; ADE, F. Tracking cars in range images using the condensation algorithm.In: . [S.l.: s.n.], 1999. p. 129–134.
MODAYUR, B.; SHAPIRO, L. 3d matching using statistically significant groupings. In:Pattern Recognition, 1996., Proceedings of the 13th International Conference on. [S.l.:s.n.], 1996. p. 238–242.
RICHARDSON, H.; BLOSTEIN, S. A sequential detection framework for featuretracking within computational constraints. In: Computer Vision and Pattern Recognition,1992. Proceedings CVPR ’92., 1992 IEEE Computer Society Conference on. [S.l.: s.n.],1992. p. 861–864.
TECHMER, A. Contour-based motion estimation and object tracking for real-timeapplications. In: Image Processing, 2001. Proceedings. 2001 International Conferenceon. [S.l.: s.n.], 2001. p. 648–651.
TOMMASINI, T. et al. Making good features track better. In: Computer Vision andPattern Recognition, 1998. Proceedings. 1998 IEEE Computer Society Conference on.[S.l.: s.n.], 1998. p. 178–183.
WANG, Q.; AI, H.; XU, G. A probabilistic dynamic contour model for accurateand robust lip tracking. In: Multimodal Interfaces, 2002. Proceedings. Fourth IEEEInternational Conference on. [S.l.: s.n.], 2002. p. 281–286.
WEI, W.; NGAN, K.; HABILI, A. Multiple feature clustering algorithm for automaticvideo object segmentation. In: Acoustics, Speech, and Signal Processing, 2004.Proceedings. (ICASSP ’04). IEEE International Conference on. [S.l.: s.n.], 2004. p.625–8.
XIE, X.; SUDHAKAR, R.; ZHUANG, H. Real-time eye feature tracking from a videoimage sequence using kalman filter. Systems, Man and Cybernetics, IEEE Transactionson, v. 25, n. 12, p. 1568–1577, 1995.
top related