Baixe o app para aproveitar ainda mais
Prévia do material em texto
Detecção de avanço de semáforo vermelho utilizando câmera embarcada em veículos automotores Rafael H. Brasil , Alexei M. C. Machado (Orientador) Programa de Pós-graduação em Engenharia Elétrica Pontifícia Universidade Católica de Minas Gerais (PUC-MG) rafaelhbrasil@yahoo.com.br, alexei@pucminas.br Resumo – Com a dificuldade de se implantar detectores de avanço em todos os semáforos em uma cidade, há necessidade de se proporem novas formas de detectar esses avanços. Este trabalho propõe o monitoramento do veículo diante de semáforos a partir de uma câmera embutida no próprio veículo. O método proposto para o problema converte as imagens da câmera para o espaço HSV e busca cores existentes nas luzes dos semáforos. Identificado e confirmado o semáforo vermelho, ele é rastreado na imagem até que desapareça. O método é testado em um vídeo de benchmark. Palavras-chave: trânsito, semáforo, avanço de semáforo. 1. Introdução A indústria automotiva tem investido em sistemas de transporte mais inteligentes com o objetivo de auxiliar o condutor a pensar em tempo hábil, tomar decisões e, por conseguinte, ajudar a poupar vi- das e recursos. Assim, um sistema capaz de de- tectar a sinalização pode, de alguma forma, melho- rar diretamente a segurança desses condutores. A ideia principal é dar ao veículo capacidade de per- cepção, de modo que ele possa interpretar o que há à sua volta. A detecção de sinalização de trânsito e tráfego ganhou mais importância com o intuito de garantir mais segurança na condução de veícu- los motorizados, através do suporte ao condutor, e no desenvolvimento de veículos autônomos. Este trabalho propõe como problema a detecção e reconhecimento de avanço de semáforo vermelho com imagens capturadas por uma câmera embar- cada no próprio veículo. Propõe também um método de realizar a detecção de avanço baseada no deslocamento dos semáforos dentro da imagem capturada. Na próxima seção, algumas técnicas de detecção e reconhecimento de sinalização de trân- sito são apresentadas. A seção 3 detalha o método proposto, seguido de experimentos e conclusão. 2. Trabalhos Relacionados Duas formas muito comuns para se detectar e re- conhecer sinais de trânsito através de imagens são a segmentação com base na cor e a segmentação com base em bordas. As técnicas que utilizam cores ten- dem a ter melhor controle sobre a iluminação. Um exemplo utilizando o espaço de cores HSV é des- crito por Fleyeh [4]. Os trabalhos de Fairfield e Urmson, Shen et al. e Levinson et al. [3, 8, 6] tratam da detecção e re- conhecimento de semáforos de trânsito. Fairfield e Urmson extraem, de uma imagem de 5 megapi- xels, uma região de 2040 x 1080, resolução esta su- ficiente para permitir detecção a 150m do veículo. Esta distância é considerada razoável para se parar o veículo a uma velocidade de 90 km/h. Partindo do pressuposto de que semáforos costumam ser locali- zados em cruzamentos, Fairfield e Urmson e Levin- son et al. utilizam consultas geoespaciais, através da API do Google Maps, para descartar imagens dis- tantes de cruzamentos. Todavia, essa regra não se aplica no Brasil, onde, em vários lugares, é comum se encontrarem semáforos em uma simples traves- sia de pedestres. Além disso, o sistema se tornaria altamente dependente da conexão com o GPS. Os resultados dessa abordagem, no entanto, chegam a apresentar uma precisão superior a 99% para alguns vídeos. Diferentemente dos trabalhos de Fairfield e Urm- son e Shen et al., em que a câmera está localizada no veículo, um método de detecção de avanço de sinal vermelho é proposto por Yung e Lai [10] e por Luo et al. [7], com a câmera localizada em um ponto fixo da via onde são visíveis o semáforo, a faixa de retenção e os carros de passagem. O método de Yung e Lai identifica o semáforo mais próximo (o maior na imagem) e o utiliza no processamento. A detecção é feita com base na cor: branca para faixa de retenção e vermelha, amarela e verde para o semáforo. Os resultados dos testes alcançaram 100% de acerto nos testes. Luo et al. realiza os testes em uma interseção com direita livre, ou seja, onde o semáforo não é válido para convergência à direita (somente para os veículos que convergem à esquerda ou seguem em frente). Os resultados apre- sentam precisão um pouco inferior ao de Fairfield e Urmson, em torno dos 90%. O rastreamento do semáforo é tratado como foco principal por Gong et al. [5] e por Yelal et al. [9]. Gong et al. utiliza um método já existente chamado Camshift [1], enquanto Yelal et al. propõe um novo método. Gong et al. e Fleyeh utilizam espaço de cores HSV para buscar possíveis semáforos, apli- cam erosão e dilatação para reduzir ruídos e fazem o reconhecimento com algoritmo baseado em apren- dizado de máquina. Por fim, o semáforo reconhe- cido é rastreado na imagem usando Camshift. O método proposto por Yelal et al. utiliza detecção das bordas da rodovia para estimar as possíveis posições de um semáforo, considerando a haste que o segura. O semáforo é detectado e rastreado sem se preocu- par com a cor da luz acesa no momento. 3. Metodologia Sistemas de detecção de avanço de semáforo ver- melho baseados em visão computacional usual- mente utilizam câmeras fixadas em pontos estratégi- cos da via, tornando-se parte do sistema de con- trole do trânsito naquele local. O problema proposto neste trabalho parte do princípio de que a câmera esteja embarcada no veículo, transformando o sis- tema em um modo de monitoramento do veículo e do condutor, não mais da via. Um sistema de detecção de semáforos deve ser robusto o suficiente para não se enganar com luzes vermelhas originadas de fontes diversas, como lanternas de veículos, outdoors, luzes na calçada, etc. Além disso, o desaparecimento de um semá- foro, independentemente de qual luz encontra-se acesa, não indica necessariamente que o veículo passou por ele. Pode ser apenas uma oclusão mo- mentânea. É indispensável a capacidade de se ras- trear um semáforo já detectado para evitar falsos positivos casos de oclusão momentânea. A técnica aplicada para a resolução do problema é dividida em três fases: Segmentação, Detecção e reconhecimento e Rastreamento. 3.1. Segmentação Uma câmera captura as imagens numa resolução mínima de 640x480, resolução considerada sufi- ciente para se detectar um semáforo próximo da câmera. O processo de segmentação converte a imagem para o espaço HSV, por ser este menos sensível à luminosidade ambiente, e busca por ele- mentos vermelhos, amarelos e verdes, de forma aproximadamente arredondada. Como a iluminação de semáforos segue um padrão de cor (aproxi- madamente os mesmos tons de vermelho, amarelo e verde), é possível concluir que os semáforos utilizam uma faixa estreita do espectro. Assim, assume-se que um vídeo consiste de imagens colo- ridas It, onde t é o tempo, definidas como It = ft(x, y) = ft,H(x, y)ft,S(x, y) ft,V (x, y) (1) onde (x, y) denota as coordenadas de um pixel e ft,H(x, y), ft,S(x, y) e ft,V (x, y) os valores de ma- tiz, saturação e brilho, respectivamente. As regiões vermelhas RR,K , amarelas RY,K e verdes RG,K são definidas como RR,k = { ft(x, y) : |ft,H(x, y)| < th e ft,V (x, y) > tv } RY,k = { ft(x, y) : ∣∣ft,H(x, y)− π3 ∣∣ < th e ft,V (x, y) > tv } RG,k = { ft(x, y) : ∣∣∣ft,H(x, y)− 2π3 ∣∣∣ < th e ft,V (x, y) > tv } (2) onde th, ts e tv são valores de tolerância definidos durante os testes. Essa tolerância per- mite pequenas variações na cor devido a condições adversas que modifiquem a percepção da cor. As fontes de luz identificadas neste passo são conside- radas como áreas de interesse. A Figura 1 mostra um exemplo de imagem onde a cor é extraída corre- tamente como informação relevante. Figure 1. Extração da cor verde como região de interesse. É comum surgirem pequenas distorções na cor que poderiam confundir o processo de segmentação. Assim, um passo de erosão seguido de dilatação re- duzem pequenos ruídos, de modo que regiões de interesse que não tenham uma área mínima (de- pendendo do tamanho da imagem)serão facilmente eliminados. 3.2. Detecção e reconhecimento As regiões de interesse definidas passam por uma série de filtros de validação, incluindo tamanho mí- nimo (5x5 pixels), altura mínima (parte superior da imagem) e forma (aproximadamente arredondada). Os parâmetros de validação foram definidos com base em testes. Nos casos em que mais de um semá- foro seja detectado, como na Figura 2, o mais alto é tido como mais próximo, desprezando-se os demais. Figure 2. Via com múltiplos semáforos. 3.3. Rastreamento Um semáforo detectado passa a ser controlado a cada imagem It subsequente. Ele deve, prefe- rencialmente, deslocar-se para posições superiores da imagem. A partir do deslocamento vertical do semáforo, é possível se estimar a continuidade da sua trajetória e, assim, inferir se o semáforo desa- pareceu da imagem ou se sofreu uma oclusão, seja ela parcial ou total. O rastreamento é realizado usando Camshift, a mesma técnica adotada por Bradski [1]. O algo- ritmo Camshift é aplicado nas proximidades da úl- tima detecção a procura da posição da luz, indepen- dentemente da cor. Se encontrada nova posição, reposiciona a região de interesse com base na nova posição da luz. Caso contrário, é necessário aguardar alguns quadros pelo retorno do semáforo. Se o semáforo não retornar, considera-se que já saiu do alcance da câmera, caracterizando um possível avanço de semáforo caso a luz presente seja ver- melha no momento do desaparecimento. O simples fato de a luz vermelha desaparecer não indica um avanço do sinal vermelho. A fase de rastreamento é responsável por definir se o semáforo saiu da área da imagem ou se desapareceu dentro dos limites da imagem. 4. Experimentos O problema proposto, bem como a proposta de solução, foram avaliados com base e um vídeo cedido por Charette [2], com 25 quadros por se- gundo, em resolução 640x480 pixels, 8 bits por pixel. O vídeo possui um total de 11.179 quadros. A taxa de atualização foi reduzida para 5 quadros por segundo, reduzindo-se o volume total para 2235 quadros. Os testes foram realizados em um com- putador Core i3 2.3 GHz, com 6GB de RAM e exe- cutando Ubuntu 14.04. O código foi implementado em C++ com uso da bibliteca OpenCV. O veículo portador da câmera passa, ao longo do video, por 8 semáforos vermelhos, mas não avança nenhum. Os semáforos vermelhos são detectados, mas há um grande número de falsos positivos, to- talizando 72 avanços de semáforo (3% dos quadros processados). O processamento do vídeo, de 8 mi- nutos e 49 segundos, levou cerca de 2 minutos e 17 segundos. A Figura 2 exemplifica um caso onde a câmera se aproxima do veículo da frente e, com isso, o semáforo vermelho desaparece verticalmente, ca- racterizando um falso positivo. 5. Conclusão Este trabalho propôs uma solução para o problema de detecção de avanço de semáforo vermelho com câmera embarcada no veículo. Regiões candidatas são avaliadas com base na cor e o semáforo en- contrado é rastreado. Não foi possivel determinar o acerto da detecção de avanço de semáforo, mas os falsos positivos puderam ser verificados em 3% dos quadros processados. Como trabalhos futuros, espera-se a realização de testes de campo com a câmera melhor posicionada (maior inclinação ver- tical) para evitar falsos positivos apenas pela proxi- midade com o semáforo. Serão realizados testes si- mulando avanços de semáforos através da alteração do posicionamento da câmera e testes comparativos com outras técnicas de detecção de avanço de semá- foro vermelho. References [1] Gary R Bradski. Computer vision face track- ing for use in a perceptual user interface. Intel Technology Journal Q2 ’98, 1998. [2] Raoul de Charette. Traffic lights recog- nition (tlr) public benchmarks, Oc- tober 2013. URL http://www. lara.prd.fr/benchmarks/ trafficlightsrecognition. [3] N. Fairfield and C. Urmson. Traffic light map- ping and detection. In Robotics and Automa- tion (ICRA), 2011 IEEE International Confer- ence on, pages 5421–5426, 2011. doi: 10. 1109/ICRA.2011.5980164. [4] H. Fleyeh. Shadow and highlight invari- ant colour segmentation algorithm for traffic signs. In Cybernetics and Intelligent Systems, 2006 IEEE Conference on, pages 1–7, 2006. doi: 10.1109/ICCIS.2006.252225. [5] Jianwei Gong, Yanhua Jiang, Guangming Xiong, Chaohua Guan, Gang Tao, and Huiyan Chen. The recognition and tracking of traf- fic lights based on color segmentation and camshift for intelligent vehicles. In Intelligent Vehicles Symposium (IV), 2010 IEEE, pages 431–435, June 2010. doi: 10.1109/IVS.2010. 5548083. [6] J. Levinson, J. Askeland, J. Dolson, and S. Thrun. Traffic light mapping, localization, and state detection for autonomous vehicles. In Robotics and Automation (ICRA), 2011 IEEE International Conference on, pages 5784–5791, 2011. doi: 10.1109/ICRA.2011. 5979714. [7] Di Luo, Xiangnian Huang, and Li Qin. The research of red light runners video detection based on analysis of tracks of vehicles. In Computer Science and Information Technol- ogy, 2008. ICCSIT ’08. International Confer- ence on, pages 734–738, 2008. doi: 10.1109/ ICCSIT.2008.83. [8] Yehu Shen, U. Ozguner, K. Redmill, and Jilin Liu. A robust video based traffic light de- tection algorithm for intelligent vehicles. In Intelligent Vehicles Symposium, 2009 IEEE, pages 521–526, 2009. doi: 10.1109/IVS.2009. 5164332. [9] Mahipal Reddy Yelal, Sreela Sasi, Glenn R Shaffer, and Ajith K Kumar. Color-based signal light tracking in real-time video. In Video and Signal Based Surveillance, 2006. AVSS’06. IEEE International Conference on, pages 67–67. IEEE, 2006. [10] N. H C Yung and A. H S Lai. An effective video analysis method for detecting red light runners. Vehicular Technology, IEEE Transac- tions on, 50(4):1074–1084, 2001. ISSN 0018- 9545. doi: 10.1109/25.938581.
Compartilhar