José Eduardo Dias Sampaio
Detecção e Reconhecimento deSinais de Trânsito em Tempo Real
Jo
sé E
duar
do D
ias S
ampa
io
Outubro de 2010UMin
ho |
201
0De
tecç
ão e
Rec
onhe
cim
ento
de
Sina
is d
e Tr
ânsi
to e
m T
empo
Rea
l
Universidade do MinhoEscola de Engenharia
Outubro de 2010
Tese de MestradoCiclo de Estudos Integrados Conducentes aoGrau de Mestre em Engenharia Electrónica Industrial e Computadores
Trabalho efectuado sob a orientação doProfessor Doutor Agostinho Gil Teixeira Lopes
José Eduardo Dias Sampaio
Detecção e Reconhecimento deSinais de Trânsito em Tempo Real
Universidade do MinhoEscola de Engenharia
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real i
Resumo
Nesta dissertação foi desenvolvido um algoritmo para a detecção e
reconhecimento automático de Sinais de Trânsito em tempo real, bem como
em fotos e vídeos previamente gravados. Inerente a um ambiente livre está um
vasto número de adversidades que inibem em parte os métodos a serem
usados.
Para a detecção dos sinais de trânsito é efectuada uma análise à cor
presente na imagem, nomeadamente, é posta em prática a técnica de
segmentação da cor vermelha e azul. Os sinais detectados são sujeitos a um
conjunto de técnicas e métodos que permitem classificar os sinais de acordo
com a sua forma, podendo ser formas triangulares, circulares, quadradas,
rectangulares ou octogonais. Com o objectivo de facilitar o reconhecimento dos
sinais detectados, o sistema permite a sua classificação em cinco classes,
conforme a combinação entre a sua cor e forma.
Para o reconhecimento, a figura padrão que distingue os demais sinais de
trânsito é analisada, com vista à obtenção da posição exacta bem como a área
que esta ocupa. Por fim, é implementado o método de correlação de fase que
permite verificar a semelhança entre duas imagens. Esta comparação é
efectuada através dos sinais adquiridos pela câmara e os sinais presentes
numa base de dados.
A plataforma usada para o desenvolvimento desta dissertação foi o
Microsoft Visual Studio 2008. Com recurso à biblioteca multiplataforma
OpenCV - Open Source Computer Vision Library – foi possível colocar em
prática a maioria dos métodos e técnicas implementadas no decorrer deste
trabalho. Para tal feito, foi usado um computador portátil com um processador
Core2Duo T7200, com 1Gb de RAM. O sistema operativo adoptado foi o
Windows XP.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real iii
Abstract
This thesis presents an algorithm for traffic signs automatic detection and
recognition, both in real-time applications, as well as in previously recorded
images and videos. Associated to an open-environment is a wide range of
adversities that partially inhibit some of the methods to be used.
For traffic signs detection is done a color analysis of the image, in
particular, is used the red and blue segmentation technique. The detected signs
are submitted to a set of methods that allow the classification of signs according
to their shape (triangle, circle, square, rectangle or octagon). In order to simplify
the recognition of the detected signs, the developed system allows their
classification into five different classes according to the combination of its color
and shape.
The stamped image exact position and occupied area variables are used
to identify the correspondent sign so it can be distinguished from all other with
the same shape. Finally, it is implemented the phase correlation method to
verify the similarities between two images. This is done by comparison of the
signs acquired by the camera and the one’s stored in a database.
The IDE platform used in this dissertation was the Microsoft Visual Studio
2008. The cross-platform library OpenCV – Open Source Computer Vision
Library – provided the resources used in the implementation of the methods
developed within the presented work. To guarantee this, it was used a
Core2Duo laptop with a T7200 processor and 1 GB of RAM. The adopted
operating system was Windows XP.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real v
Agradecimentos
Ao meu orientador, por sempre me ter recebido no seu laboratório com
boa disposição e um contagioso entusiasmo, transmitindo-me toda a confiança,
estímulo e vontade necessária. Por todas as suas criticas e sugestões que se
demonstraram fundamentais na realização deste trabalho.
À minha família, por toda a dedicação, apoio e confiança que depositou
em mim desde o primeiro momento, em especial à minha mãe por toda a
compreensão e tolerância demonstrada no dia-a-dia e ao meu irmão, por nunca
me deixar pendurado, atendendo todos os meus telefonemas e pedidos, de
forma prontória e entusiasta. Obrigado por me incutirem o amor ao estudo, à
realização profissional entre outros valores que regem a minha vida.
Por fim gostaria de alargar os meus agradecimentos presenteando todos
os meus amigos, em especial o Jorge Bruno, com uma palavra de carinho por
toda a paciência, apoio, cuidado e amizade que demonstraram ao longo de
todo este percurso. A todos aqueles que me iam perguntando pelo
desenvolvimento do trabalho, transmitindo-me força e depositando em mim
toda a confiança necessária para que a meta fosse alcançada com êxito.
E porque sem vocês tudo seria ainda mais complexo,
A todos, os meus sinceros agradecimentos!
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real vii
Índice
Resumo ......................................................................................................................................... i
Abstract ....................................................................................................................................... iii
Agradecimentos .......................................................................................................................... v
Índice .......................................................................................................................................... vii
Lista de Figuras ........................................................................................................................... x
Lista de Abreviaturas ............................................................................................................... xiii
CAPÍTULO 1 Introdução ........................................................................................................ 1
1.1. Enquadramento ................................................................................................................ 2
1.2. Objectivos ......................................................................................................................... 3
1.3. Estrutura do Relatório ...................................................................................................... 4
CAPÍTULO 2 Estado da Arte ................................................................................................. 5
2.1.1. Sinalização vertical ................................................................................................ 5
2.1.1.1. Sinais de Perigo ..................................................................................... 6
2.1.1.2. Sinais de Regulamentação .................................................................... 7
2.1.2. Soluções actualmente existentes .......................................................................... 7
2.1.2.1. Detecção de sinais através de segmentação por cor ............................ 8
2.1.2.1.1. Segmentação através do modelo de cor RGB .......................................... 10
2.1.2.1.2. Segmentação através do modelo de cor HSV .......................................... 13
2.1.2.2. Detecção de sinais através da identificação de bordas ...................... 16
2.2. Técnicas de processamento de imagem ....................................................................... 17
2.2.1. Segmentação por cor ........................................................................................... 18
2.2.2. Binarização por histerese (threshold) .................................................................. 18
viii Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
2.2.3. Detecção de contornos ........................................................................................ 19
2.2.4. Centro de massa .................................................................................................. 19
2.2.5. Detecção de vértices ............................................................................................ 20
2.2.6. Radiais .................................................................................................................. 20
2.2.7. Região de interesse ............................................................................................. 21
CAPÍTULO 3 Detecção ......................................................................................................... 23
3.1. Segmentação por cor ..................................................................................................... 26
3.1.1. Dificuldades na detecção de sinais ...................................................................... 28
3.1.1.1. Obstrução e Oclusão ........................................................................... 31
3.1.1.2. Deterioração dos sinais ........................................................................ 32
3.2. Binarização por histerese (threshold) ............................................................................. 33
3.3. Redução do tempo de processamento ........................................................................... 34
3.4. Conclusões ..................................................................................................................... 35
CAPÍTULO 4 Classificação .................................................................................................. 37
4.1. Contornos ....................................................................................................................... 38
4.2. Centro de massa ............................................................................................................ 41
4.3. Relação caixa delimitadora e área do contorno ............................................................. 43
4.4. Relação altura vs largura ................................................................................................ 45
4.5. Detecção de vértices ...................................................................................................... 46
4.6. Radiais ............................................................................................................................ 47
4.7. Conclusões ..................................................................................................................... 50
CAPÍTULO 5 Reconhecimento ............................................................................................ 51
5.1. Dificuldades no reconhecimento de sinais de trânsito ................................................... 51
5.2. ROI .................................................................................................................................. 52
5.3. Análise da figura padrão ................................................................................................. 53
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real ix
5.3.1. Análise da forma da figura padrão ....................................................................... 54
5.3.2. Dificuldades na análise da figura padrão ............................................................. 56
5.3.3. Análise do posicionamento da figura padrão ....................................................... 61
5.4. Correlação de fase ......................................................................................................... 63
5.5. Conclusões ..................................................................................................................... 68
CAPÍTULO 6 Conclusões e Trabalhos Futuros ................................................................ 69
6.1. Conclusões ..................................................................................................................... 69
6.2. Trabalhos futuros............................................................................................................ 70
Referências ................................................................................................................................ 73
Anexo 1 ...................................................................................................................................... 76
Anexo 2 ...................................................................................................................................... 80
Anexo 3 ...................................................................................................................................... 84
Anexo 4 ...................................................................................................................................... 88
Anexo 5 ...................................................................................................................................... 92
x Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Lista de Figuras
Figura 2.1 - Sinais de perigo: (a) A32a (b) A32b .......................................................................... 7
Figura 2.2 - Sinais de Regulamentação ........................................................................................ 7
Figura 2.3 - (a) Digitalizar e atribuir códigos, (b) transferir o objecto com o número mínimo, (c) juntar o colectivo de píxeis como um objecto intacto [12]...................................................... 15
Figura 2.4 - Posição dos vértices: (a) triângulo, (b) rectângulo (c) círculo (d) losango [12] ....... 15
Figura 2.5 - Diagrama de blocos referente à fase de classificação [13] ..................................... 17
Figura 2.6 - Aplicação dos métodos Canny e Sobel ................................................................... 19
Figura 2.7 - Aplicação da técnica de detecção de cantos ........................................................... 20
Figura 2.8 - Representação das radiais de um círculo e de um quadrado [6] ............................ 21
Figura 3.1 - Segmentação da cor vermelha e azul ..................................................................... 24
Figura 3.2 - Exemplo da cor vermelha e azul presentes em diversas situações ........................ 24
Figura 3.3 - Três fases que compõem o sistema de detecção e reconhecimento de sinais ...... 25
Figura 3.4 - Componente tonalidade do modelo de cor HSV ..................................................... 26
Figura 3.5 - Segmentação da cor azul através de apenas um elemento do modelo de cor HSV ............................................................................................................................................. 27
Figura 3.6 - Segmentação da cor vermelha através de apenas um elemento do modelo de cor HSV ....................................................................................................................................... 27
Figura 3.7 - Segmentação da cor azul através dos três elementos do modelo de cor HSV ...... 28
Figura 3.8 - Segmentação da cor vermelha através dos três elementos do modelo de cor HSV ............................................................................................................................................. 28
Figura 3.9 - Sinais com diferentes intensidades de iluminação .................................................. 29
Figura 3.10 - Sinais com intensidade de iluminação perfeitas .................................................... 30
Figura 3.11 - Sinal com o sol por trás ......................................................................................... 30
Figura 3.12 - Sinal de STOP com a cor viva (a) e substancialmente mais escura (b) ............... 31
Figura 3.13 - Sinais obstruídos por vegetação ........................................................................... 31
Figura 3.14 - Sinais sujeitos à exposição solar e vandalismo..................................................... 32
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real xi
Figura 3.15 - Aplicação do método Canny .................................................................................. 33
Figura 3.16 – Imagem original (a) e imagem binária após segmentação vermelha (b) e azul (c) ................................................................................................................................................ 34
Figura 3.17 - Redução da área de pesquisa de sinais ............................................................... 35
Figura 3.18 - Sinais que não possuem bordas coloridas ............................................................ 36
Figura 4.1 - Divisão dos sinais quanto à sua cor e forma ........................................................... 37
Figura 4.2 - Classificação de sinais ............................................................................................ 38
Figura 4.3 - Sinais do tipo Cedência de Passagem .................................................................... 38
Figura 4.4 - Área do contorno de diversos sinais ....................................................................... 39
Figura 4.5 - Aproximação de sinais de trânsito ........................................................................... 40
Figura 4.6 - Contornos efectuados após segmentação da cor vermelha ................................... 41
Figura 4.7 - Centro de massa de quatro sinais de Perigo distintos ............................................ 42
Figura 4.8 – Centro de massa de dois sinais triangulares .......................................................... 42
Figura 4.9 - Centro de massa esperado em diversos objectos .................................................. 43
Figura 4.10 - Caixa delimitadora aplicada a diferentes sinais de trânsito .................................. 43
Figura 4.11 - Relação entre as áreas da caixa delimitadora e do contorno ............................... 43
Figura 4.12 - Diferença entre os centros de massa de um sinal de perigo e de cedência de passagem .................................................................................................................................... 44
Figura 4.13 – Detecção de falsos positivos que seriam confundidos com (a) triângulo, (b) e (c) círculos ................................................................................................................................... 45
Figura 4.14 - Relação entre altura e largura de quatro objectos distintos .................................. 45
Figura 4.15 - Rejeição de falso positivo ...................................................................................... 46
Figura 4.16 - Detecção de vértices em diferentes sinais ............................................................ 47
Figura 4.17 - Representação de radiais em diferentes sinais triangulares................................. 48
Figura 4.18 - Representação de apenas sete radiais por sinal .................................................. 49
Figura 5.1 - Sinais com figuras padrões iguais ........................................................................... 52
Figura 5.2 - Mesmos sinais com diferentes figuras padrão ........................................................ 52
Figura 5.3 - Criação de um ROI a partir da imagem original ...................................................... 53
Figura 5.4 - Representação da figura padrão de dois sinais de perigo ...................................... 54
Figura 5.5 - Segmentação da figura padrão de sinais triangulares ............................................ 55
xii Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Figura 5.6 - Segmentação da figura padrão de sinais circulares vermelhos .............................. 55
Figura 5.7 - Segmentação da figura padrão de sinais circulares azuis ...................................... 55
Figura 5.8 - Segmentação da figura padrão de sinais quadrangulares azuis ............................. 55
Figura 5.9 - Sinais que não ocupam a totalidade do ROI ........................................................... 56
Figura 5.10 - Segmentação da figura padrão de diversos sinais de trânsito .............................. 57
Figura 5.11 - Várias etapas no isolamento do sinal de objectos exteriores ................................ 58
Figura 5.12 - Sinais cujas bordas contêm píxeis pretos ............................................................. 59
Figura 5.13 - Diferentes espessuras do contorno a sinal ............................................................ 60
Figura 5.14 - Relação entre os píxeis da figura padrão e a área do contorno ............................ 60
Figura 5.15 - Sinais de perigo com distintas figuras padrão ....................................................... 61
Figura 5.16 - Sinais de obrigação com as mesmas figuras padrão ............................................ 62
Figura 5.17 - Análise ao posicionamento da figura padrão ......................................................... 63
Figura 5.18 - Correlação de fase (a) normal, (b) com ruído, (c) com deslocamento .................. 65
Figura 5.19 - Correlação de fase ................................................................................................. 66
Figura 5.20 - Exemplo de como realçar as características de um sinal ..................................... 66
Figura 5.21 - Correlação de fase ................................................................................................. 66
Figura 5.22 - Correlação de fase de diversos sinais ................................................................... 67
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real xiii
Lista de Abreviaturas
ROI Região de interesse
HSV Espaço de cores Hue, Saturation e Value
RGB Espaço de cores Red, Green e Blue
DFT Direct Fourier Transform
IFT Inverse Fourier Transform
FFTW Fastest Fourier Transform in the West
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 1
CAPÍTULO 1
Introdução
A evolução tecnológica tem sido a principal força dinamizadora da
economia mundial, nomeadamente no que diz respeito ao progresso da
indústria automóvel. Neste contexto, a recente inovação a nível computacional
e dos dispositivos de imagem tem proporcionado uma crescente aplicação da
visão computacional nesta área.
Nesta perspectiva, a necessidade de utilização de sistemas
computacionais que ofereçam um melhor desempenho aliado a uma maior
segurança do condutor são sem dúvida uma mais-valia e, um sistema de
detecção e reconhecimento de sinais de trânsito, não será excepção.
Um dos sistemas computacionais actualmente estudados para o apoio
aos condutores é o reconhecimento de sinais de trânsito.
Este sistema baseia-se na aquisição de imagens do meio envolvente ao
automóvel, através de uma câmara direccionada para zonas onde
possivelmente surgirão sinais de trânsito. Após a captura, estas imagens
sofrem a aplicação de métodos e técnicas que visam o reconhecimento e
identificação de sinais de trânsito. Uma vez identificados, o condutor é
advertido da sua presença, através de uma aplicação visual ou sonora. Este
sistema transmite uma maior segurança e confiança ao condutor na medida em
que existem muitas distracções possíveis que tornarão os condutores mais
vulneráveis a acidentes rodoviários. Convém salientar que existem algumas
adversidades que afectam o desempenho do sistema. A inclinação dos sinais,
a sua fraca localização e problemas relacionados com luminosidade são
algumas condicionantes para uma eficaz detecção e funcionamento do
processo.
Os sinais a que o sistema se propõe reconhecer são os sinais de Perigo e
CAPÍTULO 1 - Introdução
2 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
os sinais de Regulamentação, perfazendo um total de 141 sinais. Estes últimos
incorporam os sinais de cedência de passagem, sinais de obrigação e sinais de
proibição. Estes sinais que o sistema autónomo pretende reconhecer revelam-
se como sendo os sinais de trânsito de maior importância na sinalização
rodoviária.
A identificação de sinais de trânsito poderá ser efectuada de
variadíssimas formas. Não existe actualmente um método a seguir, ideal ou
perfeito para o fazer. Existem sim técnicas que se adoptam para desta forma
tornar um determinado sistema mais rápido e sobretudo eficaz, ora não
estivesse em causa a segurança rodoviária/do condutor.
Prover uma máquina de um dos sentidos mais importantes do ser
humano, é sem sombra de dúvidas um grande desafio. É insuficiente aplicar
meras alterações às imagens capturadas. É necessário desenvolver sistemas
capazes de interpretar essas imagens.
1.1. Enquadramento
A segurança rodoviária é um tema sensível da nossa sociedade. O
crescimento do tráfego de veículos nas estradas portuguesas tem sido uma
realidade bem presente. Aliado a este forte crescimento está muitas vezes o
desrespeito do código da estrada, nomeadamente a sinalização/excesso de
velocidade, o que aumenta substancialmente o risco de acidentes rodoviários.
O contributo do avanço da tecnologia no sector automóvel tem permitido
vários progressos no sentido de melhorar o bem-estar dos automobilistas.
Mais eficaz que proteger o condutor do impacto de um acidente
rodoviário é, sem dúvida, conseguir evitá-lo ou pelo menos reduzir a sua
probabilidade. Mas de que forma?
A inclusão de um sistema capaz de advertir o condutor da presença de
um limite de velocidade, da aproximação de um cruzamento, entroncamento ou
até mesmo de uma via com prioridade, são algumas das informações de
CAPÍTULO 1 – Introdução
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 3
extrema importância que não se devem menosprezar.
Neste contexto, procura-se desenvolver um mecanismo de auxílio à
condução que consiste na detecção e reconhecimento automático de sinais de
trânsito. Este mecanismo, através da sua informação constantemente
actualizada, permite alertar o condutor em tempo real da presença de um sinal
de trânsito o que o levará a redobrar os seus níveis de concentração/atenção.
Nos casos em que o condutor é abolido, refiro-me mais concretamente à
condução autónoma (área em franca expansão na ultima década), este sistema
também se revela fundamental. Equipar um veículo autónomo de uma câmara
que, para além de o conduzir o veículo correctamente pela estrada, ainda
consiga reconhecer a sinalização rodoviária e com isto adequar a velocidade e
comportamento do automóvel.
1.2. Objectivos
Apesar da interpretação de sinais de trânsito ser uma tarefa bastante
acessível para a maioria dos seres humanos, dotar um sistema automático com
esta funcionalidade trata-se de um desafio bastante complexo.
O objectivo da presente dissertação foca-se na criação de um sistema de
processamento de imagem que inclui metodologias que visam permitir o
reconhecimento e identificação da localização exacta de um sinal de trânsito
presente num ambiente aberto e desconhecido, em tempo real. Inerente a este
ambiente, está um vasto conjunto de adversidades que condicionam os
métodos usados, tais como:
Condições climatéricas
A orientação dos sinais
Obstrução e desgaste dos sinais
A altura do dia
O reflexo do sol
CAPÍTULO 1 - Introdução
4 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
O sistema deverá ser possuidor de algoritmos e funções suficientemente
rápidas e eficazes dado que deverão ser capazes de reconhecer correctamente
os sinais que surgem durante uma viagem, em tempo real, ultrapassando as
inúmeras adversidades, em fracções de segundo.
Após o reconhecimento, o condutor poderá ser alertado da presença de
um sinal de trânsito, numa tentativa de o levar a aumentar a atenção face aos
perigos eminentes.
1.3. Estrutura do Relatório
Este relatório de projecto assenta a sua estrutura num total de seis
capítulos. Após este primeiro capítulo introdutório, onde é referido o
enquadramento bem como os objectivos estipulados, surge o terceiro capítulo
que faz referência ao estado da arte e às técnicas de processamento de
imagem já desenvolvidas.
No capítulo 3, 4 e 5 são abordadas respectivamente as técnicas de
detecção, classificação e reconhecimento de sinais de trânsito.
Por fim, surge o capítulo 6 onde são apresentadas as conclusões do
trabalho desenvolvido e onde se abordam possibilidades para o
desenvolvimento de trabalhos futuros.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 5
CAPÍTULO 2
Estado da Arte
A sinalização rodoviária é uma parte importante para uma boa fluidez e
correcta circulação do trânsito e todos os demais utentes da via. Em locais
onde a via pública possa oferecer perigo para o trânsito, onde este esteja
sujeito a restrições ou precauções, ou simplesmente quando se mostra
relevante informar os utentes da via é utilizada a sinalização rodoviária para
assim ajudar todos os que interferem directa e indirectamente na circulação
rodoviária.
Quando se ouve falar em sinalização rodoviária, normalmente associa-se
aos sinais verticais e aos sinais luminosos, vulgarmente chamados de
semáforos. No entanto, a sinalização rodoviária abrange bem mais que isso. As
marcas rodoviárias, os sinais dos agentes reguladores do trânsito, os sinais
dos condutores bem como os sinais temporários fazem todos eles parte da
sinalização rodoviária. No entanto, para evitar a desordem ou situações de
embaraço no trânsito, foi estabelecido uma hierarquia entre as prescrições. A
ordem de prevalência é a seguinte:
1- Ordens dos agentes reguladores do trânsito
2- Sinalização
2.1 – Sinalização temporária
2.2 – Sinalização luminosa (semáforos)
2.3 – Sinalização vertical
2.4 – Marcas rodoviárias
2.1.1. Sinalização vertical
Para além das marcas rodoviárias, os sinais que são mais comuns nas
vias públicas são sem sombra de dúvidas os sinais verticais. É por eles que a
maioria dos condutores se rege para assim adaptar a sua condução às
CAPÍTULO 2 – Estado da Arte
6 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
diversas situações que o trânsito e a via apresentam.
O sistema de sinalização adoptado pelo estado português compreende
cinco tipos de sinalização vertical, são eles:
Sinais de Perigo
Sinais de Regulamentação
Sinais de Indicação
Sinalização de Mensagem Variável
Sinalização Turístico-Cultural
Contudo, a presença destes sinais bem como a sua importância nas
estradas portuguesas varia consideravelmente. O sistema desenvolvido neste
trabalho tem como objecto a detecção e reconhecimento dos sinais de trânsito
que revelam maior importância no auxílio à condução. São eles 44 sinais de
Perigo e 97 sinais de Regulamentação, sendo que este último engloba os
sinais de “obrigação”, “proibição” e “cedência de passagem”. No total, são 141
sinais, sendo que 49 são sinais triangulares e 86 circulares.
2.1.1.1. Sinais de Perigo
“Os sinais de perigo indicam a existência ou a possibilidade de
aparecimento de condições particularmente perigosas para o trânsito que
imponham especial atenção e prudência ao condutor” [1].
Existem no total um conjunto de 44 sinais de perigo e praticamente todos
eles têm a forma de um triângulo com um rebordo encarnado. No seu interior
encontra-se uma figura padrão de cor preta sobre um fundo branco, que os
distingue. No entanto, existem dois sinais de perigo que são excepção à regra.
O sinal referente a “Local de passagem de nível sem guarda” e o “Local de
passagem de nível sem guarda com duas ou mais vias”, cujos códigos
atribuídos segundo o regulamento do código de estrada são respectivamente,
A32a e A32b.
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 7
(a) (b)
2.1.1.2. Sinais de Regulamentação
Os sinais de Regulamentação subdividem-se em sinais de cedência de
passagem, sinais de proibição, sinais de obrigação e sinais de prescrição
específica. Em oposição ao que acontece com os sinais de Perigo, a forma que
os sinais de Regulamentação sustentam varia não só de subcategoria para
subcategoria mas também os sinais de cedência de passagem podem obter
até seis formas distintas.
2.1.2. Soluções actualmente existentes
Apesar de muitas pesquisas terem proposto várias soluções para
melhorar a eficiência e eficácia de sistemas de reconhecimento de sinais de
trânsito, esta continua a ser uma tarefa promissora.
Actualmente vários autores dedicam a sua investigação e
desenvolvimento na criação e muitas vezes, na melhoraria de sistemas que
obtenham cada vez melhores resultados tanto em condições de luminosidade
favoráveis, como em situações adversas, como mau tempo e condução
nocturna. Existem vários sistemas implementados não havendo contudo um
método ideal. Cada autor dá um pouco de si, contribuindo assim para uma
melhoria geral dos sistemas impostos até à data.
A conhecida marca de automóveis Opel disponibiliza nos modelos
Insígnia [2] e Astra [3] um sistema que permite a detecção de sinais de limite
Figura 2.1 - Sinais de perigo: (a) A32a (b) A32b
Figura 2.2 - Sinais de Regulamentação
CAPÍTULO 2 – Estado da Arte
8 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
de velocidade. Através de uma câmara inserida entre o pára-brisas e o espelho
retrovisor da viatura, o sistema é capaz de reconhecer os sinais de limite de
velocidade e em seguida, mostrar no painel de instrumentos o sinal. As funções
inerentes à condução continuam a ser tomadas em pleno pelo condutor, no
entanto, trata-se de uma forma de alertar o condutor da presença de um novo
limite de velocidade.
Nesta secção, serão abordadas soluções que visam uma correcta
detecção e reconhecimento de sinais de trânsito.
2.1.2.1. Detecção de sinais através de segmentação por cor
Piccioli et al [4] desenvolveu um sistema de detecção e reconhecimento
de sinais de trânsito. O sistema captura as imagens através de uma câmara de
vídeo instalada num veículo. Para a detecção dos sinais nas imagens, é
utilizada a técnica de segmentação por cor, apesar do autor não especificar
qual o modelo de cor utilizado. Em seguida, através da aplicação do algoritmo
Canny, é efectuada uma análise geométrica com o objectivo de verificar a
presença de triângulos ou círculos através da detecção de bordas. Como
resultados, para uma análise de 600 imagens contendo um ou mais sinais
triangulares, a percentagem de correcta detecção é de 92%.
A forma octogonal do sinal de STOP é identificada como uma forma
circular, sendo apenas a diferenciação feita na parte do reconhecimento, onde
é aplicado o método de “Template Matching”. Aqui, o autor atingiu uma taxa de
classificação correcta de 98%, apesar de não mencionar o número de sinais
testados. O autor apresenta ainda uma integração temporal das informações
extraídas da análise de um único frame, garantindo assim maior robustez no
sistema completo.
Hasan Fleyeh e Mark Dougherty, [5] implementaram em seu trabalho um
algoritmo cujo objectivo consiste em detectar e reconhecer sinais de trânsito.
Este sistema utiliza para a detecção dos demais sinais de trânsito presentes na
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 9
via, a técnica de segmentação por cor. Os autores relatam que o modelo de cor
obtido através da câmara não é adequado para a detecção na medida em que
as três componentes do modelo estão altamente correlacionadas entre si
resultando que qualquer variação na intensidade de luz ambiente afectará todo
o modelo, acabando por sugerirem outros modelos de cor tais como HSI, HSB,
L*a*b, YIQ e YUV. Referem ainda que a detecção através da forma é possível,
possuindo a vantagem de não ser afectado por variações da luz do dia e
consecutivamente por alterações da cor, no entanto exige um robusto sistema
de detecção de bordas e um algoritmo de correspondência, sendo bastante
complexo quando o sinal assume dimensões reduzidas na imagem.
Após a detecção de objectos cujas cores respeitam os valores de
threshold pretendidos, os candidatos a sinais são sujeitos a um algoritmo de
reconhecimento que, segundo os autores, deverá possuir um grande poder
discriminatório e uma forte resistência a ruído e a diferentes posições do sinal.
Como alternativa à classificação e reconhecimento sugerem o uso das
redes neuronais defendendo que assim não será necessária a conversão da
imagem para um novo modelo de cor, que o resultado da classificação só
depende da correlação entre os pesos da rede e a própria rede, e que os
problemas de correspondência de padrão serão evitados.
Contudo, as redes neuronais necessitam de uma sobrecarga de treino e o
uso de multi-camadas é limitado à aplicação em tempo real dado que a sua
arquitectura é fixa, não havendo uma previsão de um aumento do número de
classes sem uma penalidade acentuada. Segundo os autores, o
reconhecimento de novos padrões necessitará de uma reciclagem de toda a
rede.
Os autores referem que o uso das redes neuronais reconfiguráveis têm a
capacidade de se adaptar a novos sinais, sem necessidade de novo treino,
melhorando assim o tempo de treino e reconhecimento. Sugerem ainda outros
classificadores como o “Clustering Classifier”, “Nearest Neighbour Classifiers”,
“Laplace Kernel Classifier” como alternativas a classificadores de sinais de
trânsito.
CAPÍTULO 2 – Estado da Arte
10 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
2.1.2.1.1. Segmentação através do modelo de cor RGB
A dissertação de mestrado de António Manuel Ribeiro [6] relata um
sistema que permite a detecção de objectos genéricos em ambiente aberto,
mais concretamente sinais de trânsito, e o seu respectivo reconhecimento.
Para a detecção dos sinais usou duas metodologias: na primeira, o sinal
pretendido é seleccionado pelo utilizador e na segunda, este é detectado
através da informação da cor e do seu contorno.
Optou por efectuar uma classificação dos sinais quanto à sua forma. O
sistema é capaz de classificar quatro formas pré-definidas de sinais de trânsito:
quadrado, circulo, triângulo e triângulo invertido, deixando a forma rectangular
(forma esta inerente aos sinais de indicação, tal como a forma quadrangular)
por classificar. Para isso utiliza as assinaturas de contorno (radiais). A forma
como interpreta as assinaturas de contorno mostrou confundir por 7 vezes,
num total de 234 sinais, a forma quadrangular com a forma circular.
Efectuou uma comparação entre três classificadores distintos: Coeficiente
de Correlação, média aritmética dos valores absolutos das diferenças entre
contornos e média aritmética dos desvios absolutos dos pontos de contorno a
partir da sua média, concluindo que este último classificador apresenta menor
erro de separação entre sinais e não sinais, unidos.
No que diz respeito ao reconhecimento dos sinais, este é obtido através
do método da correlação normalizada de níveis de cinzento, provocando
deslocamentos de +/- 2 píxeis em x e em y, para evitar erros de correlação
provocados por pequenas translações do sinal. Possui uma base de dados de
38 sinais em níveis de cinzento, normalizados para 64x64 píxeis.
Numa análise a 234 sinais, foram eliminados pelo classificador 12 sinais
erradamente e a forma foi confundida num total de 7 vezes. Restando 215
sinais correctamente classificados quanto à sua forma, o seu reconhecimento
obteve uma taxa de aproveitamento que rondou os 83%.
John Hatzidimos [7] da Grécia, descreve um sistema automático de
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 11
reconhecimento de sinais de trânsito. Para proceder à detecção dos sinais nas
imagens, o autor procede a uma segmentação por cor. Com isso, é criada uma
imagem binária onde posteriormente serão detectados os contornos e
normalizados para um píxel de espessura, ficando uma simples linha.
Para verificar a presença de um sinal em forma de triângulo, o autor
aplica um método cujo objectivo consiste em analisar os ângulos de todas as
linhas presentes na imagem. Caso estes não pertençam aos intervalos (50,70)
(-70,50) é então aplicada a transformada de Hough que permite a detecção de
sinais circulares. Para localizar o sinal na imagem, são calculadas as equações
das linhas e dos vértices bem como o centro do triângulo. No que diz respeito
ao reconhecimento, o autor implementou o modelo Cross-Correlation Matching.
Cada píxel é sujeitado ao cálculo do coeficiente de correlação cruzada em cada
uma das três componentes do modelo RGB. O coeficiente final é a média das
três componentes.
Como conclusões, o autor relata que o sistema é muito eficaz na
localização dos sinais de trânsito, no entanto possui uma ligeira fraqueza
aquando da presença de áreas com a mesma cor dos sinais de trânsito. Admite
um futuro reconhecimento do sinal de STOP bem como a identificação de dois
sinais numa mesma imagem. Por fim, o autor indica que o modelo RGB não é o
melhor para efectuar a segmentação pois as três componentes (R,G e B)
dependem da intensidade sugerindo para tal o modelo de cor HSI.
Michael Shneier [8], dos Estados Unidos da América (Gaithersburg) trata
do reconhecimento de sinais de trânsito em tempo real. No seu sistema está
implementada a técnica de segmentação por cor para assim conseguir
identificar os sinais de trânsito presentes nas imagens captadas. Em seguida, a
imagem segmentada é binarizada para que um conjunto de técnicas seja
aplicado. O autor defende que o modelo de cor usado (RGB) para executar a
segmentação nas imagens obteve resultados bastante satisfatórios sendo a
conversão para outro modelo de cor uma operação desnecessária. À imagem
binária é aplicada uma erosão morfológica para eliminar píxeis isolados que se
tornam indesejáveis no que diz respeito à obtenção de sinais de trânsito. Para
CAPÍTULO 2 – Estado da Arte
12 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
descartar os objectos dos sinais, a área, o centro de massa bem como a caixa
que limita os objectos são analisados. Caso não cumpram os requisitos
pretendidos os objectos são então eliminados visto que não se tratam de sinais
de trânsito.
Para proceder ao reconhecimento, o autor usa o método de “Template
Matching”. As imagens são retiradas do vídeo e são redimensionadas para o
tamanho 48x48 píxeis. A colocação em prática deste algoritmo contou com a
análise de 23637 frames, contendo estes 92 sinais de perigo e STOP. Como
resultados, o sistema apresenta para um total de 92 sinais analisados, uma
percentagem de 88% de correcta detecção, 78% de taxa de sinais bem
reconhecidos, 58% de falsas detecções e um conjunto de 6 sinais mal
reconhecimentos. O autor acredita que uma câmara apontada exclusivamente
para a zona onde sinais possam surgir bem como uma ampliação da imagem
melhorava os resultados obtidos.
Souki et al [9] descreve um sistema de visão computacional que permite o
reconhecimento de sinais de trânsito em tempo real. O autor aplica sobre a
imagem captada pela câmara um “Average Filter” que permite a redução do
ruído. Este filtro, segundo o autor, é mais simples em comparação com o filtro
mediana que normalmente é utilizado. Posteriormente, para a detecção dos
sinais de trânsito na imagem filtrada é aplicada a técnica de segmentação da
cor vermelha no modelo de cor RGB. É efectuada a binarização da imagem e
aplicado um novo filtro, neste caso, um filtro de bordas que se revela, garante o
autor, menos complexo que os filtros Canny e Sobel. Para proceder à detecção
de círculos, o sistema possui implementado a transformada de Hough. O sinal
é retirado da imagem (região de interesse) e normalizado para o tamanho
80x80píxeis. É aplicado um filtro mediana para reduzir o ruído e informações
redundantes antes do estágio de binarização. Por fim, é aplicado o método
“Cross Correlation” para determinar a semelhança entre duas imagens. O autor
apresenta ainda uma tabela onde compara o tempo de processamento das
diversas fases do seu sistema, sendo a transformada de Hough a que
despende mais tempo, cerca de 72% do tempo total.
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 13
2.1.2.1.2. Segmentação através do modelo de cor HSV
Carlos Paulo da Universidade Técnica de Lisboa [10] desenvolveu um
sistema que permite a detecção de sinais de trânsito através da análise da cor
vermelha e azul. O sistema por ele implementado efectua a conversão do
modelo de cor RGB captado pela câmara para o modelo de cor HSV. Para
proceder à detecção dos sinais, o autor efectua uma segmentação por cor
através de duas das três componentes do modelo HSV, acabando por deixar
de parte a Value (intensidade). Para eliminar objectos também detectados para
além dos sinais de trânsito, é identificado o número de píxeis brancos
pertencentes a cada região comparando-os seguidamente com a área da caixa
que limita o objecto. Outro método também presente neste trabalho consiste na
análise do centro de massa do objecto bem como o seu tamanho.
O autor optou por proceder a uma classificação dos sinais quanto ao seu
tipo, nomeadamente aos sinais de perigo, obrigação, informação, proibição e
não sinal. É determinado o número de cantos para assim classificar os sinais
quadrados e os sinais triangulares. No que diz respeito à identificação dos
sinais circulares, a imagem obtida é rodada em 45º e sobreposta sobre a
anterior. Se realmente se tratar de um círculo, não existem mudanças
significativas entre as duas imagens. Caso contrário, essas alterações indicam
a presença de um objecto não sinal. O sinal de STOP é identificado como um
círculo e a sua distinção perante os sinais circulares ocorre devido à presença
de mais do que 25% de píxeis vermelhos no seu interior.
Para reconhecer o padrão inserido no interior do sinal é obtido o seu
contorno e utilizando a técnica Curvature Scale Space (CSS) onde é efectuada
uma comparação com os demais contornos presentes na base de dados já
criada.
Os resultados obtidos na detecção foram de 94% de sinais correctamente
detectados, num total de 579 sinais de trânsito. Para sinais com luminosidade
excessiva, a taxa de correcta detecção foi de aproximadamente 29%. No que
diz respeito à classificação, dos 544 sinais detectados cerca de 85% foram
correctamente classificados. Quanto ao reconhecimento, a taxa de êxito ronda
os 80%. No global, e para uma amostra aleatória, no conjunto das três fases o
CAPÍTULO 2 – Estado da Arte
14 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
autor obtém uma taxa de correcto reconhecimento de 68%.
Ren et al da Nova Zelândia [11] explica o método que utilizou para o
reconhecimento de sinais de trânsito, pela opção na conversão da imagem
capturada pela câmara no modelo de cor RGB para o modelo HSV,
argumentando possuir menos variações de luminosidade. Para proceder à
detecção dos sinais, os autores realizam a segmentação por cor com a
utilização de apenas os dois primeiros dos três elementos do modelo HSV.
Após a segmentação por cor, o próximo passo consiste em detectar as formas
presentes nas imagens segmentadas.
Para a detecção de sinais circulares, os autores usam a “Hough Circle
Transform”. Para os sinais triangulares, aplica a “Hough Line Transform” às
bordas das zonas vermelhas presentes na imagem para a obtenção de todas
as linhas. Em seguida, é aplicado um algoritmo de detecção de polígonos para
identificar os triângulos. O tamanho e os ângulos das linhas são analisados
para assim escolher os candidatos adequados. À semelhança da detecção de
triângulos, os sinais quadrangulares são detectados com a mesma técnica dos
sinais triangulares, contudo os ângulos que as linhas sustentam são de
aproximadamente 90º.
Após a classificação dos sinais quanto à forma, estes são retirados da
imagem principal e redimensionados para o tamanho de 128x128 píxeis. Na
etapa do reconhecimento, é aplicada a funcionalidade de detecção SIFT que
vai comparar os sinais detectados com os presentes numa base de dados.
Os autores provam que o facto de ter reduzido a imagem de 1024x768
píxeis para 128x128 obtém tempos de processamento substancialmente mais
reduzidos. Os testes foram realizados num computador portátil, cujo
processador é um Intel Core Duo, de 2,4 GHz, 2Gb de RAM e o sistema
operativo é o LINUX.
A taxa de sucesso é superior a 95%, no entanto os autores assumem
algumas limitações do método SIFT, mais concretamente variações no tempo
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 15
de execução bem como a possibilidade de correspondências erradas.
Wu et al [12] desenvolveu um sistema de detecção e acompanhamento
de sinais de trânsito em imagens de vídeo. Este sistema usa a segmentação
por cor para assim conseguir detectar os sinais de trânsito presentes nas
imagens. O modelo de cor sustentado pela câmara é o RGB, contudo o autor
procede a uma conversão para o modelo HSV. Para a identificação do sinal
quanto à sua forma, em primeiro lugar o sistema examina os píxeis vermelhos
e azuis (Figura 2.3(a)). Em seguida, uma máscara de 3x3 é usada para
substituir os nove píxeis com o número mínimo como mostra a Figura 2.3(b).
Por fim, os píxeis com o mesmo número no seu todo serão considerados como
um objecto (Figura 2.3(c)). Em seguida, os objectos são sujeitos a uma análise
ao tamanho bem como à sua área para assim averiguar a presença de sinais
de trânsito.
(a) (b) (c)
Para a classificação dos sinais de trânsito, a área detectada
correspondente ao sinal é dividida numa região de 3x3 como mostra a Figura
2.4. Com isto, a posição ocupada pelos vértices é analisada com vista à
identificação do tipo de forma geométrica que o sinal possui.
(a) (b) (c) (d)
Figura 2.3 - (a) Digitalizar e atribuir códigos, (b) transferir o objecto com o número mínimo, (c) juntar o colectivo de píxeis como um objecto intacto [12]
Figura 2.4 - Posição dos vértices: (a) triângulo, (b) rectângulo (c) círculo (d) losango [12]
CAPÍTULO 2 – Estado da Arte
16 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Para o reconhecimento da figura padrão que distingue os sinais de
trânsito, o autor calcula o histograma vertical e horizontal inerente a cada sinal
e em seguida divide-os em três partes. Cada uma será analisada para verificar
qual possui um maior pico. Cruzando as três partes respectivas ao histograma
vertical e ao histograma horizontal, o autor consegue subclassificar o sinal, não
chegando a reconhecê-los. Contudo, defende que o sistema implementado
pode reconhecer os sinais de forma eficaz.
2.1.2.2. Detecção de sinais através da identificação de bordas
García-Garrido et al [13] descreve um sistema de reconhecimento de
sinais de trânsito que actua sob diversas condições de luminosidade. Para a
detecção dos sinais, o sistema utilizada o operador de Canny que possibilita a
detecção de bordas. Para tornar a detecção mais fiável, os dois valores de
threshold associados ao operador Canny foram adaptados de forma dinâmica,
dependendo da distribuição do histograma da imagem. O histograma foi então
dividido em oito partes e os dois níveis threshold foram atribuídos a cada uma
dessas regiões. Os autores garantem que assim o algoritmo é possível em
boas condições de visibilidade mas também em condições menos favoráveis, à
noite ou com chuva.
Os contornos obtidos são codificados utilizando a “chain code” com o
intuito de obter informações como o seu perímetro, área, bem como determinar
se um contorno é fechado. Após esta filtragem que tem como objectivo reduzir
o número de candidatos, é aplicada a transformada de Hough que identifica a
presença de triângulos e círculos. Para a identificação dos sinais, os autores
optaram pela utilização de duas redes neuronais: “backpropagation neural
network”, onde uma identifica se é um sinal triangular, bem como o seu tipo, e
a outra reconhece os sinais circulares incluindo o de STOP. Os sinais de
trânsito são posteriormente normalizados para o tamanho de 32x32 píxeis.
Para a identificação de um sinal, é efectuada uma correlação entre os
valores dos neurónios da camada de saída e da distribuição normal, e
dependendo do neurónio bem como se este atinge um determinado limite, o
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 17
objecto é identificado como um sinal. Além disso, o valor do coeficiente de
correlação indica a probabilidade do objecto detectado ser um sinal. Os passos
são mostrados no diagrama de blocos na Figura 2.5:
As redes neuronais foram treinadas para reconhecer os seguintes sinais
circulares: sinais de limite de velocidade, fim de limite de velocidade, STOP,
ultrapassagem proibida, sinais de fim de proibição de ultrapassagem e os
sinais triangulares de cedência de passagem e curva perigosa. Os testes foram
efectuados em tempo real e interagiam com uma base de dados cuja taxa de
classificação correcta ronda os 99%. Para que o sinal não seja identificado em
todos os frames, os autores implementaram um filtro Kalman que realiza uma
estimativa da evolução do sistema e compara com a saída real. Num total de
435 sinais de limite de velocidade o sistema detectou correctamente 97% e
reconheceu 98,5%. Para uma amostra de 312 sinais de perigo, as taxas de
correcta detecção e reconhecimento foram de 94% e 97% respectivamente. O
tempo de processamento de todo o sistema é de aproximadamente 2
segundos, pelo que os autores admitem que este sistema não poderá funcionar
em tempo real.
2.2. Técnicas de processamento de imagem
O avanço da tecnologia, mais concretamente da visão computacional e no
processamento de imagem, tem contribuído para o desenvolvimento de
sistemas computacionais e de robótica em inúmeras áreas. Estes avanços
Figura 2.5 - Diagrama de blocos referente à fase de classificação [13]
CAPÍTULO 2 – Estado da Arte
18 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
visam tornar automática a execução de tarefas complexas e/ou repetitivas, ou
mesmo auxiliar funções desempenhadas pelos humanos. Nesta secção serão
abordadas algumas técnicas de processamento de imagem que visam a
implementação de um sistema de detecção e reconhecimento de sinais de
trânsito
2.2.1. Segmentação por cor
Em processamento de imagens, segmentar consiste em identificar e
extrair zonas homogéneas presentes numa imagem. A segmentação usada
para a detecção dos sinais de trânsito é a segmentação por cor. Como os
sinais em Portugal maioritariamente possuem as suas bordas azuis e
vermelhas, um sistema que visa detectar sinais de trânsito deverá em primeiro
lugar efectuar uma segmentação dessas duas cores.
A cor, dado o seu grande poder discriminatório, é frequentemente alvo de
análise para identificação de objectos. Tal como [14] fundamenta a importância
da informação da cor para o diagnóstico automático de um tumor de pele, para
a detecção de sinais de trânsito revela-se como um dos melhores métodos a
ser aplicado [5] [7].
2.2.2. Binarização por histerese (threshold)
Binarizar uma imagem consiste na alteração das propriedades da cor que
uma imagem possui. Partindo de uma imagem colorida, é efectuado um
processamento tendo em conta uma margem de histerese que tornará a
imagem a preto e branco. Com isto, cada píxel apenas toma dois valores
possíveis: “um” para a zona pretendida e “zero” para o fundo da imagem. No
que diz respeito a um sistema de detecção de sinais de trânsito, a utilização de
uma imagem binária revela-se bastante útil na medida em que é possível isolar
completamente o sinal de cor pretendido de todos os outros objectos presentes
na imagem, possibilitando que as técnicas a serem impostas apenas sejam
aplicadas em zonas cujos píxeis possuam valor “um”.
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 19
2.2.3. Detecção de contornos
Detecção de contornos é uma técnica de processamento de imagem que
consiste em determinar os locais na imagem onde o valor dos píxeis se altera
significativamente. Esta mudança é controlada através de uma margem de
histerese. A aplicação desta técnica reduz consideravelmente a quantidade de
dados a serem processados, descartando informação considerada irrelevante.
Como a imagem a ser analisada é uma imagem binária, o sistema irá
verificar quando ocorre uma passagem do valor um para zero e vice-versa.
Esta passagem é assinalada com um píxel de outra cor, o que efectuará um
contorno do objecto em causa. Esta técnica tem-se revelado bastante
importante na obtenção de características de objectos, não só em sistemas de
reconhecimento de sinais de trânsito [11] [15] [4] [13] mas também na de
extracção de características da íris tal como [16] provou.
A biblioteca OpenCV disponibiliza funções que permitem a detecção de
contornos, sendo as mais conhecidas os filtros Canny (Figura 2.6(b) ) e Sobel
(Figura 2.6(c)).
(a) (b) (c)
2.2.4. Centro de massa
“O centro de massa, também designado por centro de gravidade, consiste
num ponto de um sistema físico composto por várias massas de um corpo
rígido, no qual se pode considerar situada toda a massa concentrada, quando
se analisa o movimento do referido sistema, no interior de um campo de forças
homogéneo e exterior” [17].
O centro de massa poderá ser usado para seguir o sinal. Uma vez que os
Figura 2.6 - Aplicação dos métodos Canny e Sobel
CAPÍTULO 2 – Estado da Arte
20 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
sinais assumem uma trajectória aproximadamente linear e esperada, a análise
do centro de massa e respectiva previsão possibilita que o mesmo sinal seja
identificado no frame seguinte, não precisando de ser analisado novamente.
2.2.5. Detecção de vértices
A detecção de vértices de um objecto assinalado numa imagem trata-se
de uma técnica bastante simples a nível computacional e muito importante na
classificação dos sinais. Esta técnica visa identificar os vértices e todas as
variações acentuadas de um objecto [18] [19] [20]. Através das funções
cvGoodFeaturesToTrack() e cvFindCornerSubPix() disponíveis na biblioteca
OpenCV, é possivel identificar o número de cantos de um objecto bem como a
sua localização exacta (Figura 2.7).
2.2.6. Radiais
Esta técnica consiste em partir do centro de massa do contorno efectuado
a um objecto, e traçar um conjunto de linhas até à extremidade (radiais), para
conseguir identificar o raio do objecto em várias direcções distintas. Idealmente
seria traçar todas as linhas possíveis desde o intervalo [0,2π]. Assim é possível
identificar exactamente a forma do objecto.
Figura 2.7 - Aplicação da técnica de detecção de cantos
CAPÍTULO 2 – Estado da Arte
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 21
2.2.7. Região de interesse
Em várias aplicações é necessário processar apenas uma determinada
área com vista a reduzir o tempo de processamento. Posto isto, a criação de
uma região de interesse, mais conhecida por ROI (Region of interest), revela-
se de extrema importância quando inserido num sistema que actua em tempo
real.
Quando um sinal é detectado, são obtidas as suas coordenadas através
da imagem principal e é criada uma nova imagem onde este surgirá. Ao
implementar qualquer função de processamento de imagem da biblioteca
OpenCV, a função verifica a existência de algum ROI definido na estrutura de
dados da imagem. Caso exista, o processamento irá incidir apenas na região
definida pelo ROI. A função disponível na biblioteca OpenCV, que permite a
criação de um ROI, é a cvSetImageROI() cujos seus parâmetros definem a
localização e o tamanho da nova imagem.
Figura 2.8 - Representação das radiais de um círculo e de um quadrado [6]
CAPÍTULO 2 – Estado da Arte
22 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 23
CAPÍTULO 3
Detecção
A detecção é a parte mais importante num sistema de reconhecimento de
sinais de trânsito. Se um sinal não for detectado, será impossível informar o
condutor da sua presença. Perante isto, uma deficiente detecção colocará a
performance de todo um sistema em causa.
Uma das técnicas mais usadas para a detecção de objectos é a
subtracção de fundo. Esta técnica prima por ser muito fiável, no entanto só é
válida para situações onde o ambiente que envolve o objecto é sempre
constante. Num sistema de reconhecimento de sinais de trânsito em tempo
real, que será implementado num veículo, o ambiente que o rodeia é todo ele
diferente e inesperado, o que inviabiliza desde logo a aplicação da subtracção
de fundo como método de detecção de objectos.
Dado que os sinais de trânsito que se pretendem detectar assumem
predominantemente a cor vermelha e azul, a detecção ocorrerá através da
técnica de segmentação da imagem. Após a aplicação desta técnica, será
necessário percorrer todos os píxeis de toda a imagem para localizar quais
possuem uma destas duas cores.
Em cada imagem são procuradas áreas que possuam tons de vermelho
ou azul, resultando numa imagem onde os píxeis têm valores de zero e um:
“Zero” corresponde ao preto e significa que a cor presente na imagem captada
não se tratava de vermelho nem azul e “um”, branco, significa que o píxel
apresentava a cor azul ou vermelha. A Figura 3.1 ilustra a técnica de
segmentação de imagem aplicada a um conjunto de sinais de trânsito, sendo a
Figura 3.1(a) a imagem original, a Figura 3.1(b) a segmentação da cor
vermelha e a Figura 3.1(c) a segmentação da cor azul.
CAPÍTULO 3 - Detecção
24 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
(a)
(b) (c)
As cores vivas que pretendem realçar os sinais trânsito não são
exclusivamente utilizadas por eles. Infelizmente, em toda a sua área envolvente
é comum o aparecimento de espectros coloridos. Os centros urbanos são
constituídos por inúmeros semáforos, tornando-se o vermelho um alvo possível
de detecção como sinal. Além disso, os automóveis que circulam nas estradas
ou que se encontram estacionados serão permanentemente detectados como
sinais, bastando para isso ser de cor vermelha, azul, ou simplesmente estarem
a travar pois a luz de stop é vermelha. Nos passeios, as pessoas que circulam
com calças, casacos, camisas etc., de cor azul ou vermelha são também
captadas pelo sistema (Figura 3.2).
Figura 3.1 - Segmentação da cor vermelha e azul
Figura 3.2 - Exemplo da cor vermelha e azul presentes em diversas situações
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 25
Como demonstrado, a simples detecção requer uma capacidade de filtrar
as imagens realmente pretendidas daquelas que possuem características
aceitáveis para a detecção mas que saem do enquadramento final pretendido.
Posteriormente serão analisadas técnicas para esse efeito.
A detecção é o primeiro de três passos para se obter um correcto
reconhecimento de sinais de trânsito. Após a captura e respectiva detecção de
zonas que possivelmente contenham sinais, o próximo passo consiste em
extrair delas apenas o sinal, isolando-o. Assim, qualquer processamento que
se execute incidirá apenas nos píxeis que compõem o sinal e não em toda a
imagem. O facto do número de píxeis a ser analisado ser substancialmente
mais reduzido relativamente à totalidade da imagem que lhe deu origem,
tornará o método mais rápido.
Por fim, efectuando uma extracção e análise às características presentes
num sinal, como a cor, forma geométrica e padrão, o sinal é finalmente
reconhecido. Para melhor elucidar todo este processo, a Figura 3.3 contém um
diagrama de blocos que mostra as 3 fases principais da detecção e
reconhecimento de sinais de trânsito.
Figura 3.3 - Três fases que compõem o sistema de detecção e reconhecimento de sinais
CAPÍTULO 3 - Detecção
26 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
3.1. Segmentação por cor
As imagens capturadas pela câmara estão no modelo de cor RGB que
utiliza as três cores primárias (vermelho, verde e azul) para assim gerar a cor
pretendida. Apesar de amplamente usado na computação, este modelo não
apresenta resultados convincentes quando os três planos são processados
independentemente uma vez que as intensidades em cada plano são alteradas
de forma diferente originando assim numa adulteração de intensidades
relativas entre eles. Se for necessário processar parte de informações de uma
imagem que se encontra com diferente iluminação das restantes, torna-se
muito complicado compensar essas diferenças para assim conseguir um bom
processamento na imagem, sendo este modelo muito sensível a variações de
luminosidade [19].
Para contrariar este obstáculo, uma das soluções passa por usar um
modelo de cor que consiga lidar correctamente com diferentes iluminações. Um
bom exemplo é o modelo de cor HSV [21]. Este modelo, ao contrário do RGB,
é perceptualmente uniforme. Isto é, ao alterar-se os valores de cada uma das
suas três componentes (Tonalidade, Saturação e Intensidade), a cor final varia
de uma forma uniforme e esperada. Torna-se, portanto, mais fácil e intuitivo
para o ser humano conseguir atingir uma cor específica. Posto isto, a imagem
obtida através da câmara é convertida para o modelo de cor HSV e efectuada a
respectiva segmentação no modelo de cor HSV, visto tratar-se de um modelo
cujas cores são menos susceptíveis a variações de luminosidade [11].
No modelo de cor HSV, apenas através da componente Tonalidade é
possível aferir a presença de uma das duas cores. Como é visível na Figura
3.4, para a obtenção da cor vermelha basta restringir os valores da tonalidade
de 0º a 15º bem como de 345º a 360º. No caso da cor azul, a gama de valores
situa-se entre os 230 e os 250º.
Figura 3.4 - Componente tonalidade do modelo de cor HSV
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 27
Contudo, verificou-se a existência de muitas zonas com tons de azul
Figura 3.5 e vermelho Figura 3.6, presentes no ambiente livre como é o caso
de uma via pública.
Posto isto, sentiu-se necessidade de aperfeiçoar um pouco mais a
segmentação e não deixar simplesmente passar todas as gamas de vermelho
e azul independentemente da sua saturação e intensidade. Para isso, foram
analisadas as três componentes do modelo HSV de um conjunto de sinais em
ambiente real. Tal análise foi necessária porque, com imagens gravadas e
nítidas, o vermelho e azul apresentados são puros, situação que raramente é
constatada na realidade. Através dessa análise, foi possível averiguar a gama
de valores que normalmente os sinais presentes em diversas situações na via
apresentavam. A Figura 3.7 e Figura 3.8 mostram a diferença entre a
segmentação de apenas a componente Tonalidade (Figura 3.5 e Figura 3.6) e
uma segmentação onde são analisadas as três componentes do modelo HSV.
Figura 3.5 - Segmentação da cor azul através de apenas um elemento do modelo de cor HSV
Figura 3.6 - Segmentação da cor vermelha através de apenas um elemento do modelo de cor HSV
CAPÍTULO 3 - Detecção
28 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Nas imagens anteriores é visível que ajustando os valores de Tonalidade,
da Saturação e da Intensidade, obtém-se uma gama de vermelho e azul mais
restrita. Isto tornará o sistema mais rápido porque conterá menos zonas para
analisar, e mais fiável pois terá menos situações onde se possa confundir com
um sinal. Apesar de a cor ser uma grande vantagem para detectar os sinais
presentes numa via, isso não é o suficiente pois como foi referido
anteriormente, existem inúmeros objectos passíveis de serem detectados, mas
que na verdade não são sinais. Este tipo de objecto é chamado de falso
positivo.
3.1.1. Dificuldades na detecção de sinais
Apesar de à primeira vista a detecção de um sinal parecer uma tarefa um
pouco elementar dado que os sinais são visivelmente vermelhos e azuis, tal
missão não é assim tão evidente. Existe um conjunto de adversidades
inerentes a um ambiente livre que dificultam em demasia esta tarefa.
Um dos exemplos mais flagrantes é a altura do dia. Com o cair da noite,
Figura 3.7 - Segmentação da cor azul através dos três elementos do modelo de cor HSV
Figura 3.8 - Segmentação da cor vermelha através dos três elementos do modelo de cor HSV
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 29
as cores tornam-se mais escuras e deixa de ser tão perceptível a diferença
entre elas. A luz solar perde intensidade e como os objectos não têm cor
própria, apenas reflectem a luz que neles incide. Se esta não existir ou
simplesmente existir em pouca quantidade a cor que os objectos apresentam é
diminuta tornando-os escuros.
No entanto, mesmo durante o dia, a percepção que se tem da cor de um
sinal nem sempre é a mesma. Esta depende muito da posição do sinal. Veja-se
o exemplo da Figura 3.9, em que o mesmo tipo de sinal se encontra em duas
localizações diferentes, na mesma altura do dia (as imagens diferem de apenas
alguns minutos).
À esquerda da Figura 3.9, o sinal encontra-se por debaixo de uma densa
vegetação, o que torna o seu vermelho demasiado escuro e quase
imperceptível. Do lado direito da mesma figure é visível um vermelho vivo,
dado que o sinal se encontra completamente exposto ao sol.
Esta mudança de intensidade de vermelhos dificulta muito o trabalho de
detecção de sinais. Se o intervalo de cor for amplo, é inevitável o aparecimento
de muitos falsos positivos mas se pelo contrário, o intervalo de cor for mais
restrito, implicará que sinais que se encontrem em zonas sombrias, passem
despercebidos e não sejam detectados. No entanto, é preferível a detecção de
várias zonas e posteriormente constatar que de facto não se trata de um sinal.
A solução passa pela utilização por uma gama de valores intermédia, por
um sensor de luminosidade instalado na câmara que permita adequar a gama
Figura 3.9 - Sinais com diferentes intensidades de iluminação
CAPÍTULO 3 - Detecção
30 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
de valores de captação das cores de acordo com a luminosidade presente no
local da detecção e posteriormente por um conjunto de técnicas fiáveis para
assim descartar o máximo número de falsos positivos. A Figura 3.10 ilustra a
situação mais favorável onde o equilíbrio entre luminosidade, brilho das cores e
contraste do fundo permitem um bom isolamento dos sinais de trânsito de todo
o resto da imagem, bem como a sua clara detecção.
Se a noite complica substancialmente a detecção de sinais, a presença
do sol nem sempre é sinónimo de uma detecção perfeita. Surgem situações em
que o sol se encontra por detrás do sinal e, apesar de muitas vezes passar
despercebido a um condutor, causa inúmeras dificuldades na detecção. A
Figura 3.11 demonstra esse efeito.
A sequência de imagens da Figura 3.11 mostra que o sol, quando está
presente na imagem, torna-a inutilizável para ser processada
convenientemente. Este fenómeno pode ocorrer com alguma frequência a
determinadas horas do dia, sendo dificilmente solucionável nas condições
actuais de captura de imagens. Na Figura 3.12(b) é visível como a cor do sinal
Figura 3.10 - Sinais com intensidade de iluminação perfeitas
Figura 3.11 - Sinal com o sol por trás
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 31
se altera quando o sol se encontra na retaguarda do sinal. Já a Figura 3.12(a)
mostra o sinal com uma cor mais natural, sem interferência directa da luz do
sol.
(a) (b)
3.1.1.1. Obstrução e Oclusão
Em muitas situações os sinais de trânsito não se encontram
completamente visíveis. Se um condutor por vezes sente dificuldades em
observar um sinal de trânsito, em situações que este se encontra parcialmente
obstruído por um objecto, automóvel ou por vegetação, um sistema automático
terá muitas mais dificuldades. Na Figura 3.13 é patente esta situação, em que a
vegetação só permite a visualização da totalidade do sinal, apenas quando o
veículo se encontra muito próximo do mesmo.
Na sequência de imagens da Figura 3.13, o sinal de limite de 50km/h
Figura 3.12 - Sinal de STOP com a cor viva (a) e substancialmente mais escura (b)
Figura 3.13 - Sinais obstruídos por vegetação
CAPÍTULO 3 - Detecção
32 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
começa a ser visível tardiamente e o de aproximação de rotunda nunca chega
a ser completamente visível. Este e outro tipo de oclusões são frequentemente
constatados nas estradas portuguesas, o que impossibilita muitas vezes a
detecção correcta de todos os sinais.
3.1.1.2. Deterioração dos sinais
Mesmo que a maioria das vezes os sinais estejam completamente
desobstruídos, há situações em que a detecção se torna complexa na medida
em que alguns sinais de trânsito apresentam sinais evidentes de deterioração e
perda de cor. Isto deve-se fundamentalmente à sua exposição solar, aos
agentes erosivos e em algumas das vezes a actos de vandalismo, como
mostra a Figura 3.14.
A possibilidade de abdicar da segmentação por cor foi colocada em
prática. Como a cor que os sinais apresentam é susceptível a várias
adversidades, um dos métodos estudados foi analisar a forma geométrica
presente nos sinais detectados sem efectuar qualquer segmentação por cor.
Para isso usou-se a função disponível na biblioteca OpenCV cvCanny() que,
definindo uma determinada histerese (threshold), permite simplesmente obter o
rebordo dos objectos. No entanto, foi notória a dificuldade do sistema
diferenciar os objectos (Figura 3.15).
Figura 3.14 - Sinais sujeitos à exposição solar e vandalismo
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 33
Apesar de várias contrariedades inerentes à cor apresentada pelos
sinais de trânsito, a segmentação por cor mostrou ser, de facto, a principal
forma de diferenciação dos demais objectos presentes na via.
3.2. Binarização por histerese (threshold)
Tal como referido no capítulo 2, a binarização de uma imagem é a
atribuição aos píxeis de uma determinada imagem apenas de dois valores
possíveis: zero e um, através de uma técnica de histerese. Com isto, obtém-se
uma imagem a preto e branco onde se torna mais simples e rápido a sua
analise, uma vez que a imagem deixa ter um conjunto variado de valores
possíveis para cada píxel.
No caso do modelo usado para a segmentação da imagem (o modelo
HSV), cada píxel é composto por três componentes: Tonalidade, saturação e
intensidade. Para uma eficaz binarização, o valor de cada píxel é analisado
para verificar se a cor por ele representado é vermelha ou azul. Se a cor
apresentada estiver na gama de valores correspondente a uma destas duas
cores, com a respectiva saturação e intensidade desejadas, esse píxel tornar-
se-á branco. Caso contrário, será preto. O resultado será uma imagem a preto
e branco, de apenas um canal.
Figura 3.15 - Aplicação do método Canny
CAPÍTULO 3 - Detecção
34 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
(a)
(b) (b)
Como seria de esperar, na Figura 3.16 são visíveis algumas zonas que
sofreram uma segmentação para além dos sinais pretendidos. Tal como já foi
referido, um sinal não apresenta sempre a mesma intensidade de cor. É
necessário manter uma gama de valores mais ampla para assim conseguir
detectar sinais que estejam mais degradados ou que por exemplo estejam em
zonas sombrias. De qualquer das formas, todas as zonas serão examinadas
posteriormente.
3.3. Redução do tempo de processamento
Como o sistema proposto nesta tese pretende informar o condutor, em
tempo real, da presença de um sinal, o tempo de processamento é muito
importante. Quando um sinal se torna perceptível ao sistema, este deverá ter a
rapidez necessária de informar o condutor da sua presença, para que assim o
consiga advertir de um possível perigo ou alguma restrição.
Figura 3.16 – Imagem original (a) e imagem binária após segmentação vermelha (b) e azul (c)
CAPÍTULO 3 - Detecção
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 35
Analisando a forma de como os sinais surgem ao longo da via, verifica-se
que estes surgem do lado direito do condutor e sempre a uma altura
relativamente constante.
Posto isto, processar toda uma imagem revelou-se um consumo de tempo
computacional desnecessário. É escolhida uma regiao de interesse (ROI) e a
partir daí efectua-se a segmentaçao na zona pretendida. De salientar que os
sinais aparecem numa espécie de cone, abrindo à medida que se aproximam
do veículo. No entanto, para processar a imagem dessa forma seriam gastos
mais recursos do que processar o rectângulo como mostra a Figura 3.17.
3.4. Conclusões
Os sinais de trânsito foram concebidos de forma a contrastar com os
demais objectos presentes num ambiente livre. Embora existam inúmeras
adversidades inerentes a um ambiente livre, a melhor forma de tirar proveito
dessa característica é efectuar uma segmentação por cor. Esta técnica revelou-
se suficientemente rápida o que permite uma poupança de tempo para as
restantes fases do sistema. Embora não tenham sido realizados testes com o
Figura 3.17 - Redução da área de pesquisa de sinais
CAPÍTULO 3 - Detecção
36 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
modelo de cor RGB, o modelo HSV mostrou-se fiável possibilitando uma
segmentação apurada.
A aplicação de outras técnicas de detecção de sinais não baseadas na
cor pode também ser valorizada com vista a resolver o problema da não
detecção de sinais cujas bordas não apresentem a cor vermelha nem azul,
como é o caso do sinal de “fim de todas as proibições impostas anteriormente
por sinalização a veículos em marcha” entre outros como os apresentados na
Figura 3.18
Figura 3.18 - Sinais que não possuem bordas coloridas
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 37
CAPÍTULO 4
Classificação
O objectivo desta fase consiste em agregar os sinais detectados por
classes. Esta divisão permite agregar os sinais cujas características são
comuns, com vista a um reconhecimento mais rápido. Com a segmentação por
cor realizada, o próximo passo consiste em analisar os sinais quanto à sua
forma geométrica. Estes podem assumir a forma de um triângulo, círculo,
rectângulo, octógono ou ainda de um quadrado. A Figura 4.1 ilustra essa
divisão.
A combinação entre a cor e a forma do sinal detectado pelo sistema
permite identificar o tipo de sinal e incluí-lo numa das cinco possíveis classes:
Triângulo + vermelho
Círculo + vermelho
Círculo + azul
Quadrado + azul
Rectângulo + azul
A formação de mais duas classes relativamente aos sinais identificados a
violeta na Figura 4.1 é desnecessária visto que são sinais únicos. Não havendo
Figura 4.1 - Divisão dos sinais quanto à sua cor e forma
CAPÍTULO 4 - Classificação
38 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
mais nenhum igual a si, a sua identificação é imediata.
A criação de classes consoante o tipo de sinal (“Perigo”, “Obrigação”, etc.)
tal como mostra a Figura 4.2 foi pensada não ser a melhor opção. Muitas vezes
é efectuada a associação da forma e cor ao tipo de sinal mas esta associação
não é assim tão simples.
Os sinais do tipo “Cedência de passagem” são constituídos por diferentes
cores e formas geométricas, o que poderia criar alguma confusão na atribuição
de classes, tal como se pode observar na Figura 4.3.
Um dos exemplos é o caso de um sinal cuja sua forma geométrica é um
triângulo e a cor que o forma é o vermelho. Dado que existem sinais do tipo
“Cedência de Passagem” que também possuem estas cores em particular, este
sinal não poderá ser associado directamente aos sinais de perigo. Somente no
caso de sinais cuja forma é um círculo azul, é que se poderá associar a um
sinal de Obrigação, pois tais características apenas estão presentes neste tipo
de sinalização. Em todos os outros casos, há possibilidade de se tratar de mais
do que um tipo de sinal.
4.1. Contornos
Como já foi referido anteriormente, a presença das cores vermelha ou
Figura 4.2 - Classificação de sinais
Figura 4.3 - Sinais do tipo Cedência de Passagem
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 39
azul não são restritas à sinalização rodoviária pelo que existem inúmeros
objectos que sobrevivem à binarização originando assim falsos positivos que
posteriormente necessitam ser excluídos. Para isso desenvolveram-se técnicas
que permitem não só descartar esses falsos positivos presentes nas imagens
mas também identificar e classificar de forma correcta e eficiente todos sinais
nelas presentes.
O contorno a um objecto é um bom princípio para se obter informações
importantes tendo em vista a sua futura identificação. É efectuado apenas na
imagem binária para que este incida meramente sobre os elementos de cor
vermelha e azul. Com a sua formação, é possível extrair a área que o sinal
ocupa.
Embora o método Canny e Sobel sejam os dois métodos mais usados no
que diz respeito a um sistema de detecção e reconhecimento de sinais de
trânsito [15] [11] [22] [4] [13] neste trabalho optou-se pela utilização da função
“cvFindContours()” também disponibilizada pela biblioteca OpenCV, tal como
os métodos Canny e Sobel. Esta função, ao contrário dos métodos
mencionados, para além de identificar os contornos dos objectos permite
identificar a área que estes ocupam bem como a sua posição, como mostra a
Figura 4.4. Como os sinais possuem todos eles uma forma geométrica
conhecida e bem delineada, optou-se por usar a função “cvApproxPoly()” que
permite uma aproximação dos contornos a polígonos, aperfeiçoando-os.
Figura 4.4 - Área do contorno de diversos sinais
Dim: 90x90
Área: 6281
Dim: 90x90
Área: 6357
Dim: 90x90
Área: 7837
Dim: 90x90
Área: 4189
Dim: 90x90
Área: 4189
CAPÍTULO 4 - Classificação
40 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Como seria de esperar, o tamanho que um sinal apresenta no decorrer de
uma viagem não é constante, alterando-se consoante a sua distância ao
sistema de reconhecimento de sinais de trânsito. Quando um sinal é
descoberto, possui um tamanho bastante reduzido e à medida se aproxima,
assume um tamanho gradualmente maior o que por sua vez implica uma área
também superior (Figura 4.5).
Posto isto, foi definido um intervalo que permite comparar a área dos
sinais detectados. Na sequência de imagens anterior, o sinal de “Cedência de
Passagem” (B7 - aproximação de rotunda) situado em cima foi detectado
posteriormente ao sinal do tipo “Proibição” porque a área do seu contorno
ainda não tinha entrado no intervalo de valores pretendido, ao invés do sinal
imediatamente por baixo que possui uma área maior. É visível que pouco
Figura 4.5 - Aproximação de sinais de trânsito
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 41
depois o sinal atingiu as dimensões necessárias e foi então detectado pelo
sistema.
Se o valor da área não respeitar o intervalo de valores pretendidos, é
automaticamente descartado visto se tratar de um objecto demasiado grande
ou com dimensões bastante reduzidas. Se realmente tratar-se de um sinal de
pequenas dimensões, significa que ainda se encontra bastante distante pelo
que o melhor procedimento é aguardar que atinja dimensões esperadas que
permitam a extracção de características para assim se proceder à sua
classificação.
Na Figura 4.6 os contornos existentes não possuem a área pretendida
para que seja necessária a aplicação de técnicas de reconhecimento de sinais
de trânsito ou simplesmente para descartar possíveis falsos positivos. São
imediatamente ignorados sem que para isso seja necessário despender
qualquer tipo de custo computacional.
4.2. Centro de massa
A posição do centro de massa é determinada através do contorno, pelo
que o interior do sinal em nada interfere no seu centro de massa. Como é
visível na Figura 4.7, onde estão representados quatros sinais distintos do tipo
“Perigo”, todos os centros de massa coincidem na mesma posição
relativamente ao contorno do sinal:
Figura 4.6 - Contornos efectuados após segmentação da cor vermelha
CAPÍTULO 4 - Classificação
42 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
O centro de massa esperado nos sinais do tipo “STOP”, “Proibição”
(círculos) e “Informação” (quadrados e rectângulos) é exactamente a meio da
altura e largura do sinal. No entanto, no caso dos triângulos, o centro de massa
não se localiza exactamente no centro (Figura 4.8):
Apesar da coordenada “x” do centro me massa dos triângulos continuar a
ser a meio do valor da largura do sinal (50%), a coordenada “y” varia um pouco
consoante o posicionamento do triângulo. No caso de sinais do tipo “Perigo”, a
coordenada “y” do centro de massa poderá ser de aproximadamente 35% do
valor da altura do sinal. No caso do sinal de “Cedência de passagem”, a
mesma coordenada assume valores na ordem dos 35% do valor da altura do
sinal.
Com uma pré-análise ao respectivo posicionamento do centro de massa
de cada sinal, é possível saber aproximadamente o local onde se encontra o
centro de massa. Posto isto, se o centro de massa de um determinado objecto
surgir numa posição não prevista, significará que se está na presença de um
falso positivo, excluindo-o desde então. A Figura 4.9 exemplifica essa situação.
Figura 4.7 - Centro de massa de quatro sinais de Perigo distintos
Figura 4.8 – Centro de massa de dois sinais triangulares
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 43
4.3. Relação caixa delimitadora e área do contorno
Aos objectos que respeitem o intervalo de valores referente à área
estabelecida, é desenhado uma caixa que os limita. Através do contorno
efectuado ao sinal, é possível obter as coordenadas do objecto e com isto
construir uma caixa que o isole de toda a imagem (Figura 4.10).
Calculando a área da caixa delimitadora e relacionando-a com a área do
contorno, é possível aferir que tipo de sinal se trata. A Figura 4.11 mostra isso
mesmo:
Figura 4.9 - Centro de massa esperado em diversos objectos
Figura 4.10 - Caixa delimitadora aplicada a diferentes sinais de trânsito
Figura 4.11 - Relação entre as áreas da caixa delimitadora e do contorno
CAPÍTULO 4 - Classificação
44 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Como é elucidativo na Figura 4.11, é possível distinguir através desta
relação de áreas os diferentes sinais de trânsito. A dúvida recai somente sobre
os sinais triangulares visto que ambos possuem uma relação de
aproximadamente 52%. Recorrendo ao centro de massa, tal incerteza será
desfeita na medida em que a componente “y” do centro de massa do sinal de
“Cedência de Passagem” encontra-se a aproximadamente 35% do valor da
altura do sinal e no caso dos outros sinais triangulares, localiza-se a 65%
desse mesmo valor da altura (Figura 4.12).
Mesmo admitindo um intervalo de valores para cada uma destas
relações, este método mostrou-se pouco fiável quando actua sozinho. Existe
um extenso número de falsos positivos cuja relação entre a área do contorno e
a caixa delimitadora coincide com as formas geométricas assumidas pelos
quatro formatos de sinais de trânsito (Figura 4.13).
(a)
Figura 4.12 - Diferença entre os centros de massa de um sinal de perigo e de cedência de passagem
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 45
(b)
(c)
4.4. Relação altura vs largura
Um outro método para descartar falsos positivos é a relação entre a altura
e a largura da caixa delimitadora de um objecto. Os sinais que se pretendem
identificar possuem uma relação entre a altura e a largura no intervalo (1,2). A
Figura 4.14 ilustra esta relação:
Este tipo de ilação permite descartar muitos falsos positivos que
anteriormente teriam ultrapassado tanto a fase em que a área do contorno
estava dentro dos valores desejados bem como a fase da relação entre a caixa
Figura 4.13 – Detecção de falsos positivos que seriam confundidos com (a) triângulo, (b) e (c) círculos
Figura 4.14 - Relação entre altura e largura de quatro objectos distintos
CAPÍTULO 4 - Classificação
46 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
delimitadora e o contorno do objecto.
Na Figura 4.15 está ilustrado um objecto cuja relação entre a área do
contorno e a área da caixa delimitadora é de 73%. Sem qualquer outro método
aliado à relação entre as áreas da caixa delimitadora e contorno, o sistema
identificaria o objecto como sendo um círculo. No entanto, a relação entre a
altura e a largura não se encontra no intervalo (1,2). Como a largura do objecto
é bastante superior à altura, conclui-se que não se está perante um sinal.
Contudo, este tipo de relação não permite afirmar com toda a certeza que
se trata de um sinal, nem aferir que tipo de sinal representa. Apenas permite
descartar falsos positivos que não respeitem as dimensões desejadas.
4.5. Detecção de vértices
Como foi referido anteriormente, os sinais apresentam cinco tipos de
formas geométricas e todas elas possuem diferente número de vértices com a
excepção do quadrado e do rectângulo. Contudo, analisando os vértices de um
determinado objecto ajudará na detecção de falsos positivos, bem como
confirmar a presença de um sinal (Figura 4.16).
Figura 4.15 - Rejeição de falso positivo
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 47
Facilmente se poderá associar a presença de três, quatro e oito vértices à
presença de um triângulo, quadrado e octógono respectivamente.
4.6. Radiais
Dado que frequentemente surgem diversos objectos na imagem e que a
aplicação do método acontece em tempo real, é de extrema importância reduzir
o tempo computacional desta técnica. Embora consuma poucos recursos
computacionais, quanto mais rápido esta técnica for posta em prática, mais
acelerado será o sistema.
A solução passa por reduzir ao máximo o número de radiais, para
conseguir conciliar o menor tempo de processamento com uma correcta
identificação da forma do sinal. Como o contorno dos sinais são todos eles
pares (simétricos em relação ao eixo vertical), optou-se por reduzir as radiais
para metade e aplicá-las a apenas um dos lados do sinal. Optou-se pelo lado
esquerdo porque quando um sinal está parcialmente encoberto, essa obstrução
ocorre normalmente sobre o lado direito, deixando o lado esquerdo intacto.
Mesmo assim, a informação devolvida pelas radiais continua a ser excessiva
na medida em que não é necessário obter a informação do raio de
aproximadamente um em um grau. Desta forma, o número de radiais foi
reduzido para sete.
Figura 4.16 - Detecção de vértices em diferentes sinais
CAPÍTULO 4 - Classificação
48 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Com apenas sete radiais é possível determinar a forma que o sinal
possui. Assim, o tempo de processamento é substancialmente menor do que o
inicialmente previsto. A primeira radial é obtida com um ângulo de 90º em
relação ao eixo horizontal. As seguintes são desenhadas com 30º de
desfasamento, no sentido anti-horário. A forma como as radiais se dispõem nos
sinais, permite que incidam nos vértices dos triângulos (Figura 4.17).
O valor de cada uma das radiais é guardado num vector para ser
analisado e comparado. As radiais são comparadas entre si e é verificada a
correspondência a uma forma geométrica pretendida. Como os sinais nem
sempre possuem o mesmo tamanho, em primeiro lugar é identificada a altura e
largura do sinal para que seja possível relacionar as radiais de forma
percentual.
Numa tentativa de reduzir ainda mais o tempo de processamento, as sete
linhas traçadas não são efectuadas píxel a píxel, mas sim de dois em dois
píxeis. Assim, para desenhar uma linha de cujo comprimento é de, por
exemplo, 30 píxeis, apenas são desenhados 15. O ideal seria obter um
intervalo ainda maior entre cada píxel. No entanto tal não é possível porque a
margem de erro poderá ir até aos 6 píxeis o que interfere consideravelmente no
valor do final (Figura 4.18).
Figura 4.17 - Representação de radiais em diferentes sinais triangulares
CAPÍTULO 4 - Classificação
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 49
A classificação de sinais permite, em primeiro lugar, descartar os falsos
positivos presentes na imagem. Estes falsos positivos embora apresentem
algumas características de interesse, como a cor e tamanho, não possuem
todas as particulares inerentes a um sinal, logo são rejeitados.
Sem pesados métodos de processamento de imagem, é possível
identificar que tipo de sinal se trata e, através de características similares,
agrupá-los por classes.
Após a detecção de um sinal é necessário reconhecê-lo perante todos os
sinais existentes. Esta pesquisa é tanto ao quanto mais rápida, quanto menor
for o número de sinais possíveis. Ao agrupar os sinais por classes, o
reconhecimento apenas incidirá nos sinais da mesma classe e não em todos
eles. Assim, a performance do sistema aumenta uma vez que o tempo
computacional a ser gasto é menor.
Por outras palavras, se o sinal identificado for, por exemplo, um triângulo
o seu reconhecimento recairá somente pelos sinais do tipo “Perigo” e
“Cedência de Passagem” (pois também existem sinais triangulares nesta
classe). Assim não é necessário comparar com os sinais do tipo “Proibição”,
“Informação” nem “Obrigação”. O mesmo acontecerá para as restantes classes
de sinais. Assim, o tempo de processamento é substancialmente reduzido bem
como a taxa de erro.
De salientar que através das técnicas idealizadas, e ainda na fase de
Figura 4.18 - Representação de apenas sete radiais por sinal
CAPÍTULO 4 - Classificação
50 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
classificação, os dois principais sinais presentes nas estradas portuguesas já
são reconhecidos de entre todos os outros. São eles o Sinal de “STOP” e o de
“Cedência de Passagem”. Estes dois sinais não precisam de mais qualquer tipo
de processamento, ao invés dos restantes que com a classificação apenas é
identificada a classe a que pertencem.
4.7. Conclusões
A fase da classificação obteve resultados bastante satisfatórios. A
aplicação de vários métodos que visam eliminar a presença de falsos positivos
bem como classificar os sinais quanto à sua forma e cor mostrou-se muito útil,
garantindo à partida uma redução de tempo de processamento inerente à
última fase do sistema implementado. Todas as técnicas aplicadas para a
classificação dos sinais não necessitaram de qualquer redimensionamento das
imagens obtidas. De realçar a quantidade de objectos que, apesar de
sobreviverem à técnica de segmentação, não representam sinais de trânsito.
Os sinais que representam maior importância no sistema de circulação
rodoviária, são eles o sinal de cedência de passagem e de STOP, estão a partir
desta fase reconhecidos.
A técnica da aplicação das radiais demonstrou ser a mais fiável no
capítulo da classificação. Foi a que, quando colocada em prática em ambiente
livre, juntamente com todas as adversidades que lhe são reconhecidas,
mostrou resultados mais satisfatórios. Para além de descartar praticamente
100% dos falsos positivos detectados, este método identifica a forma do sinal,
como sendo um triângulo, um círculo, um rectângulo ou um quadrado.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 51
CAPÍTULO 5
Reconhecimento
Após a fase da detecção e consequente divisão dos sinais por classes,
surge por fim a fase do reconhecimento. Reconhecer significa conhecer algo
novamente, o que implica uma base de conhecimento e armazenamento prévio
de características intrínsecas ao objecto a ser reconhecido. É aqui que surge
um cruzamento entre os sistemas de visão computacional e a inteligência
artificial.
Uma das principais funções da área de visão computacional é o
reconhecimento de objectos [23] [24] [25]. Este reconhecimento está
directamente relacionado com o reconhecimento individual de padrões que tem
como objectivo facilitar o reconhecimento do objecto como um todo.
Para um correcto reconhecimento de sinais de trânsito, é obrigatório a
análise ao padrão do sinal. Embora o contorno diferencie as classes dos sinais,
é a figura padrão que se encontra no interior do sinal que permite a sua
distinção entre os demais da mesma classe. É então necessária uma correcta
avaliação do seu interior para assim comparar com as informações
previamente adquiridas.
5.1. Dificuldades no reconhecimento de sinais de trânsito
Aquando o reconhecimento de sinais de trânsito, podem ocorrer
problemas quando surgem sinais cujo padrão é o mesmo, como é o caso dos
sinais presentes na Figura 5.1:
CAPÍTULO 5 - Reconhecimento
52 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Contudo, os padrões aparecem em sinais de diferentes classes. Dado
que foi efectuada uma classificação anteriormente, tal problema é facilmente
contornado.
Outro dos problemas relaciona-se com a discordância de padrões entre
sinais com a mesma informação. Visto não ser respeitada a normalização dos
sinais existentes nas estradas portuguesas, é frequente avistar-se sinais que,
apesar de possuírem a mesma função, têm distintas figuras que o diferenciam.
5.2. ROI
Após a aquisição da imagem, esta sofre um processo de segmentação
por cor e correspondente imagem binária. Em seguida é efectuado o contorno
nas regiões desejadas onde são aplicados um conjunto de técnicas que visam
descartar falsos positivos e identificar a forma do sinal.
Figura 5.1 - Sinais com figuras padrões iguais
Figura 5.2 - Mesmos sinais com diferentes figuras padrão
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 53
A posição que o sinal ocupa na imagem é identificada através da caixa
que o delimita e recorre-se à imagem inicial, com as respectivas coordenadas,
para extrair simplesmente o sinal. Assim é criada uma imagem cujas
dimensões são pautadas pelo tamanho que o sinal apresenta na realidade.
Apesar de algumas características do sinal já terem sido tomadas em
atenção, apenas se tornam suficientes para a identificação da forma e
corresponde classificação. É necessário então outro tipo de abordagem ao
sinal para assim conseguir analisar o seu conteúdo.
5.3. Análise da figura padrão
Para o reconhecimento de padrões presentes nos sinais de trânsito é
necessária a construção de uma base de dados que possua os sinais
susceptíveis a serem reconhecidos. Como normalmente a comparação de
imagens é um processo demorado, qualquer estratégia que permita reduzir a
lista de sinais candidatos, sem com isso consumir muito tempo computacional,
intitula-se como uma mais-valia no que diz respeito a um melhoramento do
desempenho geral do sistema.
A divisão dos sinais de trânsito por classes permite que a pesquisa a ser
efectuada com o intuito de reconhecer o sinal incida exclusivamente na classe
pretendida e não num conjunto alargado de sinais. E, em quantas mais classes
Figura 5.3 - Criação de um ROI a partir da imagem original
CAPÍTULO 5 - Reconhecimento
54 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
for possível dividir os sinais existentes, melhor será a eficácia do sistema.
Tendo em vista um aumento do rendimento do sistema, foi efectuada uma
análise aos padrões para quantificar o número de píxeis que o formam bem
como a sua localização tendo em conta o tamanho do sinal.
Concluiu-se que o número de píxeis presentes varia consideravelmente,
bem como a sua posição no interior do sinal. Posto isto, faz sentido a criação
de subclasses de sinais consoante a quantidade de píxeis que constituem o
seu padrão bem como a sua localização. Veja-se o exemplo da Figura 5.4:
Analisando os padrões dos dois sinais acima representados, facilmente
se depreende que o da esquerda é substancialmente mais denso que o da
direita. Para uma mesma área de contorno do sinal, existe uma diferença de
mais de três vezes o número de píxeis que compõem os sinais. Dessa forma,
embora estes dois sinais pertençam à mesma classe, uma vez que ambos são
triângulos com suas bordas vermelhas, a comparação destes dois padrões
para o respectivo reconhecimento do sinal é perfeitamente desnecessária.
5.3.1. Análise da forma da figura padrão
Para analisar o padrão correspondente a cada sinal de trânsito é
efectuada a extracção do seu interior através de uma nova segmentação da cor
preta ou branca, dependendo da classe do sinal (Figura 5.5 a Figura 5.8).
Figura 5.4 - Representação da figura padrão de dois sinais de perigo
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 55
Figura 5.5 - Segmentação da figura padrão de sinais triangulares
Figura 5.6 - Segmentação da figura padrão de sinais circulares vermelhos
Figura 5.7 - Segmentação da figura padrão de sinais circulares azuis
Figura 5.8 - Segmentação da figura padrão de sinais quadrangulares azuis
CAPÍTULO 5 - Reconhecimento
56 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
5.3.2. Dificuldades na análise da figura padrão
A segmentação quando efectuada a sinais cuja forma é diferente de um
quadrado ou rectângulo, não pode ser realizada directamente sobre o ROI
dado que as dimensões deste são obtidas através da altura e largura do sinal.
No caso de sinais triangulares e circulares, o sinal não ocupa a totalidade do
ROI e quando se recorre à imagem inicial para obter o sinal a reconhecer,
raramente este surge isolado de objectos ou vegetação. Quase sempre são
visíveis píxeis semelhantes aos pretendidos pela segmentação do padrão, o
que inviabiliza uma correcta segmentação do interior do sinal (Figura 5.9).
Ao efectuar uma segmentação da cor preta a estes sinais, bem como a
aplicação da respectiva imagem binária, o resultado não apresentará apenas
os píxeis pretos correspondentes à figura padrão do sinal, mas também o preto
relativo ao ambiente que envolve o sinal como é visível na Figura 5.10.
Perante isto, é necessário eliminar todos os píxeis que envolvem o sinal
para que seja possível a obtenção de sinais sem quaisquer píxeis no exterior
que possam colocar em causa uma segmentação perfeita.
Figura 5.9 - Sinais que não ocupam a totalidade do ROI
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 57
Um dos métodos estudados foi percorrer cada linha de píxeis da imagem
do exterior para o interior até encontrar a cor vermelha/azul que significa a
borda do sinal. Se esta não for encontrada, o valor do respectivo píxel é
colocado a “1” (branco) e avança para o píxel seguinte. Se por outro lado, a
borda do sinal for encontrada (vermelho/azul), o sistema muda de linha e
recomeça novamente o processo sucessivamente até percorrer todo o sinal de
cima para baixo.
Contudo, por vezes surgem objectos vermelhos/azuis por detrás do sinal,
o que inviabilizava esta técnica uma vez que quando se encontra a cor
vermelha/azul o sistema interpretava como sendo a borda do sinal, embora não
o fosse, e entre esse objecto e o sinal continuavam a surgir píxeis da mesma
cor que o interior do sinal. Optou-se então por desenhar o contorno do sinal
não apenas na imagem binária como acontecera até aqui, mas também na
imagem principal o que fará com que o sinal seja limitado pelo contorno.
Ao percorrer a imagem do exterior para o interior, em vez de se verificar a
presença da borda do sinal, verifica a presença do seu contorno. O resto do
Figura 5.10 - Segmentação da figura padrão de diversos sinais de trânsito
CAPÍTULO 5 - Reconhecimento
58 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
processo desenrola-se como em cima mencionado. O resultado obtido está
ilustrado na Figura 5.11 onde é visível que todos os objectos/vegetação que se
encontravam em redor do sinal foram anulados, sendo assim possível obter
exclusivamente o sinal.
Como já foi referido, os sinais de trânsito estão sujeitos a inúmeras
intensidades luminosas. Não é possível efectuar uma segmentação demasiado
ríspida ao conteúdo do sinal, na medida em que por vezes os sinais
encontram-se em zonas mais expostas ao sol e o preto/branco vêm as suas
propriedades alteradas quando comparadas com o mesmo sinal à sombra.
Inclusive muitas vezes os sinais que estão completamente abrigados do sol
possuem a sua cor branca demasiadamente escura o que afecta
significativamente o tipo de segmentação. Posto isto, é necessário efectuar
uma segmentação controlada, para que se consiga obter a máxima quantidade
de preto desejável.
Principalmente devido ao ruído da imagem oriundo de oscilações
provocadas pelo movimento do veículo, mas também dada a qualidade da
imagem que é de apenas 640x480, por vezes a borda do sinal possui áreas
substancialmente mais escuras o que provoca o aparecimento de píxeis pretos,
visíveis após a segmentação e respectiva imagem binária:
Figura 5.11 - Várias etapas no isolamento do sinal de objectos exteriores
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 59
Uma das soluções passa por reduzir a gama de valores que segmenta a
cor preta. Isto é, apenas o que fosse realmente preto “limpo” é que seria
considerado como figura padrão do sinal. Contudo, dada a oscilação do
automóvel e aos agentes erosivos que deteriorarem os sinais presentes nas
vias públicas, alguns sinais apresentam um preto mais claro, muitas vezes
interpretado como cinza escuro. Para contornar este problema, idealmente
seria eliminar por completo a borda à semelhança do efectuado ao ambiente
externo ao sinal. Assim, todos os píxeis pretos existentes na imagem eram
restritos ao interior do sinal.
Para eliminar a borda, definiu-se uma espessura para o contorno que se
realiza ao sinal. Como os sinais assumem diferentes tamanhos consoante a
distância que possuem ao veículo, foi criada uma relação entre o tamanho da
borda e a espessura do contorno. Assim, à medida que o sinal se aproxima, o
contorno que inicialmente era estreito, assume valores cada vez maiores
acompanhando progressivamente o aumento da borda do sinal, como é visível
na Figura 5.13.
Figura 5.12 - Sinais cujas bordas contêm píxeis pretos
CAPÍTULO 5 - Reconhecimento
60 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Com esta técnica é possível ocultar toda a borda de um sinal, impedindo
que esta interfira de forma negativa na segmentação do interior do sinal.
De salientar que quanto mais próximo o sinal for detectado, maior será o
padrão que o diferencia logo mais píxeis o constituem. Contudo, relacionando o
número de píxeis com a área do contorno, é possível ter uma relação
percentual do número de píxeis que compõem o padrão possibilitando o seu
estudo independentemente do tamanho assumido pelo sinal (Figura 5.14).
Figura 5.13 - Diferentes espessuras do contorno a sinal
Figura 5.14 - Relação entre os píxeis da figura padrão e a área do contorno
Píxeis Pretos: 497 Área Contorno: 4277
Relação: 8.61
Píxeis Pretos: 1537 Área Contorno: 133027
Relação: 8.65
Píxeis Pretos: 3133
Área Contorno: 27211 Relação: 8.69
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 61
Como seria de esperar, existe uma pequena variação da relação mas
como é bastante reduzida, acaba por não causar quaisquer transtornos na
aplicação deste método.
5.3.3. Análise do posicionamento da figura padrão
Da mesma forma que o número de píxeis presentes num sinal é
importante, a posição que estes ocupam é também fulcral. A comparação de
sinais que possuam um padrão completamente distinto do outro é
perfeitamente dispensável. A análise ao padrão informa a disposição que os
píxeis apresentam no interior do sinal e permite retirar elações fundamentais ao
bom desempenho do sistema.
A Figura 5.15 mostra dois sinais que, apesar de terem aproximadamente
o mesmo número de píxeis a formar o seu padrão, a posição que ocupam no
sinal é bastante diferente:
Posto isto, um sinal cujo padrão surge a cerca de 70% da altura do sinal e
ocupe mais de 50% da sua largura, não necessita ser comparado com outro
sinal cujo padrão apenas ocupa 10% da largura e surja a ¼ da sua altura.
Outro exemplo ainda mais flagrante é o da Figura 5.16. A figura padrão
que o distingue os sinais é exactamente o mesmo, apenas possuem posições
diferentes. Sendo assim, através de uma simples análise ao posicionamento
dessa mesma figura se poderá excluir, à partida, pelo menos um sinal ou até
mesmo proceder ao seu reconhecimento imediato.
Figura 5.15 - Sinais de perigo com distintas figuras padrão
CAPÍTULO 5 - Reconhecimento
62 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Estabelecendo uma base de dados que permita uma separação de sinais
não só consoante a sua forma e cor, mas também tendo em conta o padrão
que ostenta bem como a forma como este se apresenta no interior do sinal
possibilita a criação de grupos de sinais mais reduzidos.
Como os métodos de comparação de padrões são muito mais pesados a
nível computacional que uma simples segmentação, a divisão das classes dos
sinais consoante o tipo de padrão sustentado por eles é preponderante para
um eficaz reconhecimento. Isto irá permitir que os métodos incidam num
número de sinais significativamente mais reduzido, diminuindo assim o tempo
necessário para o reconhecimento dos sinais.
Efectuou-se um estudo pormenorizado ao posicionamento do padrão que
cada sinal possui em cada uma das quatro classes distintas de sinais. Mais
concretamente, foram analisadas as coordenadas mínimas e máxima de x e y.
Como o sinal não é perceptível sempre com o mesmo tamanho, é fundamental
uma análise em proporção. No caso das coordenadas x, esta é relacionada
com a largura do sinal. Já para as coordenadas y, a altura serve como
referência para assim serem obtidos valores em percentagem:
x_min=(x_min-pt1.x)*100/lado;
x_max=(x_max-pt1.x)*100/lado;
y_min=(y_min-pt1.y)*100/altura;
y_max=(y_max-pt1.y)*100/altura;
Figura 5.16 - Sinais de obrigação com as mesmas figuras padrão
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 63
Assim, independentemente do tamanho assumido pelo sinal, isto é, quer
este seja detectado nas proximidades do veículo, ou a alguma distância, é
possível saber a posição no padrão relativamente às dimensões apresentadas
pelo sinal.
Aquando da segmentação, as coordenadas dos píxeis são guardadas
para verificar se são os primeiros e/ou os últimos píxeis, mais concretamente,
se se tratam do x_min e x_max, bem como do y_min e y_max.
Para serem agrupados quanto à classe, os sinais necessitam de possuir a
mesma forma geométrica e cor das suas bordas. Contudo, apesar desta
semelhança que os caracteriza, o seu padrão varia consideravelmente ora não
se tratasse do elemento que os distingue. Nos ANEXOS 1, 2, 3, 4 e 5 estão
representados os gráficos que mostram a diferença entre as figuras padrão de
cada uma das cinco classes. Neles são visíveis a quantidade de píxeis que
formam a figura padrão bem como a posição máxima e mínima das
coordenadas x e y. A relação entre o número de píxeis que formam o padrão
de cada sinal e a sua área de contorno também se encontra ilustrada nos
gráficos.
5.4. Correlação de fase
Visto que os sinais já estão devidamente identificados quanto à sua
classe e dado que o seu padrão já foi estudado, é necessário aplicar um
método que permita comparar os sinais com uma base de dados. Inúmeros
métodos foram até à data estudados, como a implementação do modelo
Figura 5.17 - Análise ao posicionamento da figura padrão
CAPÍTULO 5 - Reconhecimento
64 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
SIFT/SURF [11], a correspondência de padrões “template matching” [8], bem
como o uso de redes neuronais [13] [26].
Neste projecto, decidiu-se estudar o método de correlação de fase, que
permite verificar a semelhança entre duas imagens. Dadas duas imagens do
mesmo tamanho, sendo uma o sinal detectado e classificado e a outra a
imagem pertencente à base de dados, é calculada a transformada discreta de
Fourier (DFT) das duas imagens, resultado Ga e Gb.
(5.1)
(5.2)
Em seguida é calculado o espectro de potência cruzada (cross-power
Spectrum) usando a equação (5.3):
(5.3)
Onde G*b é o complexo conjugado de G. Posteriormente é obtida a
correlação de fase aplicando a transformada inversa de Fourier (IFT).
(5.4)
O resultado é uma matriz em que cada elemento possui valores entre
zero e um. A localização do maior valor corresponde ao movimento de
translação da primeira imagem para a segunda.
Para a obtenção da DFT das imagens, e como medida a diminuir o tempo
de processamento, foi utilizada a biblioteca FFTW (Fastest Fourier Transform in
the West) disponível em [27] em virtude das funções DFT disponibilizadas pela
biblioteca OpenCV.
Para melhor compreensão deste método, na Figura 5.18 poderá ser visto
o resultado prático da implementação do método da correlação de fase. Estão
presentes três comparações distintas onde a refêrencia mantem-se e a imagem
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 65
de entrada varia. No segundo exemplo ocorre uma simulação de ruído e no
terceiro está o exemplo de uma imagem deslocada.
(a)
(b)
(c)
Na Figura 5.18(a) o resultado obtido é de 1, no ponto (0,0) o que significa
que as imagens são iguais. Já na Figura 5.18(b), a imagem de entrada possui
um pouco de ruído, acabando por o valor máximo obtido ser de
aproximadamente 0.5. No caso da Figura 5.18(c), o valor máximo é de 0.3357
no ponto (30,17). Isto significa que a imagem sofreu um deslocamento de 30
píxeis na horizontal e de 17 píxeis na vertical.
As imagens usadas para esta demonstração nada têm a ver com as
imagens que são extraídas em ambiente livre. Para além do ruído inerente à
captura das imagens, os sinais estão longe da perfeição. Mesmo após ter-se
eliminado todos os píxeis que envolvem o redor do sinal, esta imagem quando
comparada com o mesmo sinal na base de dados, através da correlação de
fase, o resultado obtido está longe do esperado (ver Figura 5.19).
Figura 5.18 - Correlação de fase (a) normal, (b) com ruído, (c) com deslocamento
Valor Máximo = 1.000 ; (0,0)
Valor Máximo = 0.5232; (0,0)
Valor Máximo = 0.3357; (30,17)
CAPÍTULO 5 - Reconhecimento
66 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Como tentativa de melhorar o rendimento do método, a imagem
capturada foi alterada no sentido de aumentar as semelhanças com a imagem
de referência, sem nunca alterar o tipo de sinal. Foram efectuadas duas
segmentações por cor: A primeira visa em colocar a borda do sinal da mesma
cor da borda presente no sinal de referência, como evidencia a Figura 5.20(b);
A segunda, usa o mesmo método mas com vista a realçar a figura padrão do
interior do sinal, isto é, o fundo foi colocado a branco “limpo” e o padrão a preto
também “limpo”, como pode ser visto Figura 5.20(c).
(a) (b) (c)
Como é visível na Figura 5.20, o sinal após o realce das características
tornou-se substancialmente mais parecido com a imagem da base de dados,
sem sofrer qualquer tipo de alteração nas propriedades informativas do sinal.
Aplicando novamente o método da correlação de fase, o resultado
praticamente não se alterou, estando ainda bastante longe da perfeição (valor
máximo = 1).
Figura 5.19 - Correlação de fase
Figura 5.20 - Exemplo de como realçar as características de um sinal
Figura 5.21 - Correlação de fase
Valor Máximo = 0.1619
Valor Máximo = 0.1848
CAPÍTULO 5 - Reconhecimento
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 67
Apesar de este valor não estar perto do esperado, se a comparação com
os outros sinais obtivesse um valor inferior, este método poderia mesmo assim
ser aplicado. Contudo, tal não se verifica como é possível visualizar na Figura
5.22:
(a)
(b)
(c)
Para o caso da Figura 5.22(b) e Figura 5.22(c), os valores conseguem ser
superiores aos sinais com a mesma figura padrão.
Como medida a melhorar o índice de fiabilidade deste método, uma das
soluções passa pela criação de uma base de dados com imagens reais o que
tornaria, à partida, a semelhança entre as imagens a serem comparadas
substancialmente maior.
Caso a manipulação das imagens não fosse possível, esta solução
implicaria um vasto trabalho de campo dado que o sistema deverá fazer um
registo de todos os sinais e com isso construir uma base da dados para que
estas imagens sejam mais semelhantes às futuramente capturadas.
Figura 5.22 - Correlação de fase de diversos sinais
Valor Máximo = 0.0913
Valor Máximo = 0.2385
Valor Máximo = 0.3376
CAPÍTULO 5 - Reconhecimento
68 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
5.5. Conclusões
A análise da figura padrão, mais concretamente da sua forma e do seu
posicionamento revelou-se bastante útil no sentido de reduzir o conjunto de
sinais presente em cada classe. No entanto, os sinais necessitam de estar em
perfeitas condições e não possuir qualquer tipo de acto de vandalismo sob
pena de inviabilizar este método. Com vista a um melhoramento dos resultados
obtidos através deste método, um aumento da qualidade da imagem poderá
ser suficiente.
O método da correlação demonstrou não ser o melhor método a ser
aplicado num sistema de detecção e reconhecimento de sinais de trânsito em
tempo real. O facto de a imagem adquirida pela câmara em ambiente livre
possuir bastantes diferenças em relação à imagem de referência, provoca um
decréscimo na fiabilidade deste método. Contudo, o seu uso na área da
condução autónoma, onde os ambientes são fechados e os sinais são muito
próximos dos contidos na base de dados, poderá motivar resultados mais
satisfatórios.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 69
CAPÍTULO 6
Conclusões e Trabalhos Futuros
6.1. Conclusões
Esta tecnologia tem a particularidade de fornecer ao condutor uma
informação permanentemente actualizada, ao invés de um GPS que possui
informação sobre a sinalização memorizada. Caso ocorra a colocação de uma
nova sinalização, ou até mesmo caso um determinado troço da via tenha sido
alterado ou esteja em obras e possua sinalização diferente como por exemplo,
novos limites de velocidade, o sistema permite informar o condutor dessa nova
sinalização e não a sinalização usual naquela estrada.
Reconhecer um sinal em tempo real mostrou ser uma tarefa bastante
complexa. Existem inúmeras adversidades inerentes a um ambiente livre. Só
trabalhando neste tema é que se tem a percepção da quantidade de
dificuldades que surgem. Como que se não bastasse, todos os métodos e
técnicas usadas para colmatar estas dificuldades e não só, são suficientemente
rápidos e eficazes ao ponto de conseguir primeiro detectar e depois reconhecer
o sinal em fracções de segundo.
A iniciativa de dividir os sinais em classes conforme a sua cor e forma
mostrou ser bastante útil. Com esta divisão, é possível agrupar os sinais com
as mesmas formas, mesmo sendo de categorias diferentes, para um melhor e
mais eficaz reconhecimento. Contudo, o reconhecimento mostrou ser a fase
mais exigente em termos de tempo computacional. Para minimizar este
problema, procedeu-se a uma análise do padrão de cada sinal bem como a sua
disposição. Sem despender muito tempo, esta estratégia permite reduzir
significativamente a lista de candidatos a sinal, o que permite melhoras
significativas no desempenho do sistema.
A velocidade a que o automóvel circula determina fortemente a
CAPÍTULO 6 – Conclusões e Trabalhos Futuros
70 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
performance do sistema. Quanto mais rápido o automóvel circular, mais difícil
se torna a detecção de sinais de trânsito e consecutivamente mais complexo
será o seu reconhecimento. Para velocidades até os 50km/h, o sistema
demonstrou ser bastante fiável embora não detecte a totalidade dos sinais,
muito por culpa da sua deficiente localização e estado de conservação.
Contudo, sinais que se apresentavam correctamente colocados e bem visíveis
foram detectados e classificados de forma correcta, na ordem dos 100% de
eficácia.
Estabelecer como meta para conclusão desta tese o reconhecimento da
totalidade dos sinais de trânsito em tempo real mostrou ser uma tarefa bastante
complexa e um pouco ambiciosa. Até à data, apesar de diversas pesquisas
proporem inúmeras soluções para melhorar a eficiência de sistemas desta
natureza, detectar e reconhecer sinais de trânsito em tempo real ainda
demonstra ser uma tarefa verdadeiramente desafiadora. E por alguma razão,
actualmente, dado o avanço da tecnologia, ainda não existe nenhum automóvel
comercializado a reconhecer a totalidade dos sinais presentes nas estradas
portuguesas.
Este sistema revela-se uma mais valia para o condutor de um automóvel
e um elemento essencial na condução autónoma. Permitirá a redução de
acidentes rodoviários na medida em que se trata de um elemento activo na
condução capaz de alertar o condutor da presença de um sinal, o que fará com
que este, tomando conhecimento da sua presença redobre a atenção.
6.2. Trabalhos futuros
Com base no desenvolvimento deste sistema, como trabalho futuro
sugere-se a utilização de uma segunda câmara direccionada para o lado
esquerdo da via, nomeadamente em vias de um único sentido, que
sincronizada com a já existente permita recolher um maior número de sinais de
trânsito.
CAPÍTULO 6 – Conclusões e Trabalhos Futuros
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 71
É também necessário elaborar um algoritmo capaz de perceber o interior
do sinal para o seu correcto reconhecimento. O método utilizado provou
fornecer dados interessantes mas não suficientemente fiáveis, e por isso,
deverá ser redesenhado.
Possivelmente, a utilização de redes neuronais a partir da separação de
classes possa ser mais efectivamente utilizada pois a quantidade de sinais a
reconhecer é substancialmente menor dada a triagem efectuada. Dessa forma,
o treino da rede poderá ser reforçado com um número maior de variantes aos
sinais, em diversas condições de visualização.
CAPÍTULO 6 – Conclusões e Trabalhos Futuros
72 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 73
Referências
1. Monteiro, V., O Código da Estrada. 2a ed. Segurança Rodoviária. 2002, Lisboa. 307.
2. Opel Insignia: http://www.opel.pt/veiculos/opel-gama/carros/opel-insignia-sports-tourer/destaques/seguranca.html.
3. Opel Astra: http://www.opel.pt/veiculos/opel-gama/carros/new-astra-hatchback/destaques/seguranca.html.
4. G. Piccioli, E.D.M., P. Parodi, M. Campani, Robust road sign detection and recognition from image sequences, in Proceedings of the Intelligent Vehicles '94 Symposium. p. 278 - 283.
5. Hasan Fleyeh, M.D., Road and Traffic Sign Detection and Recognition, in In Proceedings of the 10th EWGT Meeting and 16th Mini-EURO Conference. 2005. p. 644-653.
6. Sousa, A.M.R.d., Localização Automática de Objectos em Sequências de Imagens. 2005, Universidade do Minho: Braga. p. 15-81.
7. Hatzidimos, J., Automatic Traffic Sign Recognition in Digital Images, in Conference on Theory and Applications of Mathematics and Informatics. 2004: Grecia. p. 174-184.
8. Shneier, M., Road Sign Detection and Recognition, in IEEE Computer Society International Conference on Computer Vision and Pattern Recognition. 2005.
9. M. A. Souki, L.B., M. Abid, An embedded system for real-time traffic sign recognizing, in 3rd International Design and Test Workshop. 2008. p. 273-276.
10. Paulo, C.F.M., Detection and Recognition of Traffic Signs 2007, Universidade Técnia de Lisboa: Lisboa. p. 70.
11. FeiXiang Ren, J.H., Ruyi Jiang, Reinhard Klette, General Traffic Sign Recognition by Feature Matching, in 24th International Conference International Conference Image and Vision Computing New Zealand 2009: Wellington. p. 409 - 414.
12. Wen-Yen Wu, T.-C.H., Ching-Sung Lai, Extracting Road Signs using the Color Information. World Academy of Science, Engineering and Technology, 2007(32): p. 282-286.
Referências
74 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
13. Miguel Ángel García-Garrido, M.Á.S., Ernesto Martín-Gorostiza, Fast Traffic Sign Detection and Recognition Under Changing Lighting Conditions, in IEEE Intelligent Transportation Systems Conference. 2006: Toronto, Canadá. p. 811 - 816.
14. Umbaugh, S.E., Automatic Color Segmentation Algorithms - With Application to Skin Tumor Feature Identification, in IEEE Engineering in Medicine and Biology. 1993. p. 75-82.
15. Auranuch Lorsakul, J.S., Traffic Sign Recognition for Intelligent Vehicle/Driver, in 4th International Conference on Ubiquitous Robots and Ambient Intelligence. 2007.
16. L. O. Lima, M.G.F.C., C.F. F. Costa Filho, Nova Proposta de Extracção de Características da Íris Utilizando o Espaço HSI, in 21º Congresso Brasileiro de Engenharia Biomédica.
17. Infopédia: http://www.infopedia.pt/$centro-de-massa.
18. Shojania, H., Real-time Traffic Sign Detection, in IEEE Intelligent Vehicles Symposium 2000. 2000. p. 308-313.
19. Shojania, H., Real-time Traffic Sign Detection. 2000. p. 1-56.
20. Rachid Belaroussi, J.P.T., Angle Vertex and Bisector Geometric Model for Triangular Road Sign Detection, in Workshop on Applications of Computer Vision. 2009. p. 1 - 7
21. Jung-Chiehhsien, Y.S.L., Shu-Yuan Chen, Road Sign Detection and Recognition Using Hidden. Health and Information Sciences, 2006. 1(1): p. 85-100.
22. Aryuanto, K.Y., F. Yudi Limpraptono, Intelligent Machine Vision System for Road Traffic Sign Recognition. 2008: p. E-9 - E-14.
23. A P Ashbrook, N.A.T., P I Rockett, Multiple shape recognition using pairwise geometric histogram based algorithms, in Fifth International Conference on Image Processing and its Applications. 1995: Edinburgh p. 90-94.
24. Sajjad Baloch, H.K., Object Recognition Through Topo-Geometric Shape Models Using Error-Tolerant Subgraph Isomorphisms. IEEE Transactions on Image Processing, 2009. 19(5): p. 1191 - 1200
25. K.W. Kwok, K.C.L., Recognition of Curved Shapes using Geometric Invariants, in Fourth International Conference on Signal Processing Proceedings. 1998: Beijing. p. 1096 - 1099.
26. Alves, F.O., Reconhecimento Inteligente de Sinais de Trânsito Brasileiros, in Centro de Ciências Exactas e Tecnológicas. 2004, Universidade do Vale do Rio dos Sinos: São Leopoldo. p. 74.
Referências
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 75
27. Fastest Fourier Transform in the West: http://www.fftw.org.
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 76
Anexo 1
Forma: Triangular
Cor: Vermelha
Tipos de sinais: Perigo, Cedência de Passagem
Total de sinais: 48
Sinal Nome sinal
Nº píxeis pretos
Área do contorno
Área / píxeis pretos
X min (%)
X max (%)
Y min (%)
Y max (%)
1 A1a 416 4210 10,12 32,61 65,22 44,44 85,19
2 A1b 417 4210 10,1 33,7 66,3 44,44 85,19
3 A1c 575 4210 7,32 29,35 61,96 39,51 85,19
4 A1d 574 4210 7,33 36,96 69,57 39,51 85,19
5 A2a 623 4210 6,76 21,74 76,09 67,9 86,42
6 A2b 528 4210 7,97 25 75 69,14 86,42
7 A2c 659 4210 6,39 20,65 79,35 67,9 86,42
8 A3a 1129 4210 3,73 15,22 83,7 40,24 86,59
9 A3b 1131 4210 3,72 15,22 83,7 40,24 86,59
10 A4a 549 4210 7,67 33,7 64,13 40,74 85,19
11 A4b 524 4210 8,03 34,78 59,78 41,98 86,42
12 A4c 526 4210 8 40,22 65,22 41,46 85,37
13 A5 481 4210 8,75 26,09 66,3 35,8 85,19
14 A6 619 4210 6,8 17,39 81,52 45,68 85,19
15 A7a 570 4210 7,39 21,74 78,26 50,62 86,42
16 A7b 568 4210 7,41 20,65 78,26 51,22 85,37
17 A8 714 4210 5,9 17,2 79,57 46,91 85,19
18 A9 1029 4210 4,09 16,3 81,52 35,37 85,37
19 A10 674 4210 6,25 17,39 82,61 46,34 85,37
20 A11 453 4210 9,29 32,61 67,39 42,68 85,37
21 A12 327 4210 12,87 34,78 75 46,34 84,15
22 A13 619 4210 6,8 26,09 72,83 48,15 86,42
23 A14 527 4210 7,99 28,26 70,65 47,56 84,15
24 A15 688 4210 6,12 27,17 64,13 37,8 85,37
25 A16a 842 4210 5 20,65 79,35 30,86 86,42
26 A16b 459 4210 9,17 36,96 60,87 31,71 85,37
Anexo 1
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 77
27 A17 741 4210 5,68 23,91 75 33,33 86,42
28 A18 571 4210 7,37 28,26 64,13 40,74 86,42
29 A19a 526 4210 8 29,35 70,65 54,32 86,42
30 A19b 466 4210 9,03 34,78 81,52 33,33 85,19
31 A20 833 4210 5,05 31,52 68,48 48,15 86,42
32 A21 343 4210 12,27 32,61 67,39 46,34 85,37
33 A22 422 4210 9,98 40,22 57,61 32,1 86,42
34 A23 624 4210 6,75 34,78 78,26 44,44 85,19
35 A24 490 4210 8,59 33,7 65,22 49,38 85,19
36 A25 466 4210 9,03 34,78 64,13 40,74 86,42
37 A26 776 4210 5,43 28,26 69,57 56,1 86,59
38 A27 1051 4210 4,01 21,74 77,17 41,98 86,42
39 A28 630 4210 6,68 23,91 76,09 53,66 86,59
40 A29 332 4210 12,68 44,57 54,35 27,16 86,42
41 A30 557 4210 7,56 35,48 74,19 49,38 86,42
42 A31 403 4210 10,45 34,78 63,04 48,15 85,19
43 B7 467 4210 9,01 31,31 71,72 42,53 87,36
44 B8 698 4210 6,03 33,33 66,67 39,08 86,21
45 B9a 630 4210 6,68 32,32 56,57 39,08 86,21
46 B9d 625 4210 6,74 41,84 66,33 39,08 86,21
47 B9c 613 4210 6,87 32,65 57,14 39,08 86,21
48 B9d 613 4210 6,87 41,84 66,33 39,08 86,21
Representação da posição da coordenada mínima de x:
Representação da posição da coordenada máxima de x:
0%
5%
10%
15%
20%
25%
30%
35%
40%
45%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
X_min (%)
Anexo 1
78 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Representação da posição da coordenada mínima de y:
Representação da posição da coordenada máxima de y:
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
X_max (%)
0%
10%
20%
30%
40%
50%
60%
70%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
Y_min (%)
82%
83%
84%
85%
86%
87%
88%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
Y_max (%)
Anexo 1
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 79
Representação da relação entre o número de píxeis e a área de
contorno:
0%
2%
4%
6%
8%
10%
12%
14%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
Área / pixeis pretos
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 80
Anexo 2
Forma: Circular
Cor: Vermelha
Tipos de sinais: Proibição, Cedência de Passagem
Total de sinais: 44
Sinal Nome sinal
Nº píxeis pretos
Área do contorno
Área / píxeis pretos
X_min (%)
X_max (%)
Y_min (%)
Y_max (%)
1 C1 0 5172 - 0 0 0 0
2 C2 0 5172 - 0 0 0 0
3 C3a 968 5172 5,34 21,95 78,05 29,27 69,51
4 C3b 1413 5172 3,66 25,61 74,39 26,83 71,95
5 C3c 988 5172 5,23 19,51 79,27 34,15 64,63
6 C3d 988 5172 5,23 17,07 80,49 24,39 79,27
7 C3e 591 5172 8,75 20,73 76,83 29,27 69,51
8 C3f 532 5172 9,72 17,07 80,49 31,71 65,85
9 C3g 555 5172 9,32 17,07 80,49 32,93 65,85
10 C3h 945 5172 5,47 19,51 79,27 26,83 71,95
11 C3i 666 5172 7,77 20,73 79,27 32,93 65,85
12 C3j 403 5172 12,83 18,29 80,49 32,93 65,85
13 C3l 638 5172 8,11 32,93 65,85 17,07 81,71
14 C3m 887 5172 5,83 23,17 74,39 20,73 78,05
15 C3n 1046 5172 4,94 19,51 78,05 31,71 67,07
16 C3o 1040 5172 4,97 12,05 86,75 31,71 65,85
17 C3p 492 5172 10,51 28,05 70,73 23,17 75,61
18 C3q 647 5172 7,99 29,27 70,73 23,17 79,27
19 C3r 246 5172 21,02 23,17 75,61 51,22 73,17
20 C4a 465 5172 11,12 19,51 81,71 24,39 73,17
21 C4b 508 5172 10,18 18,29 80,49 29,27 73,17
22 C4c 540 5172 9,58 18,29 86,59 14,63 70,73
Anexo 2
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 81
23 C4d 452 5172 11,44 16,87 80,72 29,27 70,73
24 C4e 519 5172 9,97 13,25 86,75 12,2 84,15
25 C4f 484 5172 10,69 18,29 85,37 15,85 70,73
26 C5 595 5172 8,69 24,39 75,61 23,17 75,61
27 C6 505 5172 10,24 20,73 79,27 34,15 64,63
28 C7 1083 5172 4,78 29,73 78,05 30,49 73,17
29 C8 525 5172 9,85 10,98 89,02 39,02 59,76
30 C9 690 5172 7,5 18,29 80,49 10,98 87,8
31 C10 610 5172 8,48 9,76 87,8 29,27 68,29
32 C11a 532 5172 9,72 31,33 81,93 30,49 80,49
33 C11b 409 5172 12,65 17,07 68,29 30,49 80,49
34 C12 573 5172 9,03 31,71 68,29 23,17 74,39
35 C13 878 5172 5,89 15,85 82,93 30,49 67,07
36 C14a 272 5172 19,01 52,44 81,71 39,02 59,76
37 C14b 207 5172 24,99 54,88 79,27 45,12 63,41
38 C14c 308 5172 16,79 47,56 78,05 41,46 62,2
39 C15 0 5172 - 0 0 0 0
40 C16 0 5172 - 0 0 0 0
41 C17 419 5172 12,34 17,07 82,93 33,73 61,45
42 C18 768 5172 6,73 17,07 81,71 30,49 65,85
43 C19 745 5172 6,94 19,51 80,49 32,93 65,85
44 B5 378 5172 13,68 31,96 44,33 22,68 76,29
Representação da posição da coordenada mínima de x:
Representação da posição da coordenada máxima de x:
0
0,1
0,2
0,3
0,4
0,5
0,6
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
X_min (%)
Anexo 2
82 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Representação da posição da coordenada mínima de y:
Representação da posição da coordenada máxima de y:
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
X_max (%)
0
0,1
0,2
0,3
0,4
0,5
0,6
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
Y_min (%)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
Y_max (%)
Anexo 2
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 83
Representação da relação entre o número de píxeis e a área de
contorno:
0%
5%
10%
15%
20%
25%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
Área / pixeis pretos
84 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Anexo 3
Forma: Circular
Cor: Azul
Tipos de sinais: Obrigação
Total de sinais: 35
Sinal Nome sinal
Nº píxeis pretos
Área do contorno
Área / píxeis pretos
X_min (%)
X_max (%)
Y_min (%)
Y_max (%)
1 D1a 838 6320 7,54 8,7 90,22 33,33 65,56
2 D1b 834 6320 7,58 9,78 91,3 33,33 65,56
3 D1c 872 6320 7,25 33,7 66,3 8,89 90
4 D1d 986 6320 6,41 11,96 70,65 13,33 87,78
5 D1e 970 6320 6,52 26,09 83,7 11,11 86,67
6 D2a 1373 6320 4,60 6,52 76,09 6,67 91,11
7 D2b 1367 6320 4,62 22,83 93,48 6,67 91,11
8 D2c 1163 6320 5,43 5,43 91,3 17,78 87,78
9 D3a 850 6320 7,44 17,39 78,26 17,78 77,78
10 D3b 845 6320 7,48 21,74 81,52 17,78 77,78
11 D4 1627 6320 3,88 9,78 93,48 10 90
12 D5a 1129 6320 5,60 13,04 77,17 33,33 65,56
13 D5b 1851 6320 3,41 26,09 72,83 17,78 75,56
14 D6 905 6320 6,98 10,87 89,13 33,33 64,44
15 D7a 423 6320 14,94 11,96 89,13 28,89 70
16 D7b 1339 6320 4,72 30,43 80,43 8,89 87,78
17 D7c 1454 6320 4,35 13,04 82,61 10 82,22
18 D7d 1603 6320 3,94 13,04 86,96 27,78 73,33
19 D7e 699 6320 9,04 20,65 81,52 4,44 90
20 D7f 544 6320 11,62 6,12 87,76 30,21 67,71
21 D8 858 6320 7,37 19,57 83,63 28,21 68,71
22 D9 2122 6320 2,98 21,74 80,57 10,5 92,58
23 D10 1160 6320 5,45 17,39 84,65 17,79 77
24 D11a 895 6320 7,06 11,96 86,96 31,11 58,89
25 D11b 973 6320 6,50 26,09 72,83 20,02 75,56
26 D12 499 6320 12,67 10,87 89,13 33,33 64,44
Anexo 3
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 85
27 D13a 334 6320 18,92 8,7 91,3 26,67 71,11
28 D13b 891 6320 7,09 26,09 76,09 8,89 86,67
29 D13c 846 6320 7,47 11,96 81,52 13,33 84,44
30 D13d 984 6320 6,42 10,87 86,96 30 76,67
31 D13e 683 6320 9,25 27,17 82,61 4,44 87,78
32 D13f 423 6320 14,94 3,26 91,3 37,78 70
33 D14 445 6320 14,20 19,57 82,61 28,89 68,89
34 D15 2045 6320 3,09 18,48 80,43 6,67 94,44
35 D16 521 6320 12,13 14,13 81,52 12,22 62,22
Representação da posição da coordenada mínima de x:
Representação da posição da coordenada máxima de x:
Representação da posição da coordenada mínima de y:
0%
5%
10%
15%
20%
25%
30%
35%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
X_min (%)
0%
20%
40%
60%
80%
100%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
X_max (%)
Anexo 3
86 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Representação da posição da coordenada máxima de y:
Representação da relação entre o número de píxeis e a área de
contorno:
0%
5%
10%
15%
20%
25%
30%
35%
40%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
Y_min (%)
0%
20%
40%
60%
80%
100%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
Y_max (%)
Anexo 3
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 87
0%
5%
10%
15%
20%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
Área / pixeis pretos
88 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Anexo 4
Forma: Rectangular
Cor: Azul
Tipos de sinais: Informação
Total de sinais: 30
Sinal Nome sinal
Nº píxeis pretos
área do contorno
Área / píxeis pretos
X_min (%)
X_max (%)
Y_min (%)
Y_max (%)
1 H9 0 60019 - 0 0 0 0
2 H10 0 60019 - 0 0 0 0
3 H11 2405 60019 24,96 38,81 60,7 30,79 68,87
4 H12 3602 60019 16,66 23,88 75,12 30,46 69,87
5 H13a 5876 60019 10,21 20,9 73,63 32,78 90,4
6 H13b 4554 60019 13,18 16,92 59,7 37,75 68,87
7 H14a 3895 60019 15,41 17,82 81,19 33,33 66,67
8 H14b 5128 60019 11,70 18,41 77,11 42,38 64,57
9 H14c 4460 60019 13,46 26,87 70,65 26,49 71,19
10 H15 3513 60019 17,08 24,38 75,12 34,11 72,85
11 H16a 5835 60019 10,29 21,78 78,22 31,68 68,32
12 H16b 5448 60019 11,02 21,39 78,11 31,46 68,21
13 H16c 6102 60019 9,84 18,91 81,09 31,79 68,54
14 H16d 0 60019 - 0 0 0 0
15 H17 3957 60019 15,17 20,9 78,111 31,13 68,21
16 H18 4160 60019 14,43 30,69 69,31 31,02 68,32
17 H19 5147 60019 11,66 19,4 79,6 38,41 60,6
18 H20a 3771 60019 15,92 20,9 79,1 41,06 57,62
19 H20b 3802 60019 15,79 21,39 79,6 38,08 60,93
20 H21 4694 60019 12,79 17,91 82,09 27,48 71,52
21 H22 1707 60019 35,16 27,87 72,14 32,45 67,22
22 H23 5341 60019 11,24 20,4 79,1 15,56 49,01
23 H24 0 60019 - 0 0 0 0
24 H25 0 60019 - 0 0 0 0
Anexo 4
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 89
Representação da posição da coordenada mínima de x:
Representação da posição da coordenada máxima de x:
Representação da posição da coordenada mínima de y:
0%
5%
10%
15%
20%
25%
30%
35%
40%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
X_min (%)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
X_max (%)
25 H26 0 36539 - 0 0 0 0
26 H27 0 36539 - 0 0 0 0
27 H34 2725 36539 13,41 14,65 83,44 38,56 58,9
28 H38 0 36539 - 0 0 0 0
29 H39 0 36539 0 0 0 0
30 H41 2480 36788 14,83387097 22,64 76,1 33,47 66,11
Anexo 4
90 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Representação da posição da coordenada máxima de y:
Representação da relação entre o número de píxeis e a área de
contorno:
0%
5%
10%
15%
20%
25%
30%
35%
40%
45%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
Y_min (%)
0%
20%
40%
60%
80%
100%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
Y_max (%)
Anexo 4
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 91
0%
5%
10%
15%
20%
25%
30%
35%
40%
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
Área / pixeis pretos
92 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Anexo 5
Forma: Quadrada
Cor: Azul
Tipos de sinais: Informação, Cedência de Passagem
Total de sinais: 14
Sinal Nome sinal
Nº píxeis pretos
Área do contorno
Área / píxeis pretos
X_min (%)
X_max (%)
Y_min (%)
Y_max (%)
1 H1a 1796 8251 4,59 27,51 80,43 11,83 88,17
2 H1b 1565 8949 5,72 6,25 93,75 8,33 90,63
3 H2 2209 8949 4,05 18,75 80,21 10,42 88,54
4 H3 1198 8242 6,88 28,26 70,65 8,6 92,47
5 H4 736 8285 11,26 43,48 56,52 26,88 87,1
6 H5 2187 8255 3,77 20,65 79,35 9,68 90,32
7 H6 1620 8242 5,09 10,87 92,39 24,73 75,27
8 H7 2130 8258 3,88 5,43 93,48 13,98 88,17
9 H8a 1143 8321 7,28 26,09 80,43 9,68 90,32
10 H8b 1038 8314 8,01 19,57 79,35 5,38 94,62
11 H36 1800 8965 4,98 20,83 78,13 10,42 88,54
12 H37 792 8969 11,32 12,5 86,46 27,08 71,88
13 H40 1084 8969 8,27 22,92 76,04 10,42 88,54
14 B6 532 8966 16,85 62,5 73,96 16,67 84,38
Representação da posição da coordenada mínima de x:
Anexo 5
Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real 93
Representação da posição da coordenada máxima de x:
Representação da posição da coordenada mínima de y:
0%
10%
20%
30%
40%
50%
60%
70%
1 2 3 4 5 6 7 8 9 10 11 12 13 14
X_min (%)
0%
20%
40%
60%
80%
100%
1 2 3 4 5 6 7 8 9 10 11 12 13 14
X_max (%)
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Y_min (%)
Anexo 5
94 Sistema de Detecção e Reconhecimento de Sinais de Trânsito em Tempo Real
Representação da posição da coordenada máxima de y:
Representação da relação entre o número de píxeis e a área de
contorno:
0%
20%
40%
60%
80%
100%
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Y_max (%)
0%
2%
4%
6%
8%
10%
12%
14%
16%
18%
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Área / pixeis pretos