Post on 28-Jan-2021
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
DEPARTAMENTO ACADÊMICO DE ELETRÔNICA
BACHARELADO EM ENGENHARIA ELÉTRICA
IGOR CARNEIRO STACHESKI
OSCAR BROCH JUNIOR
DETECÇÃO E ESTIMATIVA DE VELOCIDADE VEICULAR ATRAVÉSDE PROCESSAMENTO DE IMAGEM
TRABALHO DE CONCLUSÃO DE CURSO
PONTA GROSSA
2018
IGOR CARNEIRO STACHESKI
OSCAR BROCH JUNIOR
DETECÇÃO E ESTIMATIVA DE VELOCIDADE VEICULAR ATRAVÉSDE PROCESSAMENTO DE IMAGEM
Trabalho de Conclusão de Curso apresen-tado como requisito parcial à obtençãodo título de Bacharel em EngenhariaElétrica, do Departamento Acadêmico deEletrônica, da Universidade TecnológicaFederal do Paraná.
Orientadora: Profa¯ . Dra. MarcellaScoczynski Ribeiro Martins
PONTA GROSSA
2018
Ministério da EducaçãoUniversidade Tecnológica Federal do Paraná
Câmpus Ponta GrossaDiretoria de Graduação e Educação Profissional
Departamento Acadêmico de EletrônicaBacharelado em Engenharia Elétrica
TERMO DE APROVAÇÃO
DETECÇÃO E ESTIMATIVA DE VELOCIDADE VEICULAR ATRAVÉS DEPROCESSAMENTO DE IMAGEM
por
IGOR CARNEIRO STACHESKIe
OSCAR BROCH JUNIOR
Este Trabalho de Conclusão de Curso foi apresentado em 27 de novembro de 2018como requisito parcial para a obtenção do título de Bacharel em Engenharia Elétrica.Os candidatos foram arguidos pela Banca Examinadora composta pelos professo-res abaixo assinados. Após deliberação, a Banca Examinadora considerou o trabalhoaprovado.
Profa¯ . Dra. Marcella Scoczynski Ribeiro MartinsOrientadora
Profa¯ . Dra. Virgínia Helena Varotto Baroncini Prof. Dr. Max Mauro Dias Santos
Membro Titular Membro Titular
Prof. Dr. Josmar Ivanqui Prof. Me. Jeferson José Gomes
Responsável pelos TCC Coordenador(a) do Curso
– O Termo de Aprovação assinado encontra-se na Coordenação do Curso –
Dedicamos este trabalho as nossas
famílias e aos nossos amigos, pelos
momentos de ausência.
AGRADECIMENTOS
Um agradecimento especial aos nossos pais João Antônio Stacheski, Claudia
Aparecida Carneiro, Ivone Broch e Oscar Broch, por todo amor, todas as palavras
de apoio e conselhos cedidos ao longo de todos os anos na universidade. Eles não
mediram esforços para a realização do nosso sonho e sem eles nada disto haveria se
tornado realidade.
Aos nosso familiares, pelo carinho, compreensão de nossa ausência e total
apoio ao longo da nossa jornada acadêmica. Agradecemos ao nossos amigos e cole-
gas que estiveram conosco durante toda a graduação compartilhando as experiências
e dificuldades, e sempre fortalecendo um ao outro.
Igor Stacheski agradece em especial a Letícia Smaniotto, pelo incondicional
apoio, amor altruísta e enorme complacência nos meses que envolveram o período de
sua graduação.
A nossa orientadora Profa¯ . Dra. Marcella Scoczynski Ribeiro Martins, que nos
mostrou os caminhos a serem seguidos e principalmente pela confiança em nós de-
positada.
Aos professores da UTFPR de Curitiba, Dr. Rodrigo Minetto, Dr. Bogdan T.
Nassu e Me. Diogo C. Luvizon que disponibilizaram a base de dados utilizada neste
trabalho.
Enfim, a todos que de algum modo contribuíram para a realização deste tra-
balho.
RESUMO
STACHESKI, Igor Carneiro; BROCH JUNIOR, Oscar. Detecção e estimativa de ve-locidade veicular através de processamento de imagem. 2018. 56 f. Trabalho deConclusão de Curso (Bacharelado em Engenharia Elétrica) – Universidade Tecnoló-gica Federal do Paraná. Ponta Grossa, 2018.
Técnicas de processamento de imagem estão cada vez mais presentes no monitora-mento de tráfego de veículos. Este trabalho propõe um projeto inicial de um medidorde velocidade veicular utilizando uma câmera fixa e um computador. Inicialmente, fo-ram apresentados as teorias para a formação das imagens e suas propriedades queserão relevantes para o desenvolvimento do presente trabalho. Para a elaboração doalgoritmo, foram utilizadas diversas técnicas de processamento de imagem, como asubtração de fundo, operações morfológicas, equalização de contraste e transforma-ção de perspectiva com o objetivo de aumentar as chances de sucesso no rastrea-mento do veículo e realizado o cálculo da velocidade estimada. Os resultados foramcomparados com valores de referências obtidos através de medidores indutivos tradi-cionais com o intuito de validar o método desenvolvido. A taxa de detecção de veículosficou próximo a 95% e a média dos erros da velocidade em ± 2,265 km/h.
Palavras-chave: Medição de Velocidade. Processamento de Imagem. Visão Compu-tacional. Detecção de Veículos.
ABSTRACT
STACHESKI, Igor Carneiro; BROCH JUNIOR, Oscar. Detection and vehicle speedestimation using image processing. 2018. 56 p. Final Coursework (Bachelor’s De-gree in Electrical Engineering) – Federal University of Technology – Paraná. PontaGrossa, 2018.
Image processing techniques are increasingly present in vehicle traffic monitoring. Thisfinal paper proposes an initial design of a vehicle speed meter using only a fixed ca-mera and a computer. Firstly, it was introduced the images forming process and imagesproperties that wil be relevant to this final papers. For the algorithm criation, it was useddiverses images process techniques, such as background subtraction, morphologicaloperation, contrast equalization and perspective transformation with the objective toincrease the vehicle tracking chance and the speed calculation. The obtained resultswas compared with reference values of inductive traditional meters in order to validatethe method. The vehicle detection rate is around 95 % and the average speed error is± 2,265 km/h.
Keywords: Speed Measurement. Image Processing. Computer Vision. Vehicle Detec-tion.
LISTA DE ILUSTRAÇÕES
Figura 1 – Esquema de instalação dos laços indutivos nas vias públicas. . . . . 18Figura 2 – Exemplo de um automóvel se aproximando do radar de efeito Doppler. 20Figura 3 – Exemplo de um automóvel se afastando do radar de efeito Doppler. 20Figura 4 – Etapas de um sistema de processamento de imagem. . . . . . . . . 22Figura 5 – Diferença na qualidade de representação de círculo utilizando uma
matriz de 12x12 pixels e outra de 48x48 pixels. . . . . . . . . . . . . 24Figura 6 – Espectro eletromagnético com ênfase na luz visível. . . . . . . . . . 26Figura 7 – Modelo RGB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Figura 8 – Modelo HSV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Figura 9 – Exemplo de ruído captado pelas câmeras. . . . . . . . . . . . . . . . 29Figura 10 – Fluxograma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30Figura 11 – Resultado da definição da região de interesse. . . . . . . . . . . . . 32Figura 12 – Diferença entre imagem em escala de cinza e com o ajuste de con-
traste aplicado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Figura 13 – Exemplo das escolhas dos pontos para a Faixa 1. . . . . . . . . . . 35Figura 14 – Resultado da alteração de perspectiva de cada faixa. . . . . . . . . 35Figura 15 – Resultado das operações morfológicas. . . . . . . . . . . . . . . . . 38Figura 16 – Relação entre os componentes detectados (b) e relação entre as
bordas detectadas (c). . . . . . . . . . . . . . . . . . . . . . . . . . . 39Figura 17 – Resultado obtido com a sequência de pontos do contorno. . . . . . 40Figura 18 – Diferença entre um polígono convexo e não convexo. . . . . . . . . 40Figura 19 – Resultado obtido com a sequência de pontos da envoltória complexa. 42Figura 20 – Resultado obtido com a sequência de pontos da envoltória complexa. 43Figura 21 – Origem da variáveis da Equação 9. . . . . . . . . . . . . . . . . . . . 44Figura 22 – Velocidades calculadas durante a passagem na área de medição. . 45Gráfico 1 – Histograma da imagem em escala de cinza. . . . . . . . . . . . . . 33Gráfico 2 – Histograma com o ajuste de contraste. . . . . . . . . . . . . . . . . 33Gráfico 3 – Resultado obtido na Faixa 1. . . . . . . . . . . . . . . . . . . . . . . 48Gráfico 4 – Resultado obtido na Faixa 2. . . . . . . . . . . . . . . . . . . . . . . 48Gráfico 5 – Resultado obtido na Faixa 3. . . . . . . . . . . . . . . . . . . . . . . 49Gráfico 6 – Resultado total. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
LISTA DE TABELAS
Tabela 1 – Resultados finais obtidos em um resolução de 720p. . . . . . . . . . 46Tabela 2 – Resultados em diferentes resoluções. . . . . . . . . . . . . . . . . . 51
LISTA DE ABREVIATURAS, SIGLAS E ACRÔNIMOS
SIGLAS
AHE Adaptative Histogram Equalization
BGS Background Subtractor
CLAHE Contrast Limited Adaptive Histogram Equalization
OMS Organização Mundial da Saúde
ACRÔNIMOS
INMETRO Instituto Nacional de Metrologia, Qualidade e Tecnologia
LiDAR Light Detection And Ranging
OpenCV Open Source Computer Vision library
RADAR Radio Detection And Ranging
ROI Region of interest
LISTA DE SÍMBOLOS
LETRAS LATINAS
𝐵 Valor do byte referente à cor azul𝐶 Tamanho do pixel [m]𝑑 Distância percorrida [pixels]𝐹 Quantidade de quadros𝐺 Valor do byte referente à cor verde𝑅 Valor do byte referente à cor vermelha𝑠 Distância [m]𝑡 Tempo [s]𝑉 Velocidade do carro [m/s]𝑉𝑒 Velocidade final estimada [km/h]
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.1 DELIMITAÇÃO DO TEMA . . . . . . . . . . . . . . . . . . . . . . . 141.2 OBJETIVO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.2.1 Objetivos Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.2.2 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.3 JUSTIFICATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.4 VISÃO GERAL DO TRABALHO . . . . . . . . . . . . . . . . . . . . 162 REVISÃO DA LITERATURA . . . . . . . . . . . . . . . . . . . . . . . 172.1 MEDIDORES DE VELOCIDADE . . . . . . . . . . . . . . . . . . . 172.1.1 Laços Indutivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.1.1.1 Desvantagens do método intrusivo - Laços indutivos . . . . . . . . . 192.1.2 Medidor de velocidade baseados em tecnologia Laser e Doppler . . 192.1.2.1 Baseados em Laser . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.1.3 Vantagens do método não-intrusivo - Laser e Doppler . . . . . . . . 212.2 PROCESSAMENTO DE IMAGEM E VISÃO COMPUTACIONAL 212.2.1 Processamento de Imagem . . . . . . . . . . . . . . . . . . . . . . . 222.2.2 Modelos de Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.2.3 Fundamentos de cor . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.2.4 Modelos de Cores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.2.4.1 Modelo RGB (Red, Green, Blue) . . . . . . . . . . . . . . . . . . . . . 262.2.4.2 Modelo HSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.2.5 Ruídos em Imagens Digitais . . . . . . . . . . . . . . . . . . . . . . . 283 MATERIAL E MÉTODOS . . . . . . . . . . . . . . . . . . . . . . . . . 303.1 TRANSFORMAÇÃO EM ESCALA DE CINZA . . . . . . . . . . . . 313.2 REGIÃO DE INTERESSE . . . . . . . . . . . . . . . . . . . . . . . 313.3 EQUALIZAÇÃO DE CONTRASTE . . . . . . . . . . . . . . . . . . 323.4 TRANSFORMAÇÃO DE PERSPECTIVA . . . . . . . . . . . . . . 343.5 SUPRESSÃO DE FUNDO . . . . . . . . . . . . . . . . . . . . . . . 353.6 OPERAÇÕES MORFOLÓGICAS . . . . . . . . . . . . . . . . . . . 373.6.1 Erosão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.6.2 Dilatação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.7 DETECÇÃO DE CONTORNOS . . . . . . . . . . . . . . . . . . . . 383.8 ENVOLTÓRIA CONVEXA . . . . . . . . . . . . . . . . . . . . . . . 403.9 RASTREAMENTO DOS VEÍCULOS . . . . . . . . . . . . . . . . . 423.10 CÁLCULO DA VELOCIDADE . . . . . . . . . . . . . . . . . . . . . 434 RESULTADOS E DISCUSSÃO . . . . . . . . . . . . . . . . . . . . . 464.1 ANÁLISE DE DESEMPENHO . . . . . . . . . . . . . . . . . . . . . 505 CONCLUSÕES E PERSPECTIVAS . . . . . . . . . . . . . . . . . . . 525.1 CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525.2 TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . 53
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
13
1 INTRODUÇÃO
Com o crescimento constante das pequenas e grandes cidades gerado princi-
palmente pelo desenvolvimento econômico, uma maior parte da população foi capaz
de conquistar um veículo próprio, portanto é natural o aumento do fluxo veicular nas
estradas e vias dentro das cidades. Em virtude dessa expansão, métodos de controle
de tráfego e velocidades são cada vez mais requisitados, possibilitando uma melhor
análise das vias em geral. Esse aumento natural do número de automóveis proporci-
ona um aumento significativo nos acidentes causados por alta velocidade. Segundo a
Organização Mundial da Saúde (OMS), o número de mortes causadas por acidentes
veiculares em 2016 foi de 1,2 milhões, sendo 90% desses acidentes em países de
baixa ou média renda apesar de possuírem apenas metade dos veículos do mundo
(WHO, 2017).
Ainda sobre os acidentes automotivos, a OMS estima que um aumento de 1
km/h na velocidade média veicular resulta num acréscimo de 4% a 5% na chance da
geração de um acidente fatal e de que 40% a 50% dos motoristas trafegam acima
da velocidade permitida pelas vias (WHO, 2017). Esse é um dado importante para a
conscientização da importância de uma medição e controle da velocidade nas cidades
e nas rodovias, onde além do controle e da melhoria no fluxo veicular, o controle de
velocidade também pode reduzir muito a chance de um acidente fatal.
Com esse cenário, surge uma grande necessidade de aprimoramento do con-
trole de tráfego. Para controle de velocidade na vias, o dispositivo mais difundido
trata-se do sensores magnéticos, no entanto, esses instrumentos são capazes ape-
nas de realizar a contagem, medição de velocidade e identificar algumas infrações
como avanço de semáforo e parada sobre a faixa de pedestre.
O aumento do poder de processamento e o desenvolvimento de algoritmos
para processamento de imagens digitais, possibilita uma recente solução para o con-
trole de tráfego através de câmeras de monitoramento. Esse tipo de solução é bem
mais simplificado em termos de instalação, o que gera um baixo custo em seu inves-
timento e manutenção se comparado aos medidores de laço indutivo (ALEXANDRE,
1997). Além disso, através desse novo sistema, pode-se realizar todas as funções
que um sistema de medição por laço indutivo já faz. Contudo, a utilização de processa-
14
mento de imagem e visão computacional ainda abre a possibilidade de aprimoramento
dos algoritmos e adição de novas funções ao longo dos anos, sem a necessidade, na
maioria dos casos, de troca de equipamentos.
Segundo Barcellos (2014), “visão computacional é o processo de utilizar um
computador para extrair informações de alto nível de uma imagem digital”. Dessa
forma, uma câmera capta as imagens em forma de vídeo e os algoritmos de visão
computacional realizam o processo de extração de informação necessária, fazendo o
processamento de cada quadro do vídeo (frame), aplicando métodos e abordagens
matemáticas para realizar a detecção, o rastreamento1 (tracking) e a classificação do
veículos.
Ainda assim, existem desvantagens quando se trata da utilização de câme-
ras de monitoramento. Muitas, estão sujeitas à vibrações devido ao vento e passa-
gem de veículos pesados (BARCELLOS, 2014). Além disso, um dos pontos chaves
para implementação desse sistema é a posição da câmera, pois dependendo do ân-
gulo da imagem captada, pode ocorrer oclusões na presença de veículos grandes. E
quando são utilizadas câmeras de vigilância que já estavam previamente instaladas e
a posição não foi escolhida objetivando o uso de visão computacional, aumenta-se a
complexidade dos métodos e algoritmos a serem utilizados, a fim de contornar essa
questão dos ângulos, iluminações, oclusões, etc.
1.1 DELIMITAÇÃO DO TEMA
Entre as diversas técnicas existentes, escolheu-se como base do trabalho a
técnica de supressão de fundos, pois este método tem como resultado a formação
de uma imagem binária. Esse tipo de imagem possibilita realizar diversas operações
e transformações de forma simplificada se comparado com imagens coloridas ou em
escala de cinza.1 Rastreamento em processamento de vídeo é processo de acompanhar a posição do objeto em
movimento durante a passagem dos frames.
15
1.2 OBJETIVO
1.2.1 Objetivos Gerais
Desenvolver uma nova proposta de medição de velocidade para veículos,
utilizando-se de processamento de imagens e visão computacional.
1.2.2 Objetivos Específicos
Constituem-se objetivos deste trabalho:
• Revisar a literatura e estado da arte.
• Desenvolver um algoritmo que consiga identificar um veículo, em seguida realizar
o tracking do mesmo, e posteriormente realize uma estimativa de sua velocidade.
• Analisar as velocidades obtidas com o método proposto e compará-las com um
sistema tradicional de medição de velocidade veicular, a fim de validar o método
apresentado neste trabalho.
1.3 JUSTIFICATIVA
Os medidores de velocidade tradicionais (sensores indutivos) apresentam di-
versos tipos de dificuldade em sua instalação e manutenção. Problemas como interfe-
rências magnéticas, deterioração do pavimento, dificuldade no ajuste de sensibilidade
dos laços indutivos, possibilidade de burlar o sistema, entre outros. Porém, muitos des-
ses inconvenientes poderiam ser evitados, por meio de um sistema mais simplificado,
utilizando-se de apenas uma câmera de vídeo e aplicando técnicas de processamento
de imagem e visão computacional.
A estrutura de instalação, na maioria dos casos, já está feita, uma vez que
os medidores tradicionais já possuem uma câmera para fazer o reconhecimento das
placas dos veículos. Além disso, outra vantagem desse sistema é a possibilidade de
aprimoramento nos algoritmos, permitindo não apenas identificar veículos, mas tam-
bém realizar o reconhecimento dos mesmos a fim de classificá-los em tipos, modelos,
marcas, etc. Tudo que possa ser relevante para ajudar na tomada de decisão do con-
trole do fluxo de tráfego de veículos.
16
1.4 VISÃO GERAL DO TRABALHO
No presente trabalho, será realizado um algoritmo para detecção e medição
de velocidade veicular. O Capítulo 2 apresenta uma breve discussão dos métodos de
medição de velocidade tradicionais, explicando os mesmos com o seu funcionamento
e as devidas vantagens e desvantagens. Posteriormente, será abordado o processa-
mento de imagens e visão computacional, demonstrando estudos com os tópicos re-
levantes ao trabalho estudado desde a formação da imagem, fundamentos e modelos
de cores.
No Capítulo 3 serão abordados os temas relevantes para o desenvolvimento
do algoritmo, com os estudos teóricos que suportam a elaboração do código em cada
um dos tópicos necessários para o seu bom funcionamento.
No Capítulo 4 serão demonstrados os resultados obtidos após o uso do algo-
ritmo em um estudo de caso, apresentando os pontos positivos e negativos do código
no caso real, os comparativos com métodos tradicionais já existentes e verificando se
os valores produzidos estão dentro dos erros mínimos necessários para a sua valida-
ção.
17
2 REVISÃO DA LITERATURA
Neste capítulo são apresentados fundamentos essenciais para o desenvolvi-
mento deste trabalho que envolve processamento de imagem e visão computacional
aplicados para medição de velocidade veicular. Inicialmente será discutido o princí-
pio básico de funcionamento dos medidores de velocidades atuais e em seguida será
abordado os conceitos relevantes de processamento de imagem e visão computacio-
nal relacionados ao problema em questão.
2.1 MEDIDORES DE VELOCIDADE
As maneiras utilizadas para medir a velocidade dos veículos, se baseiam em
três métodos que são regulamentados pela Portaria Instituto Nacional de Metrologia,
Qualidade e Tecnologia (INMETRO) no 544, de 12 de dezembro de 2014.
Nessa portaria define-se como:
• Medidor de velocidade de sensores de superfície: instrumento cujo elemento
sensor encontra-se instalado sob ou sobre a superfície da via, propiciando a me-
diação da velocidade através da mudança das propriedades físicas deste sensor
quando da passagem de um veículo.
• Medidor de velocidade óptico: instrumento que utiliza feixe de luz na região vi-
sível ou infravermelho do espectro eletromagnético, propiciando a medição de
velocidade através do processamentos de energia refletida no veículo alvo ou
pela interrupção dos feixes provocados pela passagem de um veículo.
• Radio Detection And Ranging (RADAR): instrumento que transmite e recebe on-
das contínuas na faixa de micro-ondas, propiciando a medição da velocidade do
veículo alvo através do efeito Doppler.
2.1.1 Laços Indutivos
Este é método mais comum para realizar a detecção de veículos e medição de
velocidade. Conforme o tipo de aplicação é instalado um arranjo de dois ou mais laços
18
indutivos na via por onde passam os veículos. Esses laços indutivos, são bobinas, que
serão submetidas à um sinal oscilatório, com uma frequência conhecida. A Figura 1
demonstra de forma simplificada como é feito o posicionamento dos laços indutivos
em uma via pública.
Figura 1 – Esquema de instalação dos laços indutivos nasvias públicas.
Laço 2
Laço 1
Laço 4
Laço 3
Δs
Fonte: Autoria Própria.
Quando a corrente elétrica imposta pelo circuito oscilador atravessa o fio da
bobina, cria-se em torno dos fios um campo magnético. Esse campo terá sua forma
alterada quando ocorrer a passagem do veículo em cima do laço indutivo, pois os au-
tomóveis possuem uma grande massa metálica, principalmente na dianteira devido ao
motor. Essa alteração no campo magnético irá refletir uma mudança na frequência de
oscilação da bobinas. Então utiliza-se microcontroladores para realizar a identificação
dessa variação de frequência e quando detectada, gera-se um pulso indicando que o
veículo está em cima do laço. Como o sistema possui dois laços ou mais, obtêm-se um
sequência de pulsos com intervalos de tempo bem definidos (CHEUNG et al., 2005).
Portanto, conhecendo o tempo que o veículo demorou para percorrer a distância entre
os laços é possível determinar a velocidade do carro pela Equação (1):
𝑉 =∆𝑠
∆𝑡(1)
Onde:
• ∆𝑠 : distância entre os laços indutivos.
• ∆𝑡 : tempo entre os pulsos de detecção de veículo sobre o laço indutivo.
19
2.1.1.1 Desvantagens do método intrusivo - Laços indutivos
• Sistema fixo: pois é necessário embutir os sensores no pavimento.
• Dificuldade de instalação: precisa-se interditar a via para refazer a pavimentação
para que os laços indutivos sejam instalados abaixo dela.
• Dificuldade de manutenção: Se o órgão público necessitar recapear o asfalto, ou
até mesmo precisar fazer a instalação/manutenção de canos de esgotos, terá
que ser feito a reinstalação dos sensores.
• Possibilidade de não detecção de veículos leves: uma motocicleta pequena, de-
vido a sua massa metálica menor, causa pouca mudança de frequência, aproxi-
madamente 1% a 2% em relação à um automóvel padrão. Assim como, veículos
que possuem seu assoalho elevado em relação a superfície da estrada, podem
também não serem detectados pelos laços.
2.1.2 Medidor de velocidade baseados em tecnologia Laser e Doppler
O efeito Doppler baseia-se em uma característica encontrada nas ondas ele-
tromagnéticas quando estão sendo refletidas ou emitidas por um objeto que está se
deslocando em relação ao observador (MAIA; FARIAS, 2007).
O funcionamento deste tipo de radar ocorre da seguinte maneira, o aparelho
emite uma onda eletromagnética de frequência conhecida (𝑓 ′) contínua e constante
na direção do veículo a ser analisado. Se esse veículo estiver se movimentando em
direção à fonte, o receptor do radar identifica uma aumento na frequência (𝑓 ′′). A
Figura 2 ilustra esse caso.
20
Figura 2 – Exemplo de um automóvel se aproximando doradar de efeito Doppler.
Ondas com frequência f' emitidas pelo radar
V
Ondas com frequência f'' recebidas pelo radar
V
#
Fonte: Autoria Própria.
Na outra situação, ou seja, o automóvel esteja se afastando do radar, haverá
uma diminuição do valor recebido f” se comparado com o valor emitido f’, como a
Figura 3 demonstra abaixo.
Figura 3 – Exemplo de um automóvel se afastando do ra-dar de efeito Doppler.
Ondas com frequência f' emitidas pelo radar
V
Ondas com frequência f'' recebidas pelo radar
V
Fonte: Autoria Própria.
Portanto a diferença entre as frequências emitidas (𝑓 ′) e refletidas (𝑓 ′′) serão
21
traduzidas pela unidade de processamento como um valor de velocidade.
2.1.2.1 Baseados em Laser
O funcionamento deste método é semelhante ao de efeito Doppler. Emprega-
se a técnica do Light Detection And Ranging (LiDAR), utiliza-se a emissão de pulsos
de luz por um laser sob uma predeterminada taxa de frequência (BASTOS; FILHO,
2012). Uma pistola LiDAR emite pulsos feixes concentrados de luz invisível ao espec-
tro do olho humano, na direção do veículo alvo e então a velocidade do automóvel é
calculada observando o tempo de retorno desse feixe ao sensor. Então converte-se o
tempo decorrido em distância.
2.1.3 Vantagens do método não-intrusivo - Laser e Doppler
As vantagens deste sistema são:
• Mínima necessidade de interrupção do tráfego durante sua instalação.
• Facilidade de manutenção e reparo.
• Maior durabilidade.
• Baixa suscetibilidade aos fatores ambientais que, reduzem a vida útil dos sen-
sores intrusivos. Fatores como, temperatura, infiltrações, deterioração do pavi-
mento, etc.
• Possibilidade de mudança do local de operação.
2.2 PROCESSAMENTO DE IMAGEM E VISÃO COMPUTACIONAL
A visão computacional, assim como o processamento de imagem, recebem
como entrada (input) um dado visual. O processamento de imagem é considerado
uma etapa de baixo nível, onde o objetivo é melhorar a imagem para que aumente
a chance de sucesso na interpretação desse dado, onde a etapa de interpretação
já passa a ser considerada de alto nível. Na visão computacional, busca-se entregar
como saída informações de caráter quantitativo e qualitativo de um dado visual ana-
22
lisado. Geralmente, essa tem como objetivo se assemelhar a visão humana, ou seja,
sendo capaz de reconhecer padrões, distinguir objetos, classificá-los, ordená-los, etc.
2.2.1 Processamento de Imagem
Em conformidade com Pedrini e Schwartz (2008), um sistema de processa-
mento digital de imagens é formado por um conjunto de etapas, que são ilustradas na
Figura 4, capazes de produzir um resultado a partir do domínio do problema.
Figura 4 – Etapas de um sistema de processamento deimagem.
Aquisição
Pré-processamento
Segmentação
Representaçãoe
Descrição
Reconhecimentoe
Interpretação
Base
de
Conhecimento
Domínio do Problema
Resultado
Fonte: Adaptado de (PEDRINI; SCHWARTZ, 2008).
Na etapa de aquisição é feita a captura da imagem por meio de sensores, que
converte-a em uma representação digital do sinal produzido pelo sensor óptico. Alguns
dos sensores mais utilizado são as câmeras de vídeos, tomógrafos médicos, satélites
e scanners. Essa etapa deve ser realizada com máxima atenção aos detalhes, como
23
escolha do tipo de sensor, condições de iluminação, resolução da imagem, etc. Pois
com uma boa captura, evita-se grandes esforços na etapa de pré-processamento.
A imagem capturada pode, na maioria dos casos, apresentar imperfeições,
então a etapa de pré-processamento visa aprimorar a qualidade da imagem com o
objetivo de aumentar as chances para o sucesso dos processos seguintes (GON-
ZALEZ; WOODS, 2000). Esse aperfeiçoamento geralmente ocorre mediante a apli-
cação de técnicas para atenuação de ruído, correção de contraste ou brilho, isola-
mento de regiões e suavização de determinadas propriedades da imagem (PEDRINI;
SCHWARTZ, 2008).
A próxima etapa trata-se da segmentação. Nela, executa-se a extração e
identificação de áreas de interesse na imagem. Essa etapa baseia-se, em geral, em
detectar descontinuidades (bordas) ou similaridades (regiões) na imagem (PEDRINI;
SCHWARTZ, 2008). O resultado da saída do estágio de segmentação é formada tipi-
camente por dados em forma de pixel (raw pixel data) (GONZALEZ; WOODS, 2000).
A seleção de uma representação é apenas parte da solução para transformar
dados iniciais numa forma apropriada para o subsequente processamento computaci-
onal. Nessa etapa utiliza-se estruturas de representação para armazenar e manipular
os objetos de interesse extraído da imagem, de forma que essas características de
interesse sejam enfatizadas. No processo de descrição, também chamado de seleção
de características, visa à extração de características ou propriedades que possam ser
aproveitadas na discriminação entre classes e objetos (GONZALEZ; WOODS, 2000).
Na etapa de reconhecimento acontece a atribuição dos identificadores (clas-
ses) aos objetos da imagem, baseado nas características providas pelos seus descri-
tores. O processo de interpretação tem como objetivo atribuir um significado ao con-
junto de objetos reconhecidos anteriormente. Por exemplo, a interpretação de uma
imagem contendo células sanguíneas, poderia ser o diagnóstico de anemia devido a
quantidade de células na amostra.
Segundo Pedrini e Schwartz (2008), a base de conhecimento, é dependente
da aplicação, cujo tamanho e complexidade podem variar significativamente. Além de
guiar a operação de cada módulo de processamento, a base de conhecimento também
controla a interação entre os módulos.
24
2.2.2 Modelos de Imagens
De acordo com Gonzalez e Woods (2000), uma imagem digital é uma imagem
𝑓(𝑥,𝑦) discretizada tanto em coordenadas espaciais quanto em brilho. Uma imagem
pode ser classificada como sendo uma matriz cujo índices de linhas e de colunas
identificam um ponto na imagem. Além dessa posição, uma imagem digital possui um
ou mais valores associados à essa mesma posição da matriz que identificam a cor
naquele ponto 𝑓(𝑥,𝑦). Os elementos dessa matriz, recebem o nome de pixel.
Em processamento de imagem considera-se o ponto de origem do sistema
como sendo o ponto superior esquerdo da imagem. Portanto, valores do eixo 𝑥 au-
mentam no sentido da esquerda para direita e valores de 𝑦 aumentam no sentido de
cima para baixo.
Figura 5 – Diferença na qualidade de representação decírculo utilizando uma matriz de 12x12 pixelse outra de 48x48 pixels.
12x12 48x48
BaixaDensidade
MédiaDensidade
Fonte: Autoria Própria.
A intensidade de uma cena pode ser modelada fisicamente em termos do
produto de dois componentes. A iluminância refere-se a quantidade de luz incidente na
cena, e a reflectância, que indica a quantidade de luz refletida pelos objetos presentes
na cena. Sendo assim a função 𝑓(𝑥,𝑦) pode ser definida como:
𝑓(𝑥,𝑦) = 𝑖(𝑥,𝑦) · 𝑟(𝑥,𝑦) (2)
Para:
0 < 𝑖(𝑥,𝑦) < ∞ 𝑒 0 < 𝑟(𝑥,𝑦) < 1
25
Onde:
• 𝑖(𝑥,𝑦) é a função que representa a iluminância e é medido em lúmen/m² ou lux.
• 𝑟(𝑥,𝑦) representa a reflectância e é medida em valores percentuais entre 0 e 1.
2.2.3 Fundamentos de cor
O método de percepção de cores através de processos psicofisiológicos do
cérebro humano, apesar de ainda não ser completamente compreendido, possui um
longos e bem fundamentados estudos dos princípios físicos da cor por meio de diver-
sos resultados teóricos e experimentais.
A cor é gerada através de uma manifestação da percepção da luz, onde o raio
luminoso é formado de partículas, os fótons, onde sua frequência e velocidade são
decisivos para o comprimento de onda dos fótons.
Nos processos de geração das cores, dois modos importante podem ser ci-
tados: o processo aditivo e o subtrativo. Durante o aditivo, as energias dos fótons
envolvidos na formação da cor são somados, enquanto no subtrativo a luz é oriunda
de materiais em que a energia luminosa incidente é absorvida e parte é transmitida
(PEDRINI; SCHWARTZ, 2008).
Outra informação importante sobre a percepção das cores no cérebro humano
é em relação aos comprimentos de ondas, onde esses estão estritamente relacio-
nados às diversas cores percebidas. Para a descoberta, Isaac Newton (1642-1727)
percebeu que um feixe de luz branca, após atravessar um prisma, era separado em
espectros variando do violeta ao vermelho. Esse intervalo de espectros ficou conhe-
cido como o “espectro de luz visível”, como pode ser observado na Figura 6.
2.2.4 Modelos de Cores
Os modelos de cores possibilitam a determinação de cores em formatos pa-
dronizados para que diferentes tipos de dispositivos sejam capaz de manipular di-
versas cores. Os modelos de cores são fundamentalmente uma representação tridi-
mensional onde cada cor pode ser estabelecida por um ponto no sistema (PEDRINI;
SCHWARTZ, 2008).
26
Figura 6 – Espectro eletromagnético com ênfase na luz vi-sível.
Rádio MicroondasInfra
vermelhoUltravioleta
Raios X Raios Gama
Faixa Visível
Vermelho Laranja Amarelo Verde Azul Violeta
Freq.(Hertz)
10⁴ 10⁶ 10⁸ 10¹⁰ 10¹² 10¹⁴ 10¹⁶ 10¹⁸ 10²⁰ 10²⁴
770 622 597 577 492 455 390Comprimento de Onda (μm)
Fonte: Adaptado de (PEDRINI; SCHWARTZ, 2008)
Pelo fato de um modelo de cor não poder reproduzir todos as diversas cores,
diferentes modelos foram criados para determinar as diferentes características das
cores. Esse modelos podem ser divididos entre aditivos e subtrativos.
Nos modelos aditivos, as cores são formadas pela combinação de diversas
outras, onde a cor branca é gerada pela soma das cores primárias, definidas como
vermelho, verde e azul, e a cor preta pela ausência da transmissão de luz.
Já nos modelos subtrativos, a combinação das cores primárias ciano, ma-
genta e amarelo formam a cor preta, onde a geração da cor branca é a ausência das
mesmas.
2.2.4.1 Modelo RGB (Red, Green, Blue)
O modelo de cores RGB é um modelo aditivo fundamentado em um sistema
cartesiano, onde o espaço de cores é baseado na forma geométrica de um cubo. As
vértices desse cubo são formadas pelas cores primárias vermelha (R, red), verde (G,
green) e azul (B, blue), as vértices posteriores são compostas das cores primárias
complementares ciano, magenta e amarelo. A escala de cinza pode ser determinada
por uma diagonal saindo da origem, onde o ponto mais próximo a origem tem a cor
preta e a mais distante gera a cor branca. A escala de cinza será melhor discutida na
seção 3.1 deste trabalho.
O modelo RGB é mostrado pela Figura 7 a seguir:
27
Figura 7 – Modelo RGB.
AmareloVermelho
Magenta
Preto
(1,0,0)
(0,1,0)
Verde
Branco
Ciano(0,0,1)
Escala deCinzas
B
G
R
Azul
Fonte: Adaptado de (PEDRINI; SCHWARTZ, 2008)
2.2.4.2 Modelo HSV
Esse modelo de cores tem seus parâmetros definidos pela matiz (H, hue),
saturação (S, saturation) e luminância (V, value).
• Matiz (H) é a componente que seleciona a cor, uma vez que, é controlada pela
posição angular de uma reta que percorre de forma circular o plano perpendicu-
lar ao eixo V (Figura 8).
• Saturação (S) é a componente que define a pureza da cor representada pela
matiz, ou seja, é uma valor percentual (0 a 1). Uma cor considerada pura não
pode conter a cor preta nem a branca.
• Luminância (V) determina o brilho da cor definida pela combinação das outras
duas componentes (H e S).
Esse modelo possui sua representação tridimensional gráfica através uma pi-
râmide hexagonal como pode ser visto na Figura 8 a seguir:
28
Figura 8 – Modelo HSV.
Vermelho
MagentaAzul
Branco1,0
P
0,0Preto
HS
Ciano
Verde120°
AmareloV
240°
0°
Fonte: Adaptado de (PEDRINI; SCHWARTZ, 2008)
Os valores de matizes variam na parte superior da pirâmide, com sua satura-
ção sendo medida ao longo do eixo horizontal e a sua luminância através do eixo ver-
tical. Novamente, cada uma das vértices base possui cada uma das cores primárias
e das primárias complementares, variando com um ângulo de 60° entre si (PEDRINI;
SCHWARTZ, 2008).
2.2.5 Ruídos em Imagens Digitais
Os ruídos em imagens podem ser definidas como efeitos randômicos indese-
jados, normalmente ocasionado por diversos fatores como tipo de câmeras ou lentes,
temperatura, intensidade de luz ou movimentos. O resultado de ruídos é, por exemplo,
em uma situação onde os pixels possuem o mesmo nível de cinza em uma imagem
real (plano real) e após a captação da imagem pela câmera dificilmente possuirá o
mesmo nível que representa esses mesmos pixels (PARKER, 2010), a Figura 9 exem-
plifica esse caso.
29
Figura 9 – Exemplo de ruído captado pelas câmeras.
100 100 100
100 100 100
100 100 100
100 95 96
98 94 100
101 103 99
0 -5 -4
-2 -6 0
+1 +3 -1
No plano realCapturado
pela câmera Ruído (erro)
Fonte: Autoria Própria.
As espécies de ruídos mais frequente de serem modelados são os ruídos
impulsivos, Gaussiano, uniforme, Erlang, exponencial, Rayleigh e Poisson. O modela-
mento de cada um dos tipos de ruídos considera o mesmo uma variável aleatória onde
a função que o descreve é representada por uma função densidade de probabilidade
(PEDRINI; SCHWARTZ, 2008).
Para a supressão de ruídos algumas técnicas de filtragens podem ser utiliza-
das como o uso de filtros lineares, filtros não-lineares e o uso de filtros morfológicos.
O método de supressão de ruídos utilizado no presente trabalho pode ser visto com
mais detalhes na seção 3.6.
30
3 MATERIAL E MÉTODOS
Neste capítulo será apresentado a metodologia necessária para o desenvolvi-
mento do corrente trabalho, a partir do elaboração do algoritmo de detecção e estima-
tiva da velocidade veicular.
O funcionamento do algoritmo é o resultado de uma análise frame a frame do
vídeo, ou seja, para a cada quadro reproduzido o código realizará todos os procedi-
mentos descritos, para assim demonstrar o resultado final. Utilizou-se a linguagem de
programação Python e da biblioteca Open Source Computer Vision library (OpenCV)
para a implementação do algoritmo proposto.
OpenCV é uma biblioteca criada pela Intel no ano de 1999, com o intuito de
ser aplicada para realizar diversos processamentos de imagens e na visão robótica.
O OpenCV apresenta inúmeras funções implementadas para processamento de ima-
gens em diversas áreas de estudo, como medicina e de segurança (MUMTAZIMAH,
2015).
A escolha pelo uso do OpenCV é dada por promover um ambiente de fácil apli-
cação na área de estudo estabelecida e por fornecer as principais funções utilizadas
em processamento de imagem, além de ser uma biblioteca Open Source.
O fluxograma que descreve a sequência de operações do algoritmo tendo
como entrada um frame do vídeo pode ser visto na Figura 10:
Figura 10 – Fluxograma.
Transformação emescala de cinza
Região de Interesse
Ajuste deContraste
OperaçõesMorfológicas
Supressãode fundo
Transformaçãode Perspectiva
Detecção deContornos Tracking
Cálculo da Velocidade
Fonte: Autoria Própria.
A partir do fluxograma, será descrito detalhadamente cada um dos processos
realizados pelo código para a obtenção do resultado do atual trabalho.
31
3.1 TRANSFORMAÇÃO EM ESCALA DE CINZA
Após a captura de frames do vídeo, este em sua maioria apresenta uma infi-
nidade de tons coloridos. Por apresentar esta propriedade, os modelos de cores mais
comuns já citados nesse trabalho que regem as imagens em cores devem ser conver-
tidas para escalas de cinza. Essa transformação facilita o processamento por tornar
mais simples a transformação posterior em binária, onde a cor branca possui o valor
255 e a preta com o valor 0.
No presente trabalho, foi realizado primeiramente um redimensionamento do
vídeo a ser trabalhado com o intuito de reduzir o tempo de processamento, reduzindo
o número de pixels a serem processados. Originalmente, o vídeo possuía uma resolu-
ção de 1080p (1920 × 1080 pixels), onde essa foi reduzida para a resolução de 720p
(1280 × 720 pixels).
Em seguida, realizou-se a transformação do modelo de cor BGR para a escala
em cinza, onde a diferença dos modelos BGR para RGB é simplesmente a posição
dos bytes, onde no modelo BGR o primeiro byte por padrão possuirá o valor do azul
(Blue).
A conversão utilizada para a obtenção da escala em cinza pode ser encon-
trada a partir da seguinte equação, onde R,G e B são valores de 8 bits para as cores
azul (B), verde (G) e vermelho (R) de acordo com a Equação 3 (GüNEŞ; KALKAN;
DURMUŞ, 2015):
Valor de cinza do pixel = 0,299 ·𝑅 + 0,587 ·𝐺 + 0,114 ·𝐵 (3)
3.2 REGIÃO DE INTERESSE
A região de interesse ou Region of interest (ROI) é por definição a delimitação
da área em que se busca obter as informações necessárias para o bom funcionamento
do código, onde as informações desnecessárias ou sem muita relevância devem ser
suprimidas.
Para esse trabalho em específico, informações como faixa e movimentação
de pedestres, calçadas e linhas delimitadoras de pistas foram retiradas para não exer-
32
cerem processamento desnecessários e nem gerarem erros de detecção durante a
rotina do algoritmo.
Para a retirada das informações desnecessárias, foram utilizados polígonos
em regiões estratégicas, onde essas formas geométricas ocultam os espaços deseja-
dos e mostram apenas a área de interesse do estudo, como pode-se o comparativo
na Figura 11:
Figura 11 – Resultado da definição da região de interesse.
(a) Imagem em escala de cinza. (b) Região de interesse aplicada.
Fonte: Autoria Própria.
3.3 EQUALIZAÇÃO DE CONTRASTE
A equalização de contraste tem como principal função aperfeiçoar a qualidade
da imagem obtida, facilitando o alcance de reconhecimento de padrões através da
visão computacional. Em geral, a definição do aperfeiçoamento do contraste para cada
aplicação é feita de maneira empírica, onde é comum a utilização de histogramas
para a análise de contraste em imagens. Dessa maneira é possível ter uma melhor
visualização do comportamento do nível de cinza a cada quadro, relacionando esse
com o número de pixels existente na imagem.
No histograma, a análise é possível pela comparação do número de pixels em
relação ao nível de cinza, variando este numa escala de 8 bits, gerando 256 valores
possíveis. Para cada pixel na imagem, o seu valor pode variar de 0, sendo um pixel
totalmente escuro, e 255, gerando esse com o maior tom de cinza possível.
Para a aplicação do código foi utilizado a função Equalização de Histograma
Adaptativo Limitada ao Contraste (ou Contrast Limited Adaptive Histogram Equaliza-
tion (CLAHE), sigla em inglês). Em termos simples, a CLAHE é uma melhora do mé-
todo chamado aprimoramento adaptativo de contraste (Adaptative Histogram Equali-
33
zation (AHE)), onde na CLAHE é possível gerar alterações de valores como fator de
máximo contraste e altura máxima do histograma pelo usuário (PISANO et al., 1998).
Essa função necessita de duas variáveis para seu funcionamento quando apli-
cada: o valor do limiar para a limitação do contraste e o tamanho da matriz, que será
utilizada para dividir a imagem em retângulos de mesmo tamanho.
Através dessa função foi possível realizar uma análise empírica dos melho-
res valores para a geração de resultado satisfatórios, onde o Gráfico 1 e o Gráfico 2
mostram um exemplo de um quadro do video com o seu histograma original e com o
ajuste de contraste, respectivamente.
Gráfico 1 – Histograma da imagem emescala de cinza.
0 50 100 150 200 250Valor do pixel
0
2000
4000
6000
Quan
tidad
e de
pix
els
Fonte: Autoria Própria.
Gráfico 2 – Histograma com o ajuste decontraste.
0 50 100 150 200 250Valor do pixel
0
2000
4000
6000Qu
antid
ade
de p
ixel
s
Fonte: Autoria Própria
Figura 12 – Diferença entre imagem em escala de cinza e com o ajuste decontraste aplicado.
(a) Imagem em escala de cinza. (b) Imagem com o ajuste de contraste aplicado.
Fonte: Autoria Própria.
34
3.4 TRANSFORMAÇÃO DE PERSPECTIVA
A Transformação de Perspectiva pode ser definida como uma projeção num
plano homográfico através de um conjunto de pontos obtidos no plano de referência.
Para a determinação do plano homográfico, é necessário o cálculo da matriz homo-
gráfica, a partir da função cv2.findHomography(), onde são utilizados pontos do
plano referência para o cálculo.
A mudança de plano é dada pela Equação 4:
𝑠𝑖 ·
⎡⎢⎢⎢⎢⎢⎢⎢⎣𝑥′𝑖
𝑦′𝑖
1
⎤⎥⎥⎥⎥⎥⎥⎥⎦= 𝐻 ·
⎡⎢⎢⎢⎢⎢⎢⎢⎣𝑥𝑖
𝑦𝑖
1
⎤⎥⎥⎥⎥⎥⎥⎥⎦(4)
Onde:
• 𝐻: Matriz homográfica
• 𝑠𝑖: Fator de escala
• (𝑥′𝑖, 𝑦′𝑖): Ponto no plano homográfico
• (𝑥𝑖, 𝑦𝑖): Ponto no plano referência
A utilização da transformação de perspectiva se faz necessária para posterior-
mente simplificar a modelagem matemática da estimativa da velocidade e por facilitar
a detecção do veículos. O objetivo dessa transformação é alterar de forma aproximada
o ponto de vista da câmera, onde no método proposto optou-se por uma vista de cima
da rua. Esse ângulo garante que por toda a passagem do veículo o tamanho que o
pixel representa no plano real não se altera.
Para realizar esse processo escolhe-se quatro pontos das extremidades que
representam a faixa no quadro original e em seguida define-se a nova posição des-
ses quatro pontos, onde para facilitar a aplicação da transformada e obter melhores
resultados, foram separadas cada uma das faixas e aplicada a transformação de pers-
pectiva separadamente. Dessa forma, os oito pontos por faixa são utilizados como pa-
râmetro da função cv2.findHomography() que retorna a matriz homográfica (3×3)
utilizada na transformação de linear da Equação 4.
35
Figura 13 – Exemplo das escolhas dos pontos para a Faixa 1.
Fonte: Autoria Própria.
O resultado da aplicação da transformação pode ser vista na Figura 14:
Figura 14 – Resultado da alteração de perspectiva de cada faixa.
(a) Faixa 1. (b) Faixa 2. (c) Faixa 3.
Fonte: Autoria Própria.
A partir deste ponto, cada faixa tem sua própria imagem e para cada uma
delas será feito os procedimentos descritos nas seções a seguir.
3.5 SUPRESSÃO DE FUNDO
A utilização das câmeras estáticas para a detecção e avaliação da velocidade
veicular possibilita uma maior facilidade para a supressão de fundos estáticos nas
36
imagens obtidas, o que pode ser descrita como Background Subtractor (BGS). Atra-
vés dessa técnica é possível a retirada de pixels que não se alteram ou que possuem
pouca variação, onde somente objetos que geram modificações acima da limiar (th-
reshold) na imagem são detectadas.
Para o presente trabalho foi utilizado o método de background subtractor ba-
seado no modelo estatístico Gaussiano. Esse método elucida que as imagens apre-
sentadas frame a frame demonstram comportamentos bem definidos, podendo dessa
maneira serem descritos por um modelo estatístico. Quando a sequência de imagens
apresentam comportamentos que não se encaixam no modelo estatístico, este são
definidos como um objetos intrusos, fazendo assim parte do foreground, ou seja, é um
objeto que sofreu alteração de um frame a outro (ZIVKOVIC, 2004).
Para realizar essa análise, é feita a comparação dos valores do pixel da ima-
gem de referência (background) e do pixel da imagem subsequente de mesma posi-
ção.
𝑝𝑖𝑥𝑒𝑙_𝑣𝑎𝑙𝑢𝑒 = | (𝑥 , 𝑦)1 − (𝑥 , 𝑦)𝑖−1 | (5)
Onde:
• (𝑥 , 𝑦)𝑡−1 : Valor do pixel na posição (𝑥 , 𝑦) da imagem de referência. Valores
entre 0 e 255 devido a imagem estar em escala de cinza.
• (𝑥 , 𝑦)𝑡 : Valor do pixel na posição (𝑥 , 𝑦) do frame seguinte. (Valores entre 0 e
255)
A Equação 5 retorna também um valor entre 0 e 255 e esse valor indica a
intensidade da mudança do valor do pixel analisado. Sendo que, valores baixos repre-
sentam poucas mudanças e valores altos representam grandes mudanças. A matriz
de pixel formada pelos valores da Equação 5 ainda não é uma imagem binária. Para
realizar a conversão de uma imagem em escala de cinza para uma imagem binária, é
necessário definir um valor de limiar (threshold) e aplicar a Equação 6.
𝑏𝑖𝑛𝑎𝑟𝑦_𝑝𝑖𝑥𝑒𝑙 =
⎧⎪⎪⎪⎨⎪⎪⎪⎩0 para 𝑝𝑖𝑥𝑒𝑙_𝑣𝑎𝑙𝑢𝑒 < 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑
255 para 𝑝𝑖𝑥𝑒𝑙_𝑣𝑎𝑙𝑢𝑒 > 𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑
(6)
37
3.6 OPERAÇÕES MORFOLÓGICAS
As operações morfológicas tem sua origem a partir da morfologia matemática,
criada por Georges Matheron e Jean Serra, onde o seu principal escopo era o estudo
de estruturas geométricas presente em imagens através de técnicas matemáticas.
Essa operação tem como ideia principal a retirada de informações relativas a geo-
metria da imagem através de conjuntos estranhos quando comparado ao chamado
elemento estruturante (FACON, 2011).
Os elementos estruturantes, também conhecidos como kernels, podem ser
definidos como uma imagem binária de prova, de pequeno tamanho se comparado
a imagem que sofrerá as operações morfológicas, que terá a função de comparação.
Esse elemento estruturante será posicionado em toda a imagem que se deseja realizar
a operação, verificando se o elemento está ou não contido. Os kernels podem tomar
qualquer forma desejada, como pode-se ver no exemplo a seguir:
𝑟𝑒𝑐𝑡3×3 =
⎡⎢⎢⎢⎢⎢⎢⎢⎣1 1 1
1 1 1
1 1 1
⎤⎥⎥⎥⎥⎥⎥⎥⎦𝑐𝑟𝑜𝑠𝑠3×3 =
⎡⎢⎢⎢⎢⎢⎢⎢⎣0 1 0
1 1 1
0 1 0
⎤⎥⎥⎥⎥⎥⎥⎥⎦𝑣𝑒𝑟𝑡3×3 =
⎡⎢⎢⎢⎢⎢⎢⎢⎣0 1 0
0 1 0
0 1 0
⎤⎥⎥⎥⎥⎥⎥⎥⎦(7)
Utilizou-se no algoritmo proposto as operações fundamentais das operações
morfológicas binárias, a erosão e a dilatação. A ordem de aplicação das operações
foi realizada de maneira que, primeiro fosse utilizado a operação erosão para a reti-
rada de ruídos da imagem a ser analisada, para que posteriormente fosse aplicado a
operação dilatação, gerando o ampliamento das informações necessárias.
3.6.1 Erosão
Nessa operação, é realizado a comparação do elemento estruturante por toda
a imagem a ser verificada, onde deverá ser obtido duas informações, o fundo e os
pixels relevantes. A cada pixel da imagem avaliada, a operação compara o pixel ana-
lisado com a sua vizinhança. Se o mesmo possuir valor similar aos pixels com set 1
no elemento estruturante, o mesmo é considerado um pixel relevante. Se não houver
uma comparação positiva, o mesmo será considerado fundo e será apagado. Para o
38
processo de erosão, definiu-se um elemento estruturante de forma quadrada 6 × 6,
onde esse tamanho menor é suficiente para retirar todos os ruídos (partículas) gera-
dos durante o processo de background subtractor, discutido na seção 3.5.
O resultado da operação de erosão pode ser visualizado na Figura 15b:
3.6.2 Dilatação
Nessa operação, o processo de comparação para a aplicação ou não da di-
latação é análogo ao processo de erosão, onde o pixel avaliado é comparado a sua
vizinhança através do elemento estruturante. Quando a comparação é positiva, o pixel
é definido como relevante e é aplicado o processo de dilatação. Neste caso, definiu-
se elemento estruturante de forma retangular com largura de 213 e altura 66 pixels.
A largura maior é necessária para garantir que na imagem binária apareça um retân-
gulo com suas laterais maiores que os limites da imagem. O resultado do processo de
dilatação pode ser visto na Figura 15c:
Figura 15 – Resultado das operações morfológicas.
(a) Resultado do BGS. (b) Resultado da ero-são.
(c) Resultado da dilata-ção.
Fonte: Autoria Própria.
3.7 DETECÇÃO DE CONTORNOS
Segundo Bradski e Kaehler (2008), um contorno pode ser definido como
uma sequência de pontos (𝑥,𝑦) que representam uma curva na imagem. A função
cv2.findContours() implementada no OpenCV é baseada no método proposto
39
por Suzuki e Abe (1985). Este método tem como objetivo fazer uma análise estrutu-
ral topológica da imagem binária, conseguindo apenas não só detectar as bordas do
objetos, mas também classificá-las como bordas externas e internas. Através dessa
classificação, é possível organizar os contornos de forma hierárquica, como pode ser
visto no exemplo da Figura 16.
Figura 16 – Relação entre os componentes detectados (b)e relação entre as bordas detectadas (c).
S1
S5
S4
S2
B1
B2
B3S3
B4
Framebackground S1
1-component S2
hole S3
1-component S4
1 component S5
Frame
outer border B1
hole border B2
outer border B3
outer border B4
(b)
(c)
(a)
Fonte: Suzuki e Abe (1985, p. 34).
Como uma das etapas deste trabalho é a detecção do veículo, a informação de
contornos internos dos veículos é desnecessária, sendo mais importante o contorno
externo principal que envolve todo o veículo. A Figura 17b apresenta a sequência de
pontos obtidos pela função cv2.findContours() configurada para retornar apenas
o contorno mais externo.
40
Figura 17 – Resultado obtido com a sequência de pontosdo contorno.
(a) Resultado da dilata-ção.
(b) Sequência de pon-tos do contorno.
(c) Resultado final dadetecção de contor-nos.
Fonte: Autoria Própria.
3.8 ENVOLTÓRIA CONVEXA
Um polígono 𝑃 pode ser classificado como convexo quando é possível posi-
cionar dois pontos distintos quaisquer em sua região poligonal e o segmento formado
entre esses pontos deve estar inteiramente contido nessa região. Essa definição pode
ser vista através da Figura 18.
Figura 18 – Diferença entre um polígono convexo e nãoconvexo.
Convexo Não Convexo
Fonte: Autoria Própria.
Para um dado conjunto de pontos 𝑆, o algoritmo de Envoltória Convexa ou
Convex Hull tem como objetivo retornar uma sequência de pontos 𝐶(𝑆) que repre-
sentam o menor polígono convexo que deve envolver todo o conjunto de pontos 𝑆
(SKLANSKY, 1982).
41
Uma das etapas do algoritmo proposto por Graham (1972) é a verificar se
um ponto 𝑃 (𝑥, 𝑦) está a direita ou a esquerda de um segmento de reta formado por
𝑃0(𝑥0, 𝑦0) e 𝑃1(𝑥1, 𝑦1). Para isso calcula-se o determinante da matriz 𝐴 da Equação 8:
|𝐴| =
⃒⃒⃒⃒⃒⃒⃒⃒⃒(𝑥1 − 𝑥0) (𝑥− 𝑥0)
(𝑦1 − 𝑦0) (𝑦 − 𝑦0)
⃒⃒⃒⃒⃒⃒⃒⃒⃒ (8)
Se o valor do determinante for maior que zero implica que 𝑃 (𝑥, 𝑦) está à es-
querda do segmento de reta, se |𝐴| for menor que zero então 𝑃 (𝑥, 𝑦) está à direita do
segmento de reta e se |𝐴| for igual à zero os três pontos são colineares.
O algoritmo de Graham (1972) calcula a envoltória convexa da seguinte ma-
neira:
1. Cria-se três listas: pontos_da_envoltória, pontos_internos e pontos_-
indefinidos. Inicialmente todos os pontos do conjunto 𝑆 encontram-se na lista
dos pontos_indefinidos.
2. Encontra-se o ponto com o menor valor de coordenada Y, pois este ponto per-
tence à lista de pontos_da_envoltória e será o ponto de refêrencia e de
partida do algoritmo.
3. Precisa-se ordenar a lista de pontos_indefinidos utilizando o ponto de re-
ferência. Esse ponto será a origem de um sistema de coordenadas polares e a
partir dele é feita uma varredura de 0o à 180o e associa-se cada ponto com seu
ângulo. Com o valores dos ângulos organiza-se a lista pontos_indefinidos
de forma crescente, do menor ângulo para o maior.
4. O ponto de referência é movido para a lista pontos_da_envoltória. Até que
a lista de pontos_indefinidos esteja vazia, pega-se o primeiro ponto dessa
lista e verifica-se se ele está a direita ou à esquerda do segmento de reta formado
pelo primeiro ponto da lista de pontos_da_envoltória e o segundo ponto da
lista de pontos_indefinidos. Caso o ponto de esteja à direita ele é movido
para a lista de pontos_da_envoltória, caso contrário é movido para a lista
de pontos_internos.
42
5. Após a etapa 4 finalizada, tem-se como resultado a lista desejada de pontos_-
da_envoltória com seus pontos organizados em uma sequência anti-horária.
Um exemplo do resultado obtido pode ser visto na Figura 19 a seguir:
Figura 19 – Resultado obtido com a sequência de pontosda envoltória complexa.
(a) Resultado da detec-ção de contornos.
(b) Sequência de pon-tos da envoltóriaconvexa.
(c) Resultado final daenvoltória convexa.
Fonte: Autoria Própria.
3.9 RASTREAMENTO DOS VEÍCULOS
Com a imagem binária da seção 3.8 finalizada, desenha-se um retângulo que
envolve todo o veículo utilizando a função cv2.boundingRect(), que recebe como
parâmetro a sequência de pontos da envoltória convexa e retorna o ponto de origem
(𝑥, 𝑦), altura (ℎ) e largura (𝑤) do retângulo desejado. Com os valores de 𝑥, 𝑦, 𝑤, ℎ
de cada quadro, é possível fazer o rastreamento (tracking) dos veículos (STAUFFER;
GRIMSON, 1999).
43
Figura 20 – Resultado obtido com a sequência de pontosda envoltória complexa.
(a) Sequência de pontos cen-trais.
(b) Resultado do rastreamento.
Fonte: Autoria Própria.
O rastreamento funciona da seguinte maneira: a partir dos valores (𝑥, 𝑦, 𝑤, ℎ)
encontra-se o ponto central do retângulo, onde esse é armazenado e continua-se a
análise do próximo frame. Com o valor do novo ponto central, traça-se uma linha do
ponto anterior ao atual. Esse processo é feito até haver onze pontos centrais consecu-
tivos para um mesmo veículo. O traçado desses onze pontos que podem ser vistos na
Figura 20, refletem a distância percorrida pelo veículo nesse intervalo. Através dessa
informação, é possível realizar o cálculo da velocidade do veículo.
3.10 CÁLCULO DA VELOCIDADE
Para a estimação da velocidade utiliza-se a como base a Equação 1. Com
os onze pontos centrais coletados durante o rastreamento, a distância percorrida em
pixels é calculada pela Equação 9.
𝑑 =
√︁(𝑥[𝑖] − 𝑥[𝑖− 10])2 + (𝑦[𝑖] − 𝑦[𝑖− 10])2 (9)
Onde:
44
• 𝑑: distância percorrida em pixels.
• (𝑥[𝑖], 𝑦[𝑖]): último ponto central armazenado.
• (𝑥[𝑖− 10], 𝑦[𝑖− 10]): ponto central do décimo frame anterior.
A Figura 21 mostra como foi definido a distância a ser calculada.
Figura 21 – Origem da variáveis da Equação 9.
d dy
P10(x, y)
P0(x, y)dx
Fonte: Autoria Própria.
Para a conversão da distância de pixels para metros é necessário ter uma
medida em metros no plano real. Essa medida foi estimada utilizando um comprimento
conhecido de um carro em metros e medindo a distância representada em pixels do
mesmo. Dessa maneira, tamanho em metros de cada pixel (𝐶) é dado pela relação
da Equação 10:
𝐶 =distância em metrosdistância em pixels
(10)
Logo, a distância final percorrida em metros é dada pela multiplicação do ta-
manho do pixel (𝐶) pela distância percorrida em pixels (𝑑).
A captura do video foi feita com um framerate de 30.15 quadros por segundo
(𝑓𝑝𝑠), e tendo como premissa de que a captura de cada quadro foi realizada de forma
igualmente espaçada no tempo, tem-se que o tempo transcorrido entre cada quadro
45
é de aproximadamente 33,17 milissegundos. Portanto, o tempo total é dado pela mul-
tiplicação da quantidade de quadros (𝐹 ) por 33,17 milissegundos.
A modelagem final da velocidade é dada pela Equação 11. Onde 3,6 é fator
de conversão de 𝑚/𝑠 para 𝑘𝑚/ℎ.
𝑉𝑒 =𝑑 · 𝐶 · 𝑘
𝐹 · 1𝑓𝑝𝑠
· 3,6 (11)
O fator de correção (𝑘) é necessário para ajustar os pequenos erros durante
a estimação do tamanho do pixel e transformação de perspectiva.
Devido ao tamanho da área de medição, a velocidade é calculada mais de
uma vez para cada veículo, pois o rastreamento retorna mais de onze pontos centrais,
como pode ser visto no exemplo da Figura 22. Dessa forma, a velocidade final é dada
por uma média aritmética das velocidades medidas.
Figura 22 – Velocidades calculadas durante a passagemna área de medição.
Área de Medição
V0V1
V2
Fonte: Autoria Própria.
46
4 RESULTADOS E DISCUSSÃO
Com a realização do algoritmo finalizada, foi utilizado o mesmo para a valida-
ção da sua aplicação em um estudo de caso, onde esse foi empregado para realizar
a detecção e estimativa da velocidade de carros reais no centro da cidade. Utilizou-se
como referência de velocidade real dos carros analisados as velocidades obtidas atra-
vés de um radar indutivo localizado um pouco acima da área de medição do presente
trabalho. É importante ressaltar que as velocidades utilizadas como referências tam-
bém podem apresentar erros de até ± 3 km/h, por se tratar de um medidor velocidade
que também deve respeitar os erros mínimos exigidos pelo INMETRO.
Segundo a Portaria INMETRO no 544, os medidores de velocidade fixos não
podem apresentar, em campo, erros maiores que:
• ± 3 km/h para velocidades menores ou iguais a 100 km/h,
• ± 3% para velocidades maiores que 100 km/h.
No presente trabalho, o erro máximo de medição foi estabelecido como ±
3 km/h, por se tratar de um perímetro urbano onde a velocidade máxima permitida
segundo o Código de Trânsito Brasileiro, lei de no 9.503 de 23 de Setembro de 1997
no Artigo no 61, é de 60 km/h em vias arteriais.
Para a validação das velocidades e detecções dos veículos, os resultados
foram analisados dividindo os valores de erros máximos e número de detecção por
faixas, onde foi possível realizar a análise individual de cada um dos resultados.
Os resultados por faixa e total estão dispostos na Tabela 1 a seguir.
Tabela 1 – Resultados finais obtidos em um resolução de 720p.
Faixa 1 Faixa 2 Faixa 3 TOTAL
Erro Médio Absoluto [𝑘𝑚/ℎ] ± 3,124 ± 2,198 ± 1,759 ± 2,265
Erro Médio Percentual 6,55% 4,67% 3,79% 4,81%
% de Erros até ± 3,0𝑘𝑚/ℎ 60,00% 66,67% 80,00% 70,13%
% de Erros entre ± 3,0 e ± 5,0𝑘𝑚/ℎ 15,00% 18,51% 13,33% 15,58%
% de Erros Maiores ± 5,0𝑘𝑚/ℎ 20,00% 7,41% 3,33% 9,09%
Veículos Detectados 19 de 20 25 de 27 29 de 30 73 de 77
Taxa de Detecção 95,00% 92,59% 96,67% 94,81%
Fonte: Autoria Própria.
47
Com o resultados apresentados, é possível observar que a média dos erros
das medições totais, em quilômetro por hora ficou em ± 2,265 km/h, menor que o erro
máximo permitido pela INMETRO.
Na análise da medição de velocidade por faixa, as faixas 2 e 3 também apre-
sentaram valores médios menores do que o erro permitido, ± 2,198 km/h e ± 1,759
km/h, enquanto que a faixa 1 apresentou um valor acima do máximo, com ± 3,124
km/h de erro médio.
Apesar das faixas 2 e 3 possuírem valores médios de erros abaixo do permi-
tido, a faixa 2 obteve 7 medições acima do permitido, enquanto que na faixa 3 apre-
sentou 5 medições acima.
Já em relação a detecção veicular, os valores de reconhecimento ficaram em
94,81% de detecção total em todas as faixas. A faixa 1 e 3 apresentaram resulta-
dos semelhantes, como uma boa taxa de detecção, enquanto na faixa 2 obteve uma
detecção inferior de 92,59%.
Dos valores obtidos nas faixas 1 e 2, cerca de 60% estão dentro da faixa de
erros até ± 3,0 km/h, valores esses abaixo dos 80% obtidos na faixa 3. Um proposta
melhorar essa questão é realizar a captura dos quadros à um taxa de 60 FPS. Com
um taxa maior é possível ter mais amostras de velocidades medidas e então a média
delas será um valor mais consolidado.
A seguir será apresentado uma sequência de 4 gráficos referentes as faixas
1, 2, 3 e o resultado total. O gráficos apresentam cada medição feita e seu respectivo
erro absoluto. As medições estão dispostas em sequência, ou seja, a medição 0 repre-
senta o primeiro carro que apareceu no vídeo naquela determinada faixa. O gráficos
possuem quatro linhas horizontais que definem os limites de ± 3,0 km/h e ± 5,0 km/h.
48
Gráfico 3 – Resultado obtido na Faixa 1.
0 5 10 15 20Medições
7.5
5.0
2.5
0.0
2.5
5.0
7.5
10.0
12.5
Erro
Abs
olut
o (k
m/h
)
Fonte: Autoria Própria.
Gráfico 4 – Resultado obtido na Faixa 2.
0 5 10 15 20 25Medições
4
2
0
2
4
6
Erro
Abs
olut
o (k
m/h
)
Fonte: Autoria Própria.
49
Gráfico 5 – Resultado obtido na Faixa 3.
0 5 10 15 20 25 30Medições
6
4
2
0
2
4Er
ro A
bsol
uto
(km
/h)
Fonte: Autoria Própria.
Gráfico 6 – Resultado total.
0 10 20 30 40 50 60 70Medições
7.5
5.0
2.5
0.0
2.5
5.0
7.5
10.0
12.5
Erro
Abs
olut
o (k
m/h
)
Fonte: Autoria Própria.
50
4.1 ANÁLISE DE DESEMPENHO
Um dos objetivos quando trata-se de processamento de vídeo é busca pelo
processamento em tempo real, ou seja, a máquina deve conseguir executar o algo-
ritmo e entregar o resultado dentro do intervalo de tempo de captura da câmera.
Durante os testes utilizou-se uma máquina com um processador AMD FX-
8320 (4,0 GHz) e 16 GB de RAM. Essa máquina teve uma média de quadros pro-
cessados em torno de 11 FPS na resolução de 720p. Para contornar esse problema,
sugere-se três opções:
1. Mudar a linguagem de programação de Python para #C. A linguagem Python
utiliza um interpretador durante a execução do algoritmo, onde o interpretador
analisa cada linha do código escrito em alto nível, interpreta (traduz para baixo
nível) para depois executar o comando. Já a linguagem #C utiliza um compilador,
onde esse compilador faz um pré-processamento, ou seja, antes do algoritmo
ser executado é feita a ”tradução” do código de alto nível para baixo nível, o que
torna essa linguagem mais eficiente quando o fator tempo é uma variável crítica.
2. Diminuir a resolução do vídeo. Um frame com resolução de 720p possui 921.600
pixels e um de 480p possui 409.600 pixels, isso representa uma diminuição de
55% da quantidade de pixels à serem processados. No entanto, quanto menor a
escala de resolução menor será o nível de detalhes da imagem, o que gera uma
diferença de resultados durante a etapa de detecção.
Sem alterar nenhum parâmetro do algoritmo, realizou-se testes em diferentes re-
soluções para efeito de comparação e com os resultados construiu-se a Tabela 2
a seguir:
51
Tabela 2 – Resultados em diferentes resoluções.
Resolução
Erro Médio
Absoluto
[𝑘𝑚/ℎ]
Tempo Médio de
Processamento
[𝑚𝑠]
FPSTempo
Real
1080p ± 3,016 112,53 8,88 Não
720p ± 2,265 90,94 10,99 Não
480p ± 2,718 40,17 24,89 Não
360p ± 3,696 21,50 46,51 Sim
240p ± 3,792 15,79 63,33 Sim
144p ± 6,347 10,72 93,28 SimFonte: Autoria Própria.
O dados da Tabela 2 mostram que é possível fazer um medição em tempo real
quando diminui-se a resolução do vídeo e que a medida que a resolução diminuiu
o erro médio aumenta.
3. Troca do processador para um mais recente com 8 núcleos físicos/16 núcleos
virtuais (threads).
52
5 CONCLUSÕES E PERSPECTIVAS
5.1 CONCLUSÕES
A realização do algoritmo no presente trabalho possibilitou desde o estudo
teórico envolvido no seu desenvolvimento até o entendimento do uso e aplicação atra-
vés do processamento de imagens e visão computacional para a finalidade destinada,
a estimativa de velocidade.
A facilidade da aplicação do uso do processamento de imagens para a esti-
mativa de velocidade veicular é clara, onde essa necessita apenas do algoritmo para
realizar o cálculo de velocidade e da adição de um hardware capaz de processar as
informações relacionadas, já que os métodos tradicionais já utilizam câmeras para a
captura da placa do automóvel que efetuou a infração. Dessa maneira, esse método
possui grande potencial para seu uso em larga escala sem grandes aumentos de cus-
tos estruturais.
Os resultados obtidos deixam claros que a utilização do código para usos prá-
ticos são viáveis, onde esse apresentou erros, na média, menores que os exigidos
pelo INMETRO, apesar de alguns valores de erros ultrapassarem os valores limites. É
importante ressaltar que os valores encontrados pelo presente trabalho foram compa-
rados com valores de referências obtidos através de um radar indutivo, o qual também
pode apresentar um erro de ± 3 km/h, segundo o INMETRO.
Apesar dos resultados, a Portaria INMETRO no 544 cita apenas três tipos de
tecnologias que podem ser aplicadas aos sistemas de medições de velocidade: por
sensor de superfície, ótico e radares, sem citar o uso do processamento de imagem
para esse tipo de avaliação. Para que fosse possível a utilização desse método de aná-
lise, seria necessário a inclusão deste com as devidas regulamentações, exigências e
parâmetros mínimos necessários para o seu devido uso.
Já quanto o número de detecção, esse não possui um valor mínimos exigido,
porém o resultado de veículos detectados foi considerado satisfatório, sendo próximo
aos 95%.
Outro resultado importante que pode ser citado é a taxa de detecção relaci-
onado as motocicletas. Radares indutivos, como o usado para valores de referências
53
desse trabalho, tem dificuldade de detectar motocicletas pelo fato da calibração da
frequência dos osciladores desse tipo de radar ser complexo. Isso é ocasionado pelo
fato das motos não possuírem grande massa metálica, necessitando de uma maior
sensibilidade na calibração dos radares indutivos, podendo gerar erros de detecção
causados por interferência. Por outro lado, o método desenvolvido utilizando proces-
samento de imagem elaborado pelo presente trabalho obteve grande sucesso em re-
lação as motocicletas, sendo capaz de detectar e estimar a velocidade das mesmas.
Quanto as desvantagens que podem ser citadas, nota-se que o uso de
hardwares de maior processamento e uma mão de obra mais especializada para o
desenvolvimento do algoritmo ou ajuste de parâmetros do mesmo encarecem a insta-
lação e a manutenção desses equipamentos, sendo necessário um cálculo de viabili-
dade econômica quanto o seu uso.
Pode-se concluir que o resultado buscado pelo trabalho foi alcançado, elabo-
rando um algoritmo que satisfaz, através do erro médio e da taxa de detecção, os
valores necessários para a sua implementação na medição de velocidade, como foi
confirmado anteriormente nos capítulos anteriores.
5.2 TRABALHOS FUTUROS
Como possíveis trabalhos futuros, pode-se citar:
• O uso do presente trabalho com a utilização de uma nova linguagem de pro-
gramação, a fim de comparar o desempenho do tempo de processamento e a
melhora no tratamento de vídeos com resoluções acima de 360p.
• O uso do hardware disponível pela Universidade Tecnológica Federal do Paraná
Câmpus Ponta Grossa para a execução do algoritmo e avaliação dos resultados
alcançados.
54
REFERÊNCIAS
ALEXANDRE, Luís F. B. de A. Detecção de Movimento e sua Aplicação àMonitorização de Tráfego Rodoviário. set. 1997. 89 p. Dissertação (Mestrado)— Departamento de Engenharia Electrotécnica e de Computadores, Faculdade deEngenharia da Universidade do Porto, Porto, PRT, set. 1997. Citado na página 13.
BARCELLOS, Pablo R. M. Detecção e Contagem de Veículos em Vídeos deTráfego Urbano. abr. 2014. 115 p. Dissertação (Mestrado) — Instituto de Informática,Universidade Federal do Rio Grande do Sul, Porto Alegre, BRA, abr. 2014. Citado napágina 14.
BASTOS, Bruno da C.; FILHO, Leonardo E. Utilização da tecnologia LiDAR emprojetos de engenharia de infraestrutura viária. XI Congreso Nacional y VIIILatinoamericano de Agrimensura, v. 11, mar. 2012. Citado na página 21.
BRADSKI, Dr. Gary Rost; KAEHLER, Adrian. Learning Opencv, 1st Edition. First.[S.l.]: O’Reilly Media, Inc., 2008. ISBN 9780596516130. Citado na página 38.
CHEUNG, Sing Yiu et al. Traffic measurement and vehicle classification with singlemagnetic sensor. Transportation Research Record: Journal of the TransportationResearch Board, SAGE Publications, v. 1917, n. 1, p. 173–181, jan 2005. Disponívelem: . Citado na página 18.
FACON, Jacques. A morfologia matemática e suas aplicações em processamento deimagens. VII Workshop de Visão Computacional, mar. 2011. Citado na página 37.
GONZALEZ, Rafael C.; WOODS, Richard E. Processamento de Imagens Digitais.São Paulo, BRA: Blucher, 2000. 509 p. Citado 2 vezes nas páginas 23 e 24.
GRAHAM, R.L. An efficient algorith for determining the convex hull of a finite planarset. Information Processing Letters, Elsevier BV, v. 1, n. 4, p. 132–133, jun 1972.Disponível em: . Citado na página41.
GüNEŞ, Ali; KALKAN, Habil; DURMUŞ, Efkan. Optimizing the color-to-grayscaleconversion for image classification. Signal, Image and Video Processing,
https://doi.org/10.1177/0361198105191700119https://doi.org/10.1016/0020-0190(72)90045-2
55
Springer Nature, v. 10, n. 5, p. 853–860, oct 2015. Disponível em: . Citado na página 31.
MAIA, Helton; FARIAS, Sheyla. Efeito doppler: Ondas eletromagnéticas para detecçãode velocidade. Revista Científica Tecnologus, v. 2, ago. 2007. Citado na página 19.
MUMTAZIMAH, Mohamad. A Review on OpenCV. Unpublished, 2015. Disponívelem: . Citado na página 30.
PARKER, J. R. Algorithms for Image Processing and Computer Vision.Indianapolis, USA: Wiley Publishing, Inc., 2010. 480 p. Citado na página 28.
PEDRINI, Hélio; SCHWARTZ, William R. Análise de Imagens Digitais: Princípios,algoritmos e aplicações. São Paulo, BRA: Thomson Learning, 2008. 508 p. Citado 7vezes nas páginas 22, 23, 25, 26, 27, 28 e 29.
PISANO, Etta D. et al. Contrast limited adaptive histogram equalization imageprocessing to improve the detection of simulated spiculations in dense mammograms.Journal of Digital Imaging, Springer Nature, v. 11, n. 4, p. 193–200, nov 1998.Disponível em: . Citado na página 33.
SKLANSKY, Jack. Finding the convex hull of a simple polygon. Pattern RecognitionLetters, Elsevier BV, v. 1, n. 2, p. 79–83, dec 1982. Disponível em: . Citado na página 40.
STAUFFER, C.; GRIMSON, W.E.L. Adaptive background mixture models for real-timetracking. In: Proceedings. 1999 IEEE Computer Society Conference on ComputerVision and Pattern Recognition (Cat. No PR00149). IEEE Comput. Soc, 1999.Disponível em: . Citado na página 42.
SUZUKI, Satoshi; ABE, Keiichi. Topological structural analysis of digitizedbinary images by border following. Computer Vision, Graphics, and ImageProcessing, Elsevier BV, v. 30, n. 1, p. 32–46, apr 1985. Disponível em:. Citado na página 39.
WHO, World Health Organization. Managing speed. [S.l.], 2017. Disponívelem: . Citado na página 13.
https://doi.org/10.1007/s11760-015-0828-7https://doi.org/10.1007/s11760-015-0828-7http://rgdoi.net/10.13140/RG.2.1.2269.8721https://doi.org/10.1007/bf03178082https://doi.org/10.1016/0167-8655(82)90016-2https://doi.org/10.1016/0167-8655(82)90016-2https://doi.org/10.1109/cvpr.1999.784637https://doi.org/10.1016/0734-189x(85)90016-7http://www.who.int/violence_injury_prevention/publications/road_traffic/managing-speed/en/http://www.who.int/violence_injury_prevention/publications/road_traffic/managing-speed/en/
56
ZIVKOVIC, Z. Improved adaptive gaussian mixture model for background subtraction.In: Proceedings of the 17th International Conference on Pattern Recognition,2004. ICPR 2004. IEEE, 2004. Disponível em: . Citado na página 36.
https://doi.org/10.1109/icpr.2004.1333992https://doi.org/10.1109/icpr.2004.1333992