Universidade Federal do ABC - Pós

Transcrição

Universidade Federal do ABC - Pós
UNIVERSIDADE FEDERAL DO ABC
Centro de Matemática, Computação e Cognição (CMCC)
Curso de Pós-Graduação em Ciência da Computação
Dissertação de Mestrado
Marcel Jesus Dias
SISTEMA DE DETECÇÃO REMOTA DE SONOLÊNCIA EM
MOTORISTAS: UMA SOLUÇÃO MÓVEL
Santo André - SP
2014
Curso de Pós-Graduação em Ciência da Computação
Dissertação de Mestrado
Marcel Jesus Dias
SISTEMA DE DETECÇÃO REMOTA DE SONOLÊNCIA EM
MOTORISTAS: UMA SOLUÇÃO MÓVEL
Trabalho apresentado como requisito parcial
para obtenção do tı́tulo de Mestre em Ciência
da Computação, sob orientação do Prof. Dr.
Yossi Zana.
Santo André - SP
2014
Este exemplar foi revisado e alterado em relação à versão original,
de acordo com as observações levantadas pela banca no dia da defesa, sob responsabilidade única do autor e com a anuência de seu
orientador.
Santo André, 14 de fevereiro de 2014.
Assinatura do autor:
Assinatura do orientador:
Centro de Matemática, Computação e Cognição (CMCC)
Curso de Pós-Graduação em Ciência da Computação
SISTEMA DE DETECÇÃO REMOTA DE SONOLÊNCIA EM
MOTORISTAS: UMA SOLUÇÃO MÓVEL
Marcel Jesus Dias
Novembro de 2013
BANCA EXAMINADORA:
• Prof. Dr. Yossi Zana (Presidente)
(CMCC) Universidade Federal do ABC - UFABC
• Prof. Dr. Carlos Eduardo Thomaz
(Depto de Engenharia Eletrica) Centro Universitario da FEI
• Prof. Dr. David Corrêa Martins Júnior
(CMCC) Universidade Federal do ABC - UFABC
Este trabalho contou com o auxı́lio financeiro da Universidade Federal do ABC
Resumo
O objetivo deste trabalho é apresentar uma solução para detecção remota e alerta de
sonolência para motoristas. Os requisitos são: alta portabilidade, sensibilidade, operação
em condições de iluminação diurnas e noturnas, mı́nimo de hardware especializado e baixo
custo.
A solução proposta é baseada no registro visual do piscar do motorista. O sistema
consiste de um software para dispositivo portátil e uma câmera acoplada a um iluminador
infravermelho. Por meio da câmera, a imagem do ambiente do carro é capturada, a face
do motorista é detectada, a região dos olhos é estimada e um dos olhos é rastreado.
Continuamente, o estado de abertura do olho é registrado e estatı́sticas de frequência
e duração do piscar são computadas. A partir destes parâmetros estima-se o grau de
sonolência e alertas sonoros são emitidos ao motorista.
Foram estudadas algumas possibilidades de implementação da solução em dispositivos portáteis para a plataforma Android e conseguiu-se implementar bibliotecas de visão
computacional de detecção e rastreamento de face e olhos. No entanto, para a demonstração conceitual de todo o processo da solução foi desenvolvido um algoritmo em ambiente
Matlab. O algoritmo baseia-se em técnicas conhecidas na literatura e foram escolhidas
em função de sua simplicidade e eficácia. A face do motorista é detectada por meio do
algoritmo desenvolvido por Viola e Jones (2001) e a região dos olhos estimada pelas coordenadas do arcabouço da face. O olho é registrado e rastreado a partir do pixel mais
escuro na região dos olhos. O estado de abertura do olho é estimado a partir do contraste
da linha horizontal que atravessa a pupila. As imagens são captadas em condições reais de
direção, em horários diurnos e noturnos em rodovias utilizando um celular e uma câmera
com iluminação LED infravermelha.
Em testes preliminares foram registrados 69% de precisão em ambiente diurno e 96%
em ambiente noturno. A avaliação inicial do hardware e software de sistemas portáteis
indica a viabilidade técnica de implementação e operação em celulares, providenciando
alta portabilidade e baixo custo. Umas das contribuições desta pesquisa foi o pedido de
patente da solução conceitual de um sistema de detecção de sonolência para dispositivos
portáteis
1
2
Palavras-chave: Sistema de detecção remota, alerta de sonolência, dispositivo portátil.
Abstract
The aim of this work is to present a solution for remote detection and warning of drowsiness
to drivers . The requirements are high portability, sensitivity, ability to operate in both
daylight and nighttime conditions, minimal specialized hardware and low cost.
The proposed solution is based on the visual recording of a driver’s blinking. The
system consists of software for a portable device and and a camera linked to an infrared
illuminator. Via the camera, an image of the car environment is captured, the face of the
driver is detected , the eye region is estimated and one of the eyes is tracked . Next, the
open-eye state is registered and statistics for the frequency and duration of the blinking
are computed. From these parameters we estimate the degree of drowsiness and can emit
audible warnings to the driver.
Several possibilities for implementing the solution in Android portable devices were
studied, and detection with computer vision libraries and face/eye tracking were succesfully implemented . We studied several possibilites for implementing the solution in
Android portable devices, and successfully implemented detection with computer vision
libraries and face/eye tracking. But for the conceptual demonstration of the whole solution process, we developed an algorithm in Matlab. It is based on well-known techniques
from the literature, chosen for their simplicity and effectiveness. The face of the driver
is detected by the Viola e Jones (2001) algorithm; the eye region is estimated from the
coordinates of the contour of the face. The eye was recorded and tracked based on the
identification of the darkest pixel in the eye. The open-eye state was estimated from the
contrast of the horizontal line that crosses the pupil. The images were captured in real
driving conditions at specific times of the day and night on highways using a cell phone
and a webcam with infrared LED illuminator.
In preliminary tests were registered 69% accuracy in day environment and 96% in
night environment. The initial evaluation of hardware and software of mobile systems
indicates the technical viability of implementation and operation in mobile phones, providing high portability and low cost. One of the contributions of this research was the
patent application of the conceptual solution of a drowsiness detection system for portable
devices.
3
4
Keywords: remote detection system, drowsiness warning, portable device.
Agradecimentos
Expressar meus sentimentos de gratidão de forma adequada a todos que os merecem,
requerem palavras e ações que não cabem no papel. Os próximos parágrafos mostram
uma tentativa de sintetizar estes sentimentos.
Agradeço a Deus pela minha saúde e pela oportunidade de continuar meus estudos.
Agradeço profundamente a minha esposa, Karina, as minhas filhas, Bianca e Gabrielle,
pelo amor e carinho que sempre me deram, pela motivação, compreensão e apoio nos
momentos mais difı́ceis e por todos os momentos que passamos juntos.
Agradeço imensamente ao Prof. Yossi Zana pelos ensinamentos, ajuda e colaboração
com o meu trabalho, pelas conversas e conselhos ao longo do perı́odo do mestrado, mas
acima de tudo, por ser um amigo.
A todos os professores pelas novas experiências, pelos desafios que me foram apresentados e pelos conhecimentos adquiridos.
A meus amigos Alisoli Pretel, Jhon Franco, Lı́dia Rodrigues, Lucas Martins, Renato
Stoffalette, Saeed Shariati e William Comfort por sempre em motivar, em ajudar e em
torcer por mim.
Agradeço a UFABC pelos financiamentos em bolsas e projetos, e em especial a Agência
de Inovação, por desbravar caminhos que levaram ao registro da primeira patente da
universidade, originada deste trabalho.
E por fim, agradeço a todos que um dia acreditaram em mim.
5
Sumário
1 Introdução
12
1.1
Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2
Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3
Organização do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2 Trabalhos relacionados
2.1
2.2
15
Métodos de detecção de sonolência em motoristas . . . . . . . . . . . . . . 15
2.1.1
Definição de sonolência . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.2
Análise de condução do motorista . . . . . . . . . . . . . . . . . . . 16
2.1.3
Fenômenos fisiológicos humanos . . . . . . . . . . . . . . . . . . . . 17
2.1.4
Análise de imagens da face . . . . . . . . . . . . . . . . . . . . . . . 18
Dispositivos comerciais de detecção de sonolência . . . . . . . . . . . . . . 20
2.2.1
Driver state sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.2
Driver fatigue warning system . . . . . . . . . . . . . . . . . . . . . 21
2.3
Dispositivos portáteis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4
Parâmetros de piscar como indicadores de sonolência . . . . . . . . . . . . 23
2.5
Processamento de imagem em dispositivo portátil . . . . . . . . . . . . . . 25
3 Sistema proposto
27
3.1
Arquitetura do sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2
Configuração do sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3
Instrumentação dos protótipos . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4
Base de vı́deos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6
SUMÁRIO
3.5
Detecção e rastreamento de imagens
3.5.1
3.6
7
. . . . . . . . . . . . . . . . . . . . . 31
Detecção facial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Avaliação de desempenho do sistema . . . . . . . . . . . . . . . . . . . . . 36
4 Implementação do protótipo
4.1
4.2
37
Sistema em Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.1
Pré-processamento de imagens . . . . . . . . . . . . . . . . . . . . . 38
4.1.2
Detecção de face . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.3
Detecção e avaliação do estado do olho . . . . . . . . . . . . . . . . 39
4.1.4
Rastreamento da região de interesse . . . . . . . . . . . . . . . . . . 40
4.1.5
Estimação do estado de sonolência . . . . . . . . . . . . . . . . . . 40
Análise de viabilidade de um sistema portátil . . . . . . . . . . . . . . . . 41
4.2.1
Plataforma de desenvolvimento . . . . . . . . . . . . . . . . . . . . 42
4.2.2
Testes da aplicação em Android . . . . . . . . . . . . . . . . . . . . 42
5 Resultados e discussão
44
5.1
Variação temporal do contraste . . . . . . . . . . . . . . . . . . . . . . . . 44
5.2
Frequência e duração do piscar
. . . . . . . . . . . . . . . . . . . . . . . . 45
6 Conclusões
52
6.1
Considerações finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.2
Sugestões de trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . 53
A Patente de invenção depositada no INPI
60
Lista de Figuras
2.1
Posição dos eletrodos que mede parâmetros essenciais para a avaliação do
sono. EEG: Eletroencefalograma; EOG: Eletro-oculograma; EMG: Eletromiograma. (Fernandes, 2006). . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2
Participação no mercado por sistema operacional nas vendas globais de
dispositivos portáteis para usuários finais. Dados de cada 2o Trimestre dos
anos de 2010 a 2013. Adaptado de GARTNER (2013). . . . . . . . . . . . 23
2.3
Aplicação Android para detecção de única face (a) e de múltiplas faces
(b), usando reconhecimento de caracterı́sticas de pontos médios simétricos.
Adaptado de Liu (2012). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.4
Detecção de olhos em Android por meio de ponto de referência da região
central da face. Adaptado de Liu (2012). . . . . . . . . . . . . . . . . . . . 26
3.1
Arquitetura do sistema proposto com especificações das etapas do sistema
e sua interação com o ambiente. . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2
Layout de protótipo. Condições de iluminação diurna (a) sendo apenas
necessário um dispositivo portátil (1) e em condições noturnas (b) uma
câmera IR (2) acoplada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3
Layout de dispositivos usados na captura de vı́deos. (a) Câmera frontal de
Smartphone. (b) Câmera e conjunto de LED de iluminação infravermelha.
29
3.4
Iluminação e configuração do usuário quanto ao uso de óculos: (a) diurno
sem óculos, (b) noturno com óculos de sol, (c) noturno sem óculos e (d)
noturno com óculos de leitura. . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5
Ilustração do processo de como ocorre a detecção de um piscar. . . . . . . 32
3.6
Formas de caracterı́sticas retangulares. Duas caracterı́sticas retangulares
são mostradas em (A) e (B). Em (C) é mostrada uma caracterı́stica de três
retângulos e em (D) uma caracterı́stica de quatro retângulos. (extraı́do de
Viola e Jones (2001)). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
8
LISTA DE FIGURAS
9
3.7
O valor da imagem integral no ponto (x, y) é a soma de todos os pixels
acima e à esquerda. (extraı́do de Viola e Jones (2004)). . . . . . . . . . . . 33
3.8
Cálculo da caracterı́stica de uma imagem integral. (extraı́do de Viola e
Jones (2001)). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.9
Cascata de classificadores. (adaptado de Viola e Jones (2001)). . . . . . . . 35
4.1
Tela de interface com o usuário do sistema. Nesta tela é possı́vel configurar
parâmetros de entrada e saı́da do sistema. . . . . . . . . . . . . . . . . . . 38
4.2
Estrutura externa do olho e a linha de contraste de detecção. . . . . . . . . 39
4.3
Tela do sistema. (a) Detecção de pixel mais escuro da pupila. (b) Imagem
da região do olho. (c) Linha de intensidade de contraste. . . . . . . . . . . 40
4.4
Análise de contraste. (a) Olho aberto com muita variação na amplitude.
(b) Olho fechado com pouca variação na amplitude. . . . . . . . . . . . . . 41
4.5
Tela da saı́da gráfica do aplicativo ”face detection”do pacote OPENCV 2.4.6. 42
5.1
Variação temporal do contraste, detecção automática de piscar e avaliação
groundtruth. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2
Gráfico do sistema obtendo duração do piscar. Pontos azuis, verdes e vermelhos, representam duração mı́nima, média e máxima de piscares, respectivamente. Os dados foram obtidos a cada 2 segundos. . . . . . . . . . . . 46
5.3
Duração mediana do piscar. Análise do Sistema com groundtruth (GT) em
ambiente diurno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.4
Duração mediana do piscar. Análise de comparação do Sistema com o
groundtruth (GT) em ambiente noturno. . . . . . . . . . . . . . . . . . . . 47
5.5
Número de piscares e proporção de acertos entre o sistema e o groundtruth
em ambiente diurno. Amostra S1 com intervalos de 60 segundos. . . . . . . 48
5.6
Número de piscares e proporção de acertos entre o sistema e o groundtruth
em ambiente noturno. Amostra S2 com intervalos de 60 segundos. . . . . . 49
5.7
Resultado da amostra S1 (ambiente diurno) de precisão e sensibilidade
com intervalos de 60 segundos. Os resultados foram obtidos do sistema
desenvolvido em Matlab de vı́deo, de duração de 603 segundos. . . . . . . . 49
5.8
Resultado da amostra S2 (ambiente noturno) de precisão e sensibilidade
com intervalos de 60 segundos. Os resultados foram obtidos do sistema
desenvolvido em Matlab de vı́deo, de duração de 619 segundos. . . . . . . . 50
Lista de Tabelas
2.1
Detecção de piscar comparando vı́deos de um banco de dados para quatro
diferentes taxas de amostragem (Adaptado de Picot et al. (2009)). . . . . . 20
2.2
Experimentos de quantificação do piscar. (adaptado de Smith et al. (2003)). 21
3.1
Classe de amostras de vı́deos dos experimentos. . . . . . . . . . . . . . . . 31
4.1
Configuração de dispositivos portáteis usados nos testes . . . . . . . . . . . 43
10
Lista de Abreviaturas e Siglas
AdaBoost
Adaptive Boosting
AECS
Average Eye Closure Speed
DSS
Driver State Sensor
EEG
Eletroencefalograma
EOG
Eletro-oculograma
EMG
Eletromiografia
EMO
Edge Map Overlapping
EPC
Edge Pixel Count
FN
Falso Negativo
FP
Falso Positivo
GT
groundtruth
INPI
Istituto Nacional de Própriedade Intelectual
MPT
Machine Perception Toolbox
NREM
Non Rapid Eye Movement
OpenCV
Open Source Computer Vision Library
PERCLOS
Percent of the time eyelids are Closed
SDK
Software Development Kit
SMQT
Successive Mean Quantization Transform
SNOW
Sparse Network of Winnows
VP
Verdadeiro Positivo
VN
Verdadeiro Negativo
11
Capı́tulo 1
Introdução
É frequente em muitos paı́ses que a maioria dos acidentes nas estradas estejam relacionados
à sonolência. Tal situação é mais comum entre os viajantes noturnos, especialmente
caminhoneiros que deixam de dormir visando uma maior recompensa monetária (Knauth
et al., 2012; Girotto et al., 2013). Segundo estatı́sticas da associação brasileira de medicina
de tráfego, por ?, os acidentes relacionados com sonolência e cansaço no paı́s representam
60%, sendo que, destes, 18% são causados por sonolência. Em outra pesquisa feita no
Brasil, por Rizzo (2002), descreve que entre 1000 motoristas de todas as classes, neste 33%
são caminhoneiros, dos quais 58% dirigiam seus veı́culos com sono e 42% deles cochilavam
ao dirigir. No total, 5% dos motoristas se envolveram em acidentes em consequência
da sonolência. Dados de 2011 sobre o censo de 2008 do Ministério da Saúde mostram
que o número geral de mortes por acidente de trânsito subiu para 38.273. Este elevado
nı́vel de incidentes tem sido refletido tanto em perdas de vidas humanas e sofrimento,
quanto na economia do paı́s, pois os custos desses acidentes são altos, abrangendo vários
setores econômicos, desde o operário internado no hospital público até a carga perdida no
acidente.
Atualmente, há uma variedade de soluções para o problema da sonolência, que envolvem desde o simples ato de dormir até o uso de drogas ilı́citas. Segundo Rizzo (2002)
em sua pesquisa, a cada 1000 motoristas, 58,4% tomavam algum estimulante para ficar
acordado. O uso de métodos quı́micos é feito com o consumo de substâncias como a cafeı́na e taurina, dois estimulantes que podem quimicamente adiar o sono e são substâncias
encontradas normalmente em energéticos de fácil acesso. Outro exemplo de substância
seria a anfetamina, cujos efeitos são similares aos dos energéticos, mas com duração mais
prolongada. Mas há desvantagens em seu uso. Ao ser ingerido, a pupila do indivı́duo
se dilata (midrı́ase), tornando o olho mais sensı́vel à luz e facilitando o ofuscamento do
motorista.
Os métodos tecnológicos de detecção e alerta de sonolência podem ser classificados em
12
CAPÍTULO 1. INTRODUÇÃO
13
três categorias, conforme aponta Coetzer e Hancke (2011):
1. Sinais fisiológicos: Estudo das ondas cerebrais, do piscar dos olhos por EMG (Eletromiografia), da pressão sanguı́nea e do potencial elétrico da pele.
2. Sinais fı́sicos: Analisa ações que o motorista transmite ao carro (ex. diminuição da
força de aperto no volante).
3. Visão computacional: Utiliza imagens para extrair caracterı́sticas, como abertura
ou fechamento dos olhos.
1.1
Objetivos
O objetivo geral do projeto é desenvolver um sistema automático, não invasivo, de baixo
custo e operacional em tempo real, que seja capaz de identificar o grau de sonolência do
motorista e alertá-lo do risco de um acidente. Os objetivos especı́ficos deste mestrado são:
• Desenvolver uma prova de conceito em computador de mesa para quantificação de
piscares a partir de imagens captadas em ambiente de alta e baixa iluminação,
registrando parâmetros de duração e frequência.
• Implementar em plataforma Android para fins de uso em dispositivo portátil acoplado a uma câmera infravermelha.
1.2
Contribuições
As principais contribuições deste trabalho são:
• Criação de um método de prevenção de acidentes causados por sonolência, mediante tecnologia de baixo custo, alta precisão e uma redução dos efeitos gerados por
acidentes de trânsito (custos humanos, trabalhistas e monetários).
• Criação de método próprio de detecção de olho na imagem, denominada de linha
horizontal de contraste.
• Registro de patente, com a finalidade de diminuição da dependência externa no desenvolvimento tecnológico, investimento em tecnologia nacional e mérito ao trabalho
de pesquisa realizado nas universidades. ((Zana e Dias, 2012), Apêndice A)
• Estudo de viabilidade da criação de um dispositivo inovador que possa resultar em
um produto comercial e propiciar retorno financeiro à universidade.
CAPÍTULO 1. INTRODUÇÃO
1.3
14
Organização do texto
O capı́tulo 2 discute a importância dessa dissertação e mostra os trabalhos atuais de
detecção e rastreamento de caracterı́sticas da face. O capı́tulo 3 detalha o método de
detecção de face e dos olhos. Além disso, descreve o método utilizado no rastreamento da
região de interesse e os materiais utilizados. A implementação do protótipo e a análise de
viabilidade do sistema proposto são mostrados no capı́tulo 4. Os resultados e a discussão
dos métodos propostos são mostrados no capı́tulo 5. As conclusões são feitas no capı́tulo
6, bem como as sugestões para trabalhos futuros. O apêndice A mostra nossa patente
de invenção depositada no Instituto Nacional da Propriedade Intelectual (INPE). Essa
patente apresenta parte das ideias desenvolvidas nesse trabalho.
Capı́tulo 2
Trabalhos relacionados
Esta seção tem por objetivo mostrar a relevância do presente projeto por meio dos mais
variados trabalhos sobre o tema proposto e apresentar outras ideias de estudos na área,
fazendo assim um paralelo entre o problema e as diversas soluções possı́veis.
2.1
Métodos de detecção de sonolência em motoristas
Muitas pesquisas têm sendo feitas para detectar em tempo real se o condutor de um
veı́culo está adormecendo na direção. Tais pesquisas são classificadas em três categorias
de detecção do estado de sonolência (Coetzer e Hancke, 2011): análise de condução do
veı́culo (Yang et al., 2009; Kim et al., 2008), monitoramento fisiológico (Yeo et al., 2009)
e análise de imagens (Horng et al., 2012; Saeid e Parisa, 2012; Wu e Trivedi, 2010). A
seguir, apresentamos a definição de sonolência (seção 2.1.1) e, em seguida, cada categoria
é apresentada em detalhes nas seções 2.1.2, 2.1.3 e 2.1.4, respectivamente.
2.1.1
Definição de sonolência
O sono é dividido em estágios(Fernandes, 2006): o primeiro estágio é chamado de sonolência, e este é caracterizado por um sono muito leve, de onde se pode despertar facilmente.
Nesta fase, o movimento dos olhos é lento e a atividade muscular está em menor ritmo,
em estado de relaxamento.
O exame que mede o sono é denominado de eletroencefalografia (EEG). Este exame
é feito com o auxilio de eletrodos conectados à cabeça, realizando o registro gráfico das
correntes elétricas do cérebro. A unidade de registro é Hertz e cada faixa de frequência e
amplitude cerebral é classificada em ondas (?):
15
CAPÍTULO 2. TRABALHOS RELACIONADOS
16
• Ondas beta (baixı́ssima amplitude, alta frequência): Pessoa acordada e ativa (em
estado de vigı́lia).
• Ondas alfa (baixa amplitude): Pessoa acordada e relaxada, com os olhos fechados.
• Ondas teta (baixa/média amplitude): Pessoa sonolenta ou adormecida, sono de
transição.
• Ondas delta (alta amplitude, baixa frequência): Pessoa em sono profundo.
O sono é classificado (Fernandes, 2006) em duas categorias, além de seus estágios. A
sonolência está classificada na categoria NREM (Non Rapid Eye Movement) do sono, isto
é, Movimento Não Rápido dos Olhos, enquanto que a categoria REM é definida por ser
um sono profundo, onde ocorrem os sonhos.
Normalmente, a sonolência dura aproximadamente cinco minutos e a pessoa adormece.
Nesse estágio, a pessoa facilmente pode ser despertada. Predominam sensações de vagueio,
contrações repentinas, movimentos involuntários das mãos e dos pés, lenta contração,
dilatação pupilar, entre outros.
Os estágios do sono são avaliados por meio da polissonografia (Fernandes, 2006), que
é um termo genérico que se refere ao registro simultâneo de algumas variáveis fisiológicas
durante o sono. A caracterização dos estágios do sono pode ser feita com base em três
variáveis fisiológicas, que compreendem o EEG (Eletroencefalograma), o EOG (Eletrooculograma) e o EMG (eletromiograma). O estágio de sonolência está caracterizado como
um estado em que há relaxamento muscular semelhante à vigı́lia.
EOG é a medida da diferença de potencial entre a área da frente e a parte de trás
do globo ocular. Ele é usado para detectar os movimentos dos olhos e do piscar, isto é,
medida horizontal (movimentos dos olhos para a esquerda e a direita) e vertical (abertura
e fechamento dos olhos). E o EMG mede a atividade elétrica dos músculos durante o
repouso, leve contração, e contração forte.
A figura 2.1 mostra a posição dos eletrodos usados em análises de EEG, EOG e EMG.
Os eletrodos têm a função de medir os sinais elétricos do corpo, e estes são registrados em
um computador ou diretamente em papel. Os sinais registrados representam a amplitude
e a frequência dos sinais elétricos da pessoa.
2.1.2
Análise de condução do motorista
Métodos de análise de condução de motoristas buscam estudar as ações e os reflexos do
motorista e determinar os padrões em que o veı́culo deve ser conduzido. Sistemas com
este conceito (Yang et al., 2009; Kim et al., 2008) analisam parâmetros de como o veiculo
CAPÍTULO 2. TRABALHOS RELACIONADOS
17
Figura 2.1: Posição dos eletrodos que mede parâmetros essenciais para a avaliação do sono.
EEG: Eletroencefalograma; EOG: Eletro-oculograma; EMG: Eletromiograma. (Fernandes, 2006).
é conduzido, como por exemplo: movimentos do volante, a posição do veiculo junto à
faixa por meio de câmera, força do aperto de mão ao volante por meio de sensores de
pressão, variação de aceleração, entre outros.
Regras padronizadas podem não ser eficazes para determinar se um motorista está
sonolento. O comportamento de condução do motorista pode ser diferente do esperado
e não dizer muito quanto ao seu real estado. Alguns fatores externos podem influenciar
nessa análise de condução (Coetzer e Hancke, 2011): as péssimas condições de manutenção
de rodovias (rodovias com muitos buracos ou sem faixas de marcação da rodovia), as
condições climáticas (mau tempo) e a experiência de condução do motorista (condutores
inexperientes podem fazer direções imprecisas, mantendo por exemplo, a roda sobre a
faixa da pista e movimentos bruscos).
2.1.3
Fenômenos fisiológicos humanos
Esta linha de estudo utiliza parâmetros fisiológicos dos motoristas, adquiridos por meio de
dispositivos que medem a atividade elétrica do corpo, como por exemplo, análises de EEG,
EOG e EMG. Essas técnicas medem mudanças nos sinais fisiológicos, respectivamente:
ondas cerebrais, movimento dos olhos e frequência cardı́aca(Yeo et al., 2009).
Parâmetros do corpo humano são extremamente precisos quando adquiridos por meio
de dispositivos de contato e suas expressões são claramente diferentes entre o estado sonolento e o estado lúcido (Tanha e Seifoory, 2011). Contudo, este método requer eletrodos
conectados ao corpo do motorista e um conjunto de dispositivos instalados no veı́culo
para sua leitura de dados, o que provavelmente incomodará o condutor, além do alto
CAPÍTULO 2. TRABALHOS RELACIONADOS
18
custo financeiro. Geralmente, esta técnica é usada para validar outras técnicas nesta
área.
2.1.4
Análise de imagens da face
Neste método são desenvolvidos estudos (Horng et al., 2012; Saeid e Parisa, 2012; Wu e
Trivedi, 2010) no campo da visão computacional e do processamento de imagem, tendo
como principal objetivo analisar expressões faciais em uma série de quadros de vı́deo e alertar o motorista quanto ao seu estado de sonolência. Algumas caracterı́sticas comumente
utilizadas para determinar a sonolência são a frequência de piscar e/ou o bocejo.
Métodos baseados em recursos de detecção facial são os mais utilizados, pois segundo
um levantamento bibliográfico de Wu e Trivedi (2010), as imagens da face podem identificar elementos visuais de atenção de uma pessoa, como o padrão de duração de um piscar,
que tem uma relação estreita com a sonolência de uma pessoa, além de ser uma técnica
não invasiva.
Considerando-se as vantagens e as desvantagens em alguns métodos, mostraremos
nesta seção alguns trabalhos e como eles determinam quando um motorista inicia um
estado de sonolência.
• Um trabalho em destaque é de Horng et al. (2012), que vem avançando desde seu
trabalho anterior (Horng e Chen, 2008), um sistema de detecção de sonolência em
tempo real com base no rastreamento dos olhos por um modelo dinâmico de correspondência. Este consiste em quatro partes: detecção da face, detecção dos olhos,
rastreamento dos olhos e detecção de sonolência. Os avanços propostos foram a criação de duas novas funções: mapa de sobreposição de borda (edge map overlapping
(EMO)) e a contagem de pixels de borda (edge pixel count (EPC)), além de aplicar
algoritmos de busca rápida para acelerar a busca por eficiência no rastreamento dos
olhos.
Para usar o recurso de borda para a concepção de novas funções correspondentes, a
área de busca e o modelo dos olhos são convertidos em mapas de borda correspondente. Para este efeito, o valor de pixels de borda preta e não borda (valores em
branco) são definidos em valores binários, 1 e 0, respectivamente, para a eficiência
dos cálculos de rastreamento dos olhos.
A área de busca de uma nova estrutura para o rastreamento dos olhos é a posição
do modelo dos olhos através da expansão em ambas as direções ao longo das subimagens dos olhos em todos os sentidos. Assim, a imagem é aumentada para realizar
a busca do modelo dentro da imagem maior de um possı́vel deslocamento do modelo
dos olhos.
CAPÍTULO 2. TRABALHOS RELACIONADOS
19
Na função EMO, quanto mais a borda sobreposta dos pixels estiver dentro da imagem de busca, maior será a de valor correspondente. Para a função EPC, o número
de pixels de borda é outra caracterı́stica estável para o rastreamento do olhar e, neste
caso, a função apenas conta o número de pixels da borda da janela em movimento.
O funcionamento geral de todo o sistema consiste no uso de uma câmera montada
no painel de um carro a fim de capturar as imagens do motorista para a detecção
da sonolência. O primeiro quadro da imagem é utilizado para a detecção de face
e a posição dos olhos. Se qualquer um desses procedimentos de detecção falhar,
o processo é reiniciado no próximo quadro. Caso contrário, as sub-imagens dos
olhos correntes são utilizadas como os modelos dinâmicos de rastreamento dos olhos,
em quadros subsequentes, e, em seguida, o processo de detecção de sonolência é
realizado. Se o rastreamento dos olhos falhar, os processos de detecção e localização
da face reiniciam-se no quadro atual. Tais procedimentos continuam até que não
haja mais quadros.
• Picot et al. (2009) fizeram comparação entre resultados EOG e câmeras de várias
taxas de quadros para a detecção de sonolência. O objetivo do estudo era verificar
até que ponto uma câmera de alta velocidade poderia substituir o EOG (definição de
EOG na seção 2.1.1) para a extração de caracterı́sticas do piscar. O EOG fornece
um grande número de informações precisas, tais como: duração e frequência do
piscar, percentual de fechamento dos olhos e algumas caracterı́sticas de fechamento
e abertura da pálpebra.
O método de detecção da face e piscar é constituı́do de ferramenta MPT (Machine
Perception Toolbox ) para detectar a face e por método próprio para detectar os
olhos por meio de gradiente para melhorar os contornos e, por projeções verticais e
horizontais para detectar a forma e o estado do olho.
A comparação dos resultados foi processada em experimento para quatro taxas de
amostragem de vı́deo (30fps, 100fps, 150fps e 200fps). Parte dos resultados são
mostrados na tabela 2.1, em que a detecção correta é a que detecta um piscar
concomitantemente usando EOG e vı́deo. Um aumento na frequência de captura
possibilita um aumento na correta taxa de detecção de piscares, porém de forma
não estável. Já em relação à taxa de falsas detecções, há uma redução inversamente
proporcional com a taxa de quadros por segundo. No entanto, esta redução dos
erros pode não compensar o investimento necessário em dispositivos que permitam
a captura de um alto número de imagens (quadros) em tão pouco tempo, sem falar
na elevação do número de quadros a serem processados a cada segundo, tendendo
a um maior custo computacional em situações que requeiram respostas em tempo
real.
CAPÍTULO 2. TRABALHOS RELACIONADOS
20
Tabela 2.1: Detecção de piscar comparando vı́deos de um banco de dados para quatro
diferentes taxas de amostragem (Adaptado de Picot et al. (2009)).
Taxa de Quadros
por Segundo
30
100
150
200
Detecções
Corretas
611
738
612
758
Perdidas
23
29
22
15
Falsas
Detecções
21
13
6
3
• Um dos métodos de detecção de sonolência Smith et al. (2003) busca a região da
face por meio da diferença de contraste da sua tonalidade de cor da pele com a dos
lábios. De posse da região da face e dos lábios é mensurada a posição dos olhos do
motorista.
Os parâmetros usados neste sistema foram o fechamento de olhos, a rotação da face,
o brilho na região dos olhos e a posição da boca (por meio do contraste da cor dos
lábios).
A tabela 2.2 mostra parâmetros usados para detectar o estado de sonolência do
motorista por meio do registro de piscar. O sistema analisa sequências de imagens
para verificar se o motorista fechou os olhos por um até vinte quadros, o qual é
contado como um piscar.
A razão entre o número de fechamentos dos olhos detectado pelo programa e a
sequência do conjunto sobre o número total de fechamentos dos olhos contados
por observador humano é mostrada na terceira coluna. Na sétima sequência há
resultados negativos, com muitos falsos positivos.
O sistema, segundo o autor, pode se ajustar a diferentes condições de iluminação
com base no quadro inicial da sequência. E para a avaliação deste trabalho foram
realizados experimentos em laboratório, com oito pessoas em ambiente iluminado.
Na tabela 2.2 de resultados de detecção de piscar, mostra que 50% da amostra
atingiu uma taxa acima de 70% de acerto. O autor descreve que há uma desvantagem
em sua técnica quando usada em ambientes com pouca iluminação, pois dificulta a
diferenciação de cores na imagem.
2.2
Dispositivos comerciais de detecção de sonolência
Sistemas de avaliação de condução do motorista podem utilizar vários recursos, tais como:
câmeras externas que detectam o desvio brusco do veı́culo em relação à faixa da rodovia,
movimentação do volante tı́pica de uma pessoa sonolenta, desaceleração ou aceleração fora
de um padrão, entre outros. Nesta revisão, restringiremos a revisão para a apresentação
CAPÍTULO 2. TRABALHOS RELACIONADOS
21
Tabela 2.2: Experimentos de quantificação do piscar. (adaptado de Smith et al. (2003)).
Sequência
1
2
3
4
5
6
7
8
Total de
Quadros
48
28
28
28
28
400
400
200
Fechamentos
Detectados/
Total de
Fechamentos
0/0
2/2
1/1
1/1
1/1
10/10
1/1
2/2
Estavam
Realmente
Fechados
0
9
1
1
5
80
3
5
Fechamentos
detectados
pelo
Programa
0
8
1
1
4
70
40
5
Perdidos
0
1
0
0
1
10
1
3
Falso
Positivo
0
2
1
2
2
30
37
0
Taxa de
Detecção
N/A
78%
100%
100%
60%
75%
7%
70%
de sistemas comerciais de análise da face do motorista, ao qual o sistema aqui proposto
pertence.
A seguir são apresentados alguns dispositivos que estão no mercado, suas vantagens e
desvantagens:
2.2.1
Driver state sensor
Um dispositivo em destaque por prometer eficácia na detecção de sonolência. Foi lançado
em 2008, pela empresa Machines (2011), denominado com a sigla DSS (Driver State
Sensor ) e vendido para um público especifico: empresas de grande porte de transporte de
cargas. O fabricante não divulga o preço, mas segundo matéria da revista ABC-NEWS
(2013) em consulta a uma grande empresa de transportes que adquiriu o produto, o
dispositivo instalado chega a custar até 20 mil dólares.
Este dispositivo é constituı́do de uma câmera de vı́deo, uma caixa de som para alerta,
um computador para processamento e um sistema embarcado. O sistema promete estimar
o grau de sonolência do motorista a partir da análise de piscar e da orientação da cabeça
do motorista.
Suas principais desvantagens são o alto custo e a necessidade de compra de um dispositivo grande, que fica permanentemente no veı́culo. Sua vantagem é a capacidade de
funcionar sem treinamento prévio da face do motorista. A falta de resultados publicados
não permite avaliar seu real desempenho e eficácia.
2.2.2
Driver fatigue warning system
O sistema foi lançado pela Group (2010), e é composto por uma webcam operando com
iluminação na faixa do infravermelho, uma unidade de processamento de imagens e um
sistema de alerta.
CAPÍTULO 2. TRABALHOS RELACIONADOS
22
O sistema é baseado na detecção do piscar por meio da análise do tamanho da pupila,
que caracteriza o estado de sonolência pela redução de seu diâmetro e à medida que o
olho vai se fechando, o grau de sonolência aumenta.
O sistema promete tempo de resposta de 2 e 3 segundos, sendo o primeiro para rodovias
e o segundo em ambientes urbanos. O sistema também possui a função de detecção de
distração, ou seja, se o motorista olhar para o espelho por um perı́odo de 5 a 7 segundos
é disparado um alerta sonoro.
Este dispositivo começou a ser comercializado em 2010. O sistema é baseado em um
artigo publicado por Grace (2001) e custa cerca de 500 dólares.
2.3
Dispositivos portáteis
Desenvolvimento de aplicações para processamento de imagens e análise de caracterı́sticas
por dispositivos portáteis (ex. smartphones e tablets) são recentes e em crescimento, bem
como há um avanço na capacidade de processamento dos CPUs e disponibilidade de
plataformas livres de desenvolvimento.
Como ambiente de desenvolvimento, exemplificamos a plataforma usada neste projeto, denominada por Android SDK para desenvolvimento de aplicativos Android. A
plataforma é Open Source, suportada por Open Handset Alliance, composta pela maioria
das empresas fabricantes de smartphones.
Há uma tendência de popularização de dispositivos portáteis e o contı́nuo crescimento
do número de pessoas com acesso a esses dispositivos. Conforme estudo da empresa
GARTNER (2013), o sistema operacional registrou 79% dos aparelhos vendidos para
usuários finais no segundo quadrimestre de 2013 (figura 2.2).
As aplicações são executadas no dispositivo portátil sobre uma máquina virtual, da
mesma forma que funcionam com o Java, mas com caracterı́sticas voltadas para Android.
Essa máquina virtual é denominada Dalvik e é comum a todos os dispositivos com Android.
Destacam-se nos dispositivos portáteis os avanços no desenvolvimento de bibliotecas
e recursos do compilador Android para realizar tarefas na área de visão computacional e
processamento de imagens. Já há dezenas de bibliotecas, como a OpenCV, que contribuem
para os desenvolvedores criarem aplicações nesta área.
(Farina e Marana, 2012), por exemplo, utilizou a plataforma Android e bibliotecas
OpenCV em seu algoritmo de detecção e reconhecimento de face em um sistema biométrico
e, neste, ao invés de usar as tradicionais imagens estáticas, como é comum neste tipo de
aplicação, são utilizados para reconhecimento o uso de vı́deos.
CAPÍTULO 2. TRABALHOS RELACIONADOS
23
Figura 2.2: Participação no mercado por sistema operacional nas vendas globais de dispositivos portáteis para usuários finais. Dados de cada 2o Trimestre dos anos de 2010 a
2013. Adaptado de GARTNER (2013).
Um exemplo de como seria o funcionamento de um sistema de detecção de sonolência
em dispositivos portáteis pode ser visto na patente US 7.482.937B2, depositada pela Chai
e Kujawa (2009). O sistema proposto é definido por um dispositivo portátil, com uma câmera embutida para monitorar, por meio das imagens capturadas, as condições de atenção
do motorista e emite alertas do estado de sonolência do mesmo. Contudo, esta invenção
não prevê um componente para a captação de imagens em condições ambientais de baixa
ou nenhuma iluminação, portanto seu uso seria restrito à operação em condições de forte
iluminação. Além disso, em 2009 não existiam dispositivos com poder de processamento
suficiente para realizar as tarefas propostas.
Para avaliação e comparação de resultados de vı́deos em dispositivos móveis, destacamos o instituto de pesquisa Idiap, que mantém uma base de dados de vı́deos denominada
MoBio publicada por Mccool et al. (2012), composta de vı́deos contendo faces e áudio.
Esses vı́deos foram coletados usando telefones celulares em cinco paı́ses diferentes e estão
disponı́veis na web.
2.4
Parâmetros de piscar como indicadores de sonolência
Alguns estudos (Qing et al., 2010; Liying e Haoxiang, 2008) apontam o piscar como um
comportamento visual que reflete o nı́vel de sonolência de uma pessoa. Segundo (Hu
et al., 2013), o nı́vel de sonolência de uma pessoa pode ser avaliado por meio da análise do
CAPÍTULO 2. TRABALHOS RELACIONADOS
24
movimento das suas pálpebras, mais especificamente, por meio do percentual de tempo
em que os olhos ficam fechados (PERCLOS1 ).
PERCLOS é definida dentro de um perı́odo de tempo pré-definido (geralmente 1 minuto), verificando se uma pessoa tem os seus olhos 80% ou mais fechados (Pradhan et al.,
2012). É feita uma contagem de quadros em que os olhos estão fechados (dentro do percentual) e abertos. Caso seja constatado que existe fechamento e seu total esteja presente
em pelo menos 20% do tempo, é constatada a sonolência do motorista.
Pradhan et al. (2012) definiram o cálculo PERCLOS fazendo N a o número de quadros
de olhos que pertencem à categoria aberto (atento), de um total de N m de quadros de
olhos capturados em um minuto. Sendo (N m - N a) o número de quadros de olhos
pertencentes à categoria desatento, obtendo então, o valor PERCLOS por minuto por
meio da fórmula:
P ERCLOS =
N m−N a
Nm
× 100%
Em um dos seus experimentos de classificação dos olhos, foram usadas quarenta imagens para cada categoria: olho totalmente aberto, parcialmente aberto e totalmente fechado. Os testes mostraram uma precisão na classificação próxima a 98%.
Outro parâmetro de piscar é a velocidade média de fechamento dos olhos (AECS2 ).
Em alguns trabalhos (Lang e Qi, 2008; Ji et al., 2004; Ji e Yang, 2002) esse parâmetro
foi utilizado em conjunto com PERCLOS e consideram que a velocidade em que o piscar
ocorre é um bom indicador de sonolência, pois a velocidade de fechamento dos olhos de
uma pessoa sonolenta é distintamente mais lento do que o de uma pessoa em alerta.
Ji e Yang (2002) mostram que existe uma grande diferença na velocidade média de
fechamento dos olhos de uma pessoa atenta com a de uma pessoa sonolenta. O fechamento
dos olhos de uma pessoa atenta leva apenas 0,17s, contra 1,68 s de uma pessoa sonolenta.
É evidente a partir dos dados de simulação, que a velocidade de fechamento dos olhos
para uma pessoa sonolenta é muito mais lento do que o de uma pessoa em alerta. Isto
revela que a velocidade de fechamento de olhos pode potencialmente ser usada como uma
métrica para quantificar o nı́vel de sonolência de uma pessoa.
De acordo com Lang e Qi (2008), a utilização separada dos parâmetros PERCLOS
e AECS pode detectar a sonolência de um motorista. Mas PERCLOS combinado com
AECS pode detectar a sonolência com mais eficácia.
1
2
Do Inglês PERcent of the Time Eyelids are CLOSed.
Do Inglês Average Eye Closure Speed.
CAPÍTULO 2. TRABALHOS RELACIONADOS
2.5
25
Processamento de imagem em dispositivo portátil
Processar imagens obtidas da câmera de dispositivos portáteis é possı́vel por meio de
recursos da biblioteca OpenCV que são suportados no arcabouço Android. Este ambiente de desenvolvimento constitui um conjunto de funções pré-definidas para auxilio no
desenvolvimento de aplicações de extração de caracterı́sticas em imagens.
Um exemplo de aplicação é o trabalho de Liu (2012), o qual se utilizou de bibliotecas
de detecção de face e parâmetros que auxiliam na localização dos olhos. A aplicação faz a
detecção da face (figura 2.3(a)) verificando pontos médios simétricos, podendo ainda ser
utilizada para detectar mais de uma face na aplicação (figura 2.3(b)).
Figura 2.3: Aplicação Android para detecção de única face (a) e de múltiplas faces (b),
usando reconhecimento de caracterı́sticas de pontos médios simétricos. Adaptado de Liu
(2012).
É feita ainda a delimitação da área dos olhos para reduzir a região processada. Essa
detecção é feita por meio do cálculo da distância entre a área detectada da face, pela
diferença da metade dessa distância, obtendo assim, o ponto de referência do centro da
região da face, conforme ilustrado na figura 2.4.
Um trabalho recente (Lee e Chung, 2012) é o de avaliação do estado de sonolência
com uso de técnica multi-classificador. Técnicas multi-classificador têm o objetivo de
usar o resultado de dois ou mais métodos. Neste trabalho é realizada a fusão de resultados de dois métodos: análise de imagens de movimento dos olhos e dados sensoriais de
fotopletismografia.
Para aplicar o método, foi desenvolvido um sistema implementado em um smartphone
com sistema operacional Android, onde este recebe toda a informação dos sensores de
fotopletismografia instalados no volante e também da câmera frontal do smartphone uti-
CAPÍTULO 2. TRABALHOS RELACIONADOS
26
Figura 2.4: Detecção de olhos em Android por meio de ponto de referência da região
central da face. Adaptado de Liu (2012).
lizada para capturar imagens da face do motorista. O próprio dispositivo processa parte
das informações e as exibe em sua tela, bem como os alertas de sonolência.
Os dados de fotopletismografia são obtidos por um diodo emissor de luz infravermelha
(LED), que mede a quantidade de luz refletida por meio da pele do dedo da mão do motorista. O sinal analógico adquirido é filtrado e amplificado por um dispositivo eletrônico
especifico. O objetivo é analisar a variação da frequência cardı́aca no decorrer do tempo
e saber o estado de sonolência do motorista. Uma pessoa relaxada, entrando no estado
de sonolência, tende a ter uma frequência cardı́aca mais baixa e regular (Martins et al.,
2001).
O método de análise de imagens mede o número, a frequência e o grau de abertura/fechamento dos piscares em um perı́odo de tempo especifico. Em seguida, utiliza uma
abordagem bem conhecida e chamada de porcentagem de fechamento dos olhos (PERCLOS) e a velocidade média de fechamento/abertura dos olhos (AECS). Os conceitos
podem ser revistos na seção 2.4.
A combinação dos resultados dos dois métodos pode dar uma melhor precisão para
determinar o estado de sonolência do motorista. No entanto, o autor deixa claro que, se
houver problema, com um dos métodos (mau funcionamento ou o não funcionamento),
isto poderá influenciar negativamente nos resultados.
Capı́tulo 3
Sistema proposto
Neste capı́tulo serão detalhados os materiais e métodos usados para a elaboração de
uma arquitetura adequada para o problema de detecção de sonolência em motoristas.
Abordaremos os procedimentos utilizados para a captura, o processamento e a análise
de imagens digitais para detecção automática do estado de sonolência em motoristas, a
partir de vı́deos de imagens da face de motoristas, capturadas por uma câmera digital.
Primeiramente será apresentada a infraestrutura computacional utilizada nos experimentos, em seguida, as amostras de imagens de vı́deos de motoristas em variadas condições
de iluminação e, ainda, as etapas realizadas para alcançar os objetivos.
3.1
Arquitetura do sistema
A arquitetura do sistema segue modelos consagrados na literatura de visão computacional
(Alshaqaqi et al., 2013; Garcia et al., 2010; Boverie e Giralt, 2008), sendo seus componentes
principais a captação de imagens, o pré-processamento, a extração de caracterı́sticas, o
reconhecimento de padrões e a tomada de decisão, conforme a figura 3.1.
Destaca-se neste trabalho a importância da capacidade adaptativa do sistema às caracterı́sticas especı́ficas de cada motorista, principalmente em relação à detecção da face e
dos olhos, bem como ajustes de parâmetros do piscar, aumentando assim, a sensibilidade
do sistema de alerta.
3.2
Configuração do sistema
Nesta seção mostraremos de forma simples como são implementados os dispositivos e destacaremos os requerimentos necessários para que o sistema possa funcionar de maneira
27
CAPÍTULO 3. SISTEMA PROPOSTO
28
Figura 3.1: Arquitetura do sistema proposto com especificações das etapas do sistema e
sua interação com o ambiente.
correta. Também será mostrada a configuração dos dispositivos e as restrições identificadas no processo de posicionar os recursos utilizados em condições reais. Assim, numa
versão final para o usuário, o mesmo poderá reproduzir essas condições para êxito nos
objetivos propostos.
As condições de iluminação são fatores de restrição que impõem o uso de instrumentos
auxiliares em um dos casos que mostraremos a seguir.
O layout é definido de duas maneiras. Uma delas, em relação ao uso do sistema em
condições diurnas, em que será necessário apenas o dispositivo portátil, por exemplo, um
smartphone, como mostrado na figura 3.2 (a). Nesta condição foram observadas questões
de distância e posição do dispositivo no veı́culo. A câmera do dispositivo portátil e a
face do motorista estão a uma distância média de 50 cm, de forma que a imagem da
face do motorista se enquadra na tela da câmera do dispositivo. Nos experimentos, o
dispositivo ficava preso a um suporte comum para celulares no para-brisa do veı́culo. Em
condições noturnas ou em ambientes com pouca iluminação, é necessário o uso de câmera
IR (infravermelha) para captação das imagens do vı́deo. E como não há no mercado um
smartphone com iluminação IR suficiente para atender a necessidade de iluminação da
face do motorista (de forma a não perturbar sua visão), é necessário o auxı́lio de um
dispositivo (conjunto de LEDs IR) de iluminação IR, conforme disposto no layout da
figura 3.2 (b).
CAPÍTULO 3. SISTEMA PROPOSTO
29
Figura 3.2: Layout de protótipo. Condições de iluminação diurna (a) sendo apenas necessário um dispositivo portátil (1) e em condições noturnas (b) uma câmera IR (2) acoplada.
3.3
Instrumentação dos protótipos
O projeto foi desenvolvido em duas etapas de trabalho. A primeira em Matlab, utilizando
um laptop com processador de 2.6 GHz e 4GB de RAM. Nesta, foram realizadas a validação da proposta por meio da análise de amostras de vı́deos feitas em laboratório. A
segunda parte do trabalho foi transferir o conhecimento do método estudado e desenvolvido em Matlab para a plataforma Android, tendo esta, algumas vantagens em relação
à usabilidade para o usuário final do sistema, as quais serão apresentadas nas seções a
seguir.
Os dispositivos usados para a obtenção dos vı́deos são mostrados nas figuras 3.3 (a) e
(b). Em condições de pouca iluminação são usados como recurso de captura: uma câmera
de 30 quadros por segundo, sem filtro e um conjunto de 30 leds infravermelhos. Para
auxiliar na captura dos vı́deos é utilizado um laptop e, quando em ambiente iluminado, é
utilizado apenas um smartphone, modelo Motorola ATRIX 4G MB860, com sua câmera
interna de 30 quadros por segundo.
Figura 3.3: Layout de dispositivos usados na captura de vı́deos. (a) Câmera frontal de
Smartphone. (b) Câmera e conjunto de LED de iluminação infravermelha.
CAPÍTULO 3. SISTEMA PROPOSTO
30
Amostras realizadas à noite (figura 3.3 (b)) foram feitas com o auxı́lio de iluminação
IR para possibilitar que o algoritmo detecte as caracterı́sticas da face do motorista na
ausência de iluminação, principalmente a posição dos olhos.
3.4
Base de vı́deos
A base de vı́deos foi construı́da em ambiente de laboratório e em um automóvel conduzido
por motoristas em via pública e rodovia, em diversas condições de iluminação. Os vı́deos
gravados no automóvel em movimento têm por objetivo uma análise de um ambiente mais
próximo da realidade. Em todos os casos o motorista estava sendo acompanhado para
garantir sua segurança, principalmente nos momentos em que realizava uma simulação de
sonolência, como o fechamento dos olhos.
As amostras totalizam 30 vı́deos, com variados intervalos de tempo e diferentes pessoas,
no entanto, para nossa análise, nos restringimos a 17 vı́deos feitos em rodovias e com
aproximadamente 10 minutos cada, uma vez que, nas rodovias é onde ocorre o maior
número de acidentes por sonolência. De acordo com Souza et al. (2008) os acidentes
causados por sonolência são mais frequentes em situações monótonas, como por exemplo,
estradas vazias. Os vı́deos têm em média 30 quadros por segundo, isto é, em torno
de 17 mil quadros por vı́deo. Estes vı́deos estão disponibilizados para consulta na url
http://marceldias.com.br/projeto.
Para saber sobre as possı́veis restrições que o sistema poderia ter quanto à iluminação
e o uso de óculos, foram realizadas gravações de vı́deo com as configurações mais comuns.
Em nossos experimentos utilizamos as seguintes situações:
Figura 3.4: Iluminação e configuração do usuário quanto ao uso de óculos: (a) diurno sem
óculos, (b) noturno com óculos de sol, (c) noturno sem óculos e (d) noturno com óculos
de leitura.
• Diurno sem óculos, figura 3.4(a): foi necessário apenas um smartphone para obtenção do vı́deo, sem nenhuma modificação de sua estrutura ou filtros.
• Diurno com óculos de sol, figura 3.4(b): foi usada como recurso uma câmera sem
seu filtro e um laptop.
CAPÍTULO 3. SISTEMA PROPOSTO
31
• Noturno sem óculos, figura 3.4(c): foram usadas uma câmera sem filtro, iluminação
IR com 30 leds e um laptop.
• Noturno com óculos de leitura, figura 3.4(d): foram usados os mesmos recursos da
situação da figura 3.4(c).
A lista geral de amostras dos experimentos e suas caracterı́sticas de ambiente, obstruções, taxa de quadros por segundo e seus tempos podem ser comprovados na tabela 3.1.
Tais amostras foram realizadas com duas pessoas diferentes.
Tabela 3.1: Classe de amostras de vı́deos dos experimentos.
Condições do
Ambiente
Diurno
Diurno
Noturno
Noturno
3.5
Caracterı́sticas
do Motorista
Sem óculos
Óculos de sol
Sem óculos
Óculos de Leitura
Quantidade
de Vı́deos
06
04
06
01
Tempo Total(s)
3712
2429
3665
30
Detecção e rastreamento de imagens
A figura 3.5 mostra uma visão geral do método proposto, com as etapas de aquisição,
detecção e monitoramento da região de interesse. Primeiramente, captura-se a imagem
RGB e realiza-se um pré-processamento (conversão para a escala de cinza e redimensionamento do tamanho da imagem) para um resultado mais rápido. Na etapa da detecção
usa-se o algoritmo de Viola e Jones (2001) por sua eficiência e baixa taxa de erros. O
resultado da detecção é uma região retangular da face. Vale dizer que, outros detalhes
sobre o método serão abordados na próxima seção.
A próxima etapa e original deste trabalho foi detectar os olhos e o estado (aberto
ou fechado) na imagem retangular da face. Supondo que os olhos estavam no quadrante
superior da face, buscamos o pixel mais escuro, considerando que este fosse a pupila do
olho. A avaliação do estado do olho foi realizada a partir do comportamento da linha
horizontal de contraste (verificação de picos e vales na linha horizontal de contraste) com
espessura de um pixel e traçada horizontalmente sobre o ponto mais escuro na imagem a
cobrir todo o olho (região definida como pupila e esclera). Quando a linha de contraste
possui vales e picos, o olho está aberto (variação de intensidade do pixel da linha de
contraste). Do contrário, está fechado.
CAPÍTULO 3. SISTEMA PROPOSTO
32
Figura 3.5: Ilustração do processo de como ocorre a detecção de um piscar.
3.5.1
Detecção facial
A detecção de faces é uma etapa inicial em muitos sistemas e existem diversas técnicas
que podem ser utilizadas para essa tarefa, mas recentemente, o detector de objetos Viola
e Jones (2001) tem sido muito utilizado. O método é capaz de detectar faces com precisão
e eficiência.
O método pode ser descrito em três partes: A primeira é a representação da imagem
em um espaço de caracterı́sticas (chamadas de caracterı́sticas Haar ), e isto é feito com o
auxı́lio da imagem integral. A segunda é um classificador de caracterı́sticas com método
de aprendizagem de máquina, conhecido por Adaboost, capaz de selecionar as caracterı́sticas mais relevantes. E por último, um classificador em cascata para a combinação de
caracterı́sticas para obter melhor desempenho.
1. Caracterı́sticas Haar
Cada caracterı́stica representa uma diferença de intensidades entre áreas da imagem.
As caracterı́sticas usadas no arcabouço de detecção de Viola e Jones (2001) são chamadas
de Haar e representadas por um conjunto de caracterı́sticas retangulares de duas dimensões. Essas caracterı́sticas são responsáveis por diferenciar objetos uns dos outros, pois
cada conjunto de caracterı́sticas encontradas em um dado objeto possui diferenças em
relação aos conjuntos de caracterı́sticas encontradas também em outros objetos. As caracterı́sticas de detecção de objetos são representadas por três tipos: caracterı́sticas com
dois, três ou quatro retângulos, conforme ilustrado na figura 3.6.
O valor da caracterı́stica, quando aplicado na imagem é determinado pela diferença
CAPÍTULO 3. SISTEMA PROPOSTO
33
Figura 3.6: Formas de caracterı́sticas retangulares. Duas caracterı́sticas retangulares são
mostradas em (A) e (B). Em (C) é mostrada uma caracterı́stica de três retângulos e em
(D) uma caracterı́stica de quatro retângulos. (extraı́do de Viola e Jones (2001)).
entre a soma dos pixels na região branca e a soma dos pixels na região escura. E, para
otimizar o cálculo das caracterı́sticas é usada uma representação intermediária da imagem
e denominada de imagem integral (figura 3.7). O valor do ponto (x, y) da imagem integral
é dado pela soma dos pixels acima e à esquerda de x, y.
A imagem integral pode ser calculada pela equação:
X
ii(x, y) =
i(x0 , y 0 ),
x0 ≤x,y 0 ≤y
onde ii(x, y) é a imagem integral e i(x, y) é a imagem original.
Figura 3.7: O valor da imagem integral no ponto (x, y) é a soma de todos os pixels acima
e à esquerda. (extraı́do de Viola e Jones (2004)).
Após obter a imagem integral, é possı́vel encontrar o valor da caracterı́stica retangular
utilizando apenas os quatro pontos dos vértices da área de interesse. Para melhor compreensão, um exemplo é encontrar o valor da soma dentro da área D, da figura 3.8. Neste
caso, basta fazer o cálculo 4 + 1 - (2 + 3).
CAPÍTULO 3. SISTEMA PROPOSTO
34
Figura 3.8: Cálculo da caracterı́stica de uma imagem integral. (extraı́do de Viola e Jones
(2001)).
2. Classificação de caracterı́sticas
O método de classificação utilizado por Viola e Jones (2001) é chamado de AdaBoost
(Adaptive Boosting), e é uma técnica de aprendizado de máquina para a seleção de um
conjunto de classificadores fracos. Um classificador fraco é definido como regra de decisão
para classificar um dado objeto de positivo ou negativo. Após ter um conjunto de classificadores fracos, uma combinação linear ponderada desses classificadores é realizada para
se obter um classificador forte e, com isso, ganhar um aumento no desempenho da detecção. O AdaBoost, além de classificar, também treina os classificadores para encontrar as
caracterı́sticas relevantes no objeto para comparação nos conjuntos positivos e negativos
das imagens. Seguem as etapas do processo descrito por Viola e Jones (2001):
• As imagens de treinamento são dadas por (x1 , y1 ), ..., (xn , yn ), onde yi = [0, 1] indicam a imagem negativa e positiva, respectivamente.
1
, 2l1 para yi = [0, 1], onde m e l são os números de
• Os pesos são iniciados w1 ,i = 2m
amostras negativas e positivas, respectivamente.
• Para t = 1, 2, ..., T :
– Normalizar os pesos wt ,i ←
Pnwt ,i
j=1 wt ,j
– Selecionar o melhor classificador fraco de acordo com o seguinte erro ponderado:
P
∈t = minf ,p ,Θ i wi (xi , f, p, Θ) − yi .
– Definir ht (x) = h(x, ft , pt , Θt ) onde ft , pt e Θt ) são minimizados de ∈t
– Atualizar os pesos: wt +1,i = wt ,i t1−∈i onde ∈i = 0 se o exemplo xi é classificado
∈t
corretamente e ∈i = 1 caso contrário, e = 1−∈
t
• Ao término, o classificador forte é:
CAPÍTULO 3. SISTEMA PROPOSTO
(
f (n) =
1
0
35
PT
αt ht (x) ≥
caso contrário
t =1
1
2
PT
t =1
αt
onde αt = log β1t
Segundo Viola e Jones (2001) foi possı́vel obter uma taxa de 95% de acerto de detecção
no algoritmo de treinamento, onde um classificador de teste havia sido criado com 200
caracterı́sticas retangulares, aplicado num total de 14.804 imagens testadas, em que apenas
uma imagem foi tida como falso positivo.
3. Cascata de classificadores
A cascata (árvore) de classificadores tem por objetivo otimizar o reconhecimento de
objetos. A cascata é um conjunto de estágios de funções de classificação para diminuir
o número de falsos positivos. Já mostramos no tópico anterior que o método AdaBoot
pode criar um bom detector por meio de muitas caracterı́sticas, com uma alta taxa de
detecção. Porém, o uso de um único detector tem baixa velocidade de detecção, pois
é necessário calcular os valores de caracterı́sticas para todas as subjanelas da imagem.
Sendo assim, para melhorar o desempenho, vários estágios de classificadores são criados
para eliminar subjanelas que não correspondam às caracterı́sticas procuradas, diminuindo
assim o número de subjanelas de verificação. O objetivo da cascata de classificadores
é eliminar um grande número de regiões que não contém a região de interesse logo nos
estágios iniciais e, assim, nos estágios mais avançados, garantir que os classificadores sejam
cada vez mais precisos para evitar o falso positivo na região de interesse.
Figura 3.9: Cascata de classificadores. (adaptado de Viola e Jones (2001)).
A representação de uma cascata de classificadores é mostrada na figura 3.9, onde são
representados os estágios dos classificadores. Cada um destes estágios (estágio 1, estágio
2,..., estágio n) deve descartar ao máximo o número de subjanelas (regiões da imagem)
que não contém a região de interesse, a fim de diminuir a quantidade de processamento
de outras subjanelas da imagem original.
CAPÍTULO 3. SISTEMA PROPOSTO
3.6
36
Avaliação de desempenho do sistema
Na avaliação de desempenho, utilizaremos as métricas de precisão e sensibilidade. Essas
são as principais métricas utilizadas em sistemas de extração de informação (Matos et al.,
2009; Tan et al., 2005), por analisar acertos e erros. Com isto, mediremos o estado do olho,
aberto ou fechado. A precisão mede a proporção de Verdadeiros Positivos classificados. A
sensibilidade mede a capacidade do sistema em identificar corretamente um piscar entre
aqueles que ocorreram, ou seja, o quão sensı́vel é o sistema. Os parâmetros para cálculo das
medições de desempenho estão definidos aqui como VP, FN, FP e VN, que respectivamente
são quantidade de verdadeiro positivo, falso negativo, falso positivo e verdadeiro negativo.
Os falsos positivos ocorrem quando há detecções de piscares quando não houve piscar.
E um falso negativo ocorre no caso em que a detecção falha em detectar um piscar,
quando este está corretamente sobre a região da imagem a ser detectado o piscar. Em
conjunto com esses erros, usa-se o verdadeiro positivo (VP), ou seja, o total de acertos
para computar a precisão e a sensibilidade, as quais estão dispostas, consecutivamente,
nas equações:
P recisao =
VP
V P +F P
e Sensibilidade =
VP
,
V P +F N
onde V P representa o número de verdadeiros positivos (acertos), F P o número de falsos
positivos e F N o número de falsos negativos. No que diz respeito aos testes, selecionamos
uma amostra para análise da avaliação do sistema e discussão de seus resultados. Os vı́deos
usados nos experimentos foram selecionados aleatoriamente da base de vı́deos mostrados
na seção 3.4 cujas caracterı́sticas estão descritas a seguir:
• Sequência 1 (S1): gravada durante o dia, duração de 10 minutos, gravada no celular
Samsung Galaxy S4, com resolução 640x480 pixels a uma taxa de 30 quadros por
segundo, utilizando câmera frontal.
• Sequência 2 (S2): gravada durante a noite, duração de 10 minutos, gravada na
webcam de computador, com resolução 640x480 pixels e uma taxa de 30 quadros
por segundo.
Capı́tulo 4
Implementação do protótipo
Desenvolvemos um sistema em linguagem Matlab com o propósito de testar a viabilidade
da metodologia proposta. O Matlab foi escolhido por ter alto desempenho para cálculos
numéricos, praticidade com o tratamento e o processamento de imagens, possuir funções
pré-definidas de filtros, além da facilidade em manipular matrizes e plotar gráficos, que
ajudam a demonstrar de forma clara e objetiva os resultados alcançados.
O sistema proposto para dispositivo portátil foi projetado e estudado, contudo não
chegou a ser desenvolvido a ponto de detectar o estágio de sonolência, no entanto, parte
dos recursos foram implementadas para demonstrar as funcionalidades necessárias para
o funcionamento do sistema portátil na plataforma Android. Desta forma, foi possı́vel
avaliar a viabilidade e as limitações nos testes aplicados.
4.1
Sistema em Matlab
Na figura 4.1 é mostrada a tela de interface do sistema desenvolvido em Matlab. As
entradas configuráveis na interface do sistema foram dispostas para facilitar a alteração
de valores dos parâmetros de processamento das imagens, com a finalidade de estudo para
a validação dos parâmetros mais adequados para determinada condição de iluminação,
qualidade de imagem e/ou alguma caracterı́stica especifica da amostra. Essas entradas
serão mencionadas no decorrer das próximas seções. Entre elas estão os parâmetros de
redimensionamento da janela de busca do olho, tamanho mı́nimo de face de busca na
imagem, tempo de busca da face, intervalo de análise do piscar, comprimento da linha do
olho para análise de contraste, altura e duração do pico do contraste.
37
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
38
Figura 4.1: Tela de interface com o usuário do sistema. Nesta tela é possı́vel configurar
parâmetros de entrada e saı́da do sistema.
4.1.1
Pré-processamento de imagens
Nesta etapa, realiza-se o tratamento das imagens de vı́deo conforme cada imagem de
entrada. As imagens são capturadas no formato de cor RGB e de imediato faz-se uma
redução da imagem, por padrão, redimensionada para 50% de seu tamanho original e,
em seguida, a imagem é convertida para tons de cinza, eliminando a cor e a saturação,
porém mantendo a luminosidade. As escolhas de valores e procedimentos realizados nessa
etapa passaram por vários testes para encontrar os valores e os ajustes necessários para
um menor custo computacional, sem comprometer as informações necessárias.
4.1.2
Detecção de face
A detecção de face é feita sobre a imagem resultante da etapa de pré-processamento
automático da imagem. Para detectar a face utilizamos o toolbox Matlab, cujo método
de detecção de objetos de Viola e Jones (2001), detalhado na seção 3.5.
A detecção de face é realizada a cada intervalo de tempo. Após vários experimentos,
definimos que o intervalo seguro para um menor número de erros de detecção é de 5
segundos, já que o objetivo da busca da face é encontrar a região dos olhos do motorista
e rastreá-la para a análise do estado do olho, aberto ou fechado. A verificação da face
é necessária para renovar as informações da região de busca do olho, certificando assim,
que a região de interesse é a mesma.
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
39
Além de detectar a face na imagem, o sistema também distingue qual a maior face,
caso apareça mais de uma na imagem. Com isso, é possı́vel saber qual a face do motorista.
Por exemplo, se houver um passageiro no veiculo e este também apareça na imagem, o
sistema vai considerar a face mais próxima da câmera, fazendo assim, o uso da maior face
na imagem.
4.1.3
Detecção e avaliação do estado do olho
A detecção e avaliação do estado (aberto/fechado) do olho é feita por meio do método
original deste trabalho, chamada de linha de contraste de detecção. A área dos olhos é supostamente definida no quadrante superior da região da face. Neste quadrante detectamos
o pixel mais escuro, supondo que este seja a pupila do olho. Neste ponto, traça-se uma
linha horizontal com um pixel de espessura, de modo a cobrir todo o olho e, a partir daı́,
será analisado o comportamento da linha (variação dos valores dos pixels da linha) para
definir o estado do olho. Para uma linha com alto contraste entre esses valores (quando
ocorrem picos e vales) é considerado que o olho está aberto (quando a linha passa sobre a
pupila e a esclera), caso contrário, supomos que o olho está fechado (a linha de contraste
possui pouca variação entre seus valores). A imagem da figura 4.2 representa a linha de
contraste de detecção sobre o olho, cobrindo horizontalmente a pupila e a esclera.
Figura 4.2: Estrutura externa do olho e a linha de contraste de detecção.
A estimativa da região dos olhos ocorre após a localização da região da face (seção
anterior). Após localizar o ponto mais escuro da pupila, é definido um retângulo no
entorno dessa região, o qual, supõe-se ser o olho. A janela dessa imagem será usada como
referência para a próxima etapa do sistema de rastreamento do olho. A figura 4.3 ilustra
a localização da região do olho em nosso sistema.
Na figura 4.3(c) temos a representação da linha de contraste do olho. Essa linha possui
tamanho limitado e é traçada horizontalmente sobre o ponto mais escuro da pupila para
mensurar a diferença de contraste com a região da esclera. Com a informação da diferença
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
40
Figura 4.3: Tela do sistema. (a) Detecção de pixel mais escuro da pupila. (b) Imagem da
região do olho. (c) Linha de intensidade de contraste.
de contraste, obtém-se a amplitude do contraste que será utilizada para saber o estado do
olho: aberto ou fechado.
4.1.4
Rastreamento da região de interesse
O rastreamento do olho é realizado por meio da janela de detecção do olho na etapa
anterior, isto é, na menor imagem recortada da face em torno do olho. A cada quadro,
supõe-se que a região do olho esteja dentro da região delimitada na imagem e que há
pouco deslocamento da face do motorista. Considera-se ainda, que o olho esteja sempre
na horizontal, uma vez que não há tantos movimentos do motorista durante a condução
do veiculo em uma estrada.
A cada intervalo de tempo (em nossos experimentos utilizamos uma faixa de 5 segundos, ou seja, em termos de quadros, uma média de 150 quadros) a busca é refeita em
toda a imagem da detecção da face e dos olhos, para corrigir estes erros de deslocamento
e renovar as informações da região de busca do olho, comprovando assim, que a região de
interesse é a mesma.
4.1.5
Estimação do estado de sonolência
Neste momento, já temos a região da imagem do olho e, com os dados da linha de intensidade de contraste, conseguimos distinguir quando o olho está aberto ou fechado,
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
41
além de saber por meio da variação de contraste, quando iniciou e terminou o evento de
fechamento e abertura do olho.
Figura 4.4: Análise de contraste. (a) Olho aberto com muita variação na amplitude. (b)
Olho fechado com pouca variação na amplitude.
A medida de duração do piscar é feita em intervalos de tempo pré-definidos, com o
intuito de diminuir o custo computacional e ter respostas breves de análise destes intervalos.
O cálculo de quando houve piscar é realizado com os dados de amplitude do contraste, estes obtidos por meio da linha horizontal de contraste do olho. O sistema verifica
quando ocorrem os picos, dentro do limiar pré-definido e calcula quanto tempo esses picos
permanecem abaixo deste limiar.
Com esses picos conectados em um intervalo de tempo, obtém-se a frequência de
piscar, inferindo uma taxa de quadros em que os olhos estão fechados, podendo alertar
que o individuo entrou em estado de sonolência.
Uma vez comprovado o estado de sonolência, o sistema emite um alerta sonoro e visual
ao motorista, despertando-o assim, de seu estado de sonolência.
4.2
Análise de viabilidade de um sistema portátil
Nesta seção, apresentaremos o estudo de viabilidade e testes de desempenho realizados,
aplicando-se bibliotecas de código aberto de visão computacional, OPENCV. O objetivo
é mostrar a viabilidade de realizar este trabalho, por meio de uma aplicação desenvolvida dessas bibliotecas, para detecção e rastreamento de face e olhos. A aplicação foi
desenvolvida em linguagem Java, voltada para a plataforma Android.
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
4.2.1
42
Plataforma de desenvolvimento
A plataforma de desenvolvimento escolhida e usada neste trabalho foi composta por IDE
Eclipse 4.2 (Juno), plataforma Android SDK e gerenciador de API OPENCV 2.4.6. Tal
escolha deve-se ao grande número de dispositivos presentes no mercado, possibilitando
que a solução chegue à maioria dos usuários de dispositivos portáteis, que são motoristas de veı́culos, no entanto, não foram excluı́dos os operadores de fábrica, os monitores
de sistemas de controle de patrimônio, os controladores de voo e, entre outros, os que
necessitam de alguma forma de um sistema de detecção e alerta de sonolência.
O ambiente para o desenvolvimento da aplicação é bem simples, entretanto há uma
diferença deste projeto em relação à maioria dos desenvolvedores de aplicações para Android. Muitos desenvolvem e testam suas aplicações apenas com emulador do Android
no computador de desenvolvimento, mas em nosso caso são manipulados os recursos de
hardware (câmera) do dispositivo. Assim, faz-se necessária a utilização de dispositivo
portátil no desenvolvimento.
4.2.2
Testes da aplicação em Android
Nos testes de avaliação foram consideradas as condições de iluminação, o hardware usado
e o tempo de execução da aplicação. Os testes foram realizados em rodovias, em duas
etapas: a primeira em condições de iluminação natural da luz do dia e a segunda à noite,
com uso da iluminação IR. A figura 4.6 mostra a tela do protótipo de testes em execução,
detectando a região da face, olhos e pupila.
Figura 4.5: Tela da saı́da gráfica do aplicativo ”face detection”do pacote OPENCV 2.4.6.
Durante o dia, os testes foram aplicados em motoristas com e sem óculos e, à noite,
os testes também foram aplicados com duas pessoas, mantendo-se o ambiente anterior
do dia. Para o dispositivo portátil, não houve uma base de dados ou vı́deos, uma vez
CAPÍTULO 4. IMPLEMENTAÇÃO DO PROTÓTIPO
43
que os vı́deos capturados eram processados simultaneamente pela aplicação. A analise
de seu desempenho foi puramente por observação, pois a aplicação ainda não havia sido
desenvolvida por completo para contemplar o armazenamento dos dados processados. A
seguir, temos as caracterı́sticas do ambiente de processamento.
Para os testes, foram utilizados como recursos um smartphone usando sua câmera
frontal e um conjunto de leds infravermelhos. Na tabela 4.1 está detalhada a capacidade
de processamento do dispositivo.
Tabela 4.1: Configuração de dispositivos portáteis usados nos testes
Marca/Modelo
Samsung/Galaxy S4
Processador
Quad-core 1.9GHz
Memória
RAM
2 GB
Quadros por
Segundo
30
Versão SO
4.2 (Jelly Bean)
Capı́tulo 5
Resultados e discussão
Os resultados aqui apresentados estão organizados na seguinte sequência: variação temporal do contraste, frequência e duração do piscar para análise de tempos.
5.1
Variação temporal do contraste
Analisando a variação do contraste de um dos olhos ao longo do tempo, foi possı́vel
detectar a abertura e o fechamento do olho a partir da detecção dos picos e vales, respectivamente. E com a avaliação da permanência do estado do olho com alto ou baixo
contraste, foi possı́vel estimar a duração de cada fase do piscar.
A figura 5.1 ilustra a análise dos dados da relação da amplitude com o tempo decorrido,
representado pelos quadros ao longo do vı́deo. Os valores de contraste foram obtidos
automaticamente pelo sistema que detecta o contraste do estado do olho, isto é, aberto
ou fechado, representado respectivamente por picos na amplitude e, seu valor médio para
olho aberto foi de aproximadamente 0.5 da amplitude do contraste. A detecção do estado
ou não de sonolência foi analisada pelos dados do contraste, por um limiar de profundidade
de pico e verificação de pontos conexos no decorrer do tempo. Por fim, obtivemos uma
avaliação manual de um observador humano (groundtruth) que analisa o real estado do
olho. Os valores representados no gráfico por Sistema (detecção do piscar) e groundtruth
são booleanos, e são expressados por 0.5 para positivo e 0.0 para negativo. Os valores
representados por Contraste são a variação real da intensidade da linha que passa sobre
o olho.
A avaliação dos vales do segmento da figura 5.1 teve como limiar de duração de pico o
valor de 33% da mediana do contraste, isto é, a medição do número de quadros só ocorreu
para cada pico quando este estava abaixo do limiar definido.
44
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
45
Figura 5.1: Variação temporal do contraste, detecção automática de piscar e avaliação
groundtruth.
5.2
Frequência e duração do piscar
A frequência do piscar foi analisada conforme a quantidade de fechamentos do olho sobre
o intervalo de tempo definido pelo usuário do sistema. Este intervalo é a variação do
contraste, dado pela linha horizontal de intensidade que atravessa o olho, entre a pupila
e a esclera. Com isso, pode-se mensurar a quantidade de quantos piscares do condutor
de um veı́culo durante um intervalo de tempo, medindo assim o quão sonolento ele pode
estar.
A fadiga em uma pessoa ocorre com o passar do tempo, portanto, é natural que
gradativamente o nı́vel de cansaço aumente no individuo e o piscar tenda a ter durações
diferenciadas. Estudos usando EEG mostraram que a tendência é que o condutor tenha
movimentos mais lentos no fechamento dos olhos e, assim, pode-se por meio da frequência,
delimitar alertas diferenciados para estágios de sonolência do condutor.
Conforme dito anteriormente, uma análise de sonolência tem base na frequência e o
quão demorado está sendo cada piscar. Então, de posse da frequência com determinado
intervalo de tempo, foi realizada a verificação de duração de cada piscar para definir o
quão critico é o estado de sonolência do condutor do veiculo.
Utilizamos um cálculo para detectar componentes conectados (sequência de quadros
com os olhos fechados) na imagem e quantificar o número de piscares para avaliar o
tempo de fechamento dos olhos. Medimos a duração mı́nima, média e máxima do piscar
dentro de um intervalo, sendo este intervalo definido em uma janela de dois segundos, no
entanto, este critério pode ser alterado no sistema. Este valor foi definido como intervalo de
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
46
segurança para análise e resposta ao condutor. Fazendo um simples cálculo de velocidade
podemos exemplificar o critério escolhido: imagine um veiculo a uma velocidade de 100
quilômetros por hora. Este, em 2 segundos, se deslocará a uma distância aproximada de
55 metros, sendo que, um valor inferior já seria suficiente para colocar em risco a vida do
condutor e demais passageiros do veiculo.
A figura 5.2 mostra a tela do sistema de analise de duração do piscar a cada dois
segundos. Temos neste gráfico a duração de piscares representados no eixo ”‘número de
quadros”’ versus ”‘tempo”’, e os valores estão representados por pontos azuis, verdes e
vermelhos, que respectivamente são duração mı́nima, média e máxima. Quando ocorrer
de aparecer apenas um dos pontos no gráfico, significa que todos os pontos se coincidem.
Figura 5.2: Gráfico do sistema obtendo duração do piscar. Pontos azuis, verdes e vermelhos, representam duração mı́nima, média e máxima de piscares, respectivamente. Os
dados foram obtidos a cada 2 segundos.
A partir deste ponto, mostramos análises quantitativas de duração mediana dos piscares. Os dados foram computados por meio da soma do número de quadros de um piscar,
isto é, o tempo no qual os olhos permanecem fechados e utilizamos a mediana para analisar
sua tendência central ao longo de uma janela de tempo.
Utilizamos ainda mediana para obter valores centrais da amplitude do contraste, pois
os dados neste intervalo são mais confiáveis e estáveis quando se trata de uma curva que
tende a diminuir e aumentar quando ocorre o piscar. Na prática, quando a quantidade de
valores do segmento do vetor for ı́mpar, a mediana é o valor central da amostra. Nesse
caso, há a mesma quantidade de valores acima e abaixo desse valor. Caso a quantidade
de valores da amostra seja par, é preciso tirar a média dos valores centrais para calcular
a mediana.
A tendência dos dados da amostra S1 e S2 encontra-se nos gráficos 5.3 e 5.4, que
representam a duração mediana do piscar de ambiente diurno e noturno, respectivamente.
Observe que os valores de duração foram analisados em comparação com os dados de
groundtruth e do sistema, os quais mantiveram valores sempre próximos um do outro,
coincidindo algumas vezes, como mostra o segundo e terceiro valor e, os demais, com uma
diferença média de dois quadros de duração.
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
47
Figura 5.3: Duração mediana do piscar. Análise do Sistema com groundtruth (GT) em
ambiente diurno.
Figura 5.4: Duração mediana do piscar. Análise de comparação do Sistema com o groundtruth (GT) em ambiente noturno.
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
48
Outra importante análise foi a quantificação de piscar, mostrando o quanto o sistema
acerta. Na amostra dos experimentos foram quantificados o piscar e a proporção de
acertos do número de piscares do sistema sobre groundtruth. Observe o gráfico 5.6 de
vı́deo gravado em ambiente noturno. Houve uma diferença de pouco menos de cinco
piscares de duração.
Figura 5.5: Número de piscares e proporção de acertos entre o sistema e o groundtruth
em ambiente diurno. Amostra S1 com intervalos de 60 segundos.
O gráfico 5.5 mostra a quantificação de piscares feitos em modo diurno. Os resultados
mostraram uma variação maior que os dados em modo noturno, apresentados no gráfico
5.6. Isto deve-se a uma melhor detecção de caracterı́sticas, visto que a câmera noturna não
possui filtro infravermelho, tendo maior entrada de luz e, consecutivamente, a obtenção de
mais detalhes do vı́deo com o auxilio da iluminação de leds infravermelhos. Cabe ressaltar,
ao final da análise, que o sistema teve mais acertos que o groundtruth, o que significa que
o mesmo teve detecções onde não houve. Contudo, esses valores não ultrapassaram cinco
piscares.
Outros resultados analisados com as mesmas amostras anteriores, S1 e S2, foram as
medidas de desempenho de precisão e sensibilidade. Essas medidas de desempenho foram
descritas na seção 3.6, lembrando que as siglas VP, FN, FP e VN, são respectivamente,
Verdadeiro Positivo, Falso Negativo, Falso Positivo e Verdadeiro Negativo. E as equações
de precisão e sensibilidade estão definidas como: precisão = VP / (VP + FP) e sensibilidade = VP / (VP + FN). De uma forma mais simples, em relação ao piscar, VP detecta
quando tem, FN não detecta quando tem, FP detecta sem ter e VN não detecta quando
não tem.
Apresentamos os resultados dos experimentos com a mensuração dos parâmetros de
precisão e sensibilidade, sendo apresentado no gráfico 5.7, o experimento diurno, e o vı́deo
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
49
Figura 5.6: Número de piscares e proporção de acertos entre o sistema e o groundtruth
em ambiente noturno. Amostra S2 com intervalos de 60 segundos.
capturado com câmera frontal de Smartphone Samsung Galaxy SIV e no gráfico 5.8, o
experimento em ambiente noturno com câmera sem filtro IR. As especificações detalhadas
dos dispositivos estão na seção 3.6.
Figura 5.7: Resultado da amostra S1 (ambiente diurno) de precisão e sensibilidade com
intervalos de 60 segundos. Os resultados foram obtidos do sistema desenvolvido em Matlab
de vı́deo, de duração de 603 segundos.
Um ponto importante de se destacar, a partir da análise dos resultados é que foram
considerados piscares quando houve ocorrência superior de dois quadros consecutivos de
olhos fechados, isto é, quando o sistema retornava valores acima de dois pontos conectados.
Isso nos garante eliminar ruı́dos que, geralmente, ocorrem por meio de movimentos bruscos
da câmera, devido ao movimento do veiculo ou do próprio usuário.
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
50
Figura 5.8: Resultado da amostra S2 (ambiente noturno) de precisão e sensibilidade com
intervalos de 60 segundos. Os resultados foram obtidos do sistema desenvolvido em Matlab
de vı́deo, de duração de 619 segundos.
Foram analisados os vı́deos gravados em laboratório, dirigindo nas ruas dentro da
cidade e na rodovia. Para nosso estudo, colocamos neste trabalho os resultados de análises
em rodovias, visto que é onde realmente ocorrem os acidentes de trânsito (Souza et al.,
2008). No entanto, não podemos deixar de citar que, em experimentos dentro da cidade,
ocorreu um elevado número de falsas detecções. Analisando o vı́deo de experimentos
na cidade, verifica-se que a grande quantidade dessas falsas detecções deve-se às más
condições das ruas, ao grande número de movimentos com a cabeça para contornar o
veiculo em determinada rua, desvio do olhar para verificar semáforos, retrovisores e demais
situações que chamavam a atenção do motorista. Portanto, observamos que, dentro da
cidade, a distração ocorre mais por ruı́do e não por sonolência.
O foco deste estudo foi de analisar resultados em condições reais nas estradas, onde os
acidentes por sonolência são mais frequentes. Neste ambiente, o motorista está mais atento
a tudo o que está à sua frente, mantendo sua face voltada para a câmera e, diminuindo
assim, o número de falsas detecções.
Quanto ao consumo de tempo do algoritmo, alguns parâmetros merecem destaque,
como: tamanho da janela de busca da face e redimensionamento da janela de busca do
olho. Estes parâmetros podem tornar o algoritmo mais rápido ou lento. Neste estudo
encontramos valores como padrão de entrada que devolvem melhor taxa de acerto e desempenho para os parâmetros da chamada de função de busca da face. Definimos uma
janela de cinco segundos e o fator de ROI do olho em 40% de seu tamanho original, dentre
os vários testes realizados.
Os resultados mostraram que o uso do método Viola e Jones (2001) na detecção
CAPÍTULO 5. RESULTADOS E DISCUSSÃO
51
de face, em conjunto com o nosso método, linha de contraste de detecção, retornaram
bons resultados. Verificamos que, em ambiente diurno, houve maior número de falsos
positivos e, na análise dos vı́deos, foram encontrados borrões na imagem devido ao fato
de, em alguns momentos, o smartphone ter balançado quando o veiculo passava em um
trecho danificado da rodovia e o peso do dispositivo fazia o suporte balançar por mais
tempo do que a câmera usada em ambiente noturno. Em ambiente noturno os resultados
tiveram maior deficiência com os falsos negativos, pois não havia um controle eficaz de
luminosidade, devido ao não uso de filtro na câmera, sendo este um dos requisitos para
que fossem possı́veis as gravações noturnas com o auxilio da iluminação infravermelha.
Capı́tulo 6
Conclusões
Nesta seção serão apresentadas as conclusões obtidas neste trabalho e as devidas considerações para trabalhos futuros.
6.1
Considerações finais
Neste documento, foi proposto o desenvolvimento de um aplicativo para dispositivos portáteis para detecção e alerta do estado de sonolência para motoristas. Tal dispositivo
pode auxiliar na prevenção de acidentes causados por vários fatores, como o cansaço ou a
distração do motorista. A proposta aqui detalhada, apresenta um estudo inserido numa
área que está atualmente em desenvolvimento e, em constante expansão e, que procura
explorar um problema já conhecido e estudado sobre várias formas de aplicação, mas sob
um ponto de vista mais estrutural, por meio da utilização de caracterı́sticas de imagens
para a detecção de piscar em motoristas.
O problema de detecção do estado de sonolência em motoristas é uma área que tem
recebido bastante atenção na atualidade, apresentando soluções variadas para tratá-lo.
Cada vez mais se investe em tecnologias portáteis, que não necessitam conectar sensores/dispositivos ao corpo do motorista, visto que isto causam desconforto e alguns não
são fáceis de manusear, além de não haver garantia de que os motoristas os usarão de
maneira adequada.
A tecnologia mais próxima a nossa proposta, descrita nos capı́tulos anteriores, está patenteada pela (Chai e Kujawa, 2009), mas em suas reivindicações não resolve o problema
de detecção de sonolência em condições de pouca iluminação. A maioria dos acidentes
ocorre no perı́odo noturno e de madrugada e, para solucionar este problema, propusemos neste trabalho, uma possı́vel solução, descrita no documento de patente de invenção
(Apêndice A). Tal proposta abrange os pontos ainda não explorados nas pesquisas da área
52
CAPÍTULO 6. CONCLUSÕES
53
e, para conformidade, está em processo de tramitação pelo NIT (Núcleo de Informação
Tecnológica) da UFABC junto com o INPI (Instituto Nacional de Propriedade Industrial), órgão do governo federal, responsável por cuidar do direito de patente na concessão
e garantia de direitos de propriedade intelectual do inventor.
Com o objetivo de discutir e ampliar o campo de visão do trabalho desenvolvido até
o momento, este foi submetido em forma de artigo e aceito pelo SPGABC (simpósio de
pesquisa do grande ABC) de 2012. Este é um evento cientı́fico interdisciplinar, realizado
na região do grande ABC paulista e que está em sua segunda edição, com o objetivo de
reunir pesquisas relevantes de programas de pós-graduação de universidade da região. O
trabalho não pôde ser apresentado devido a uma exigência do INPI quanto ao sigilo do
invento, até que seja concluı́do o depósito da patente, de forma a não perder o status de
novidade.
Os resultados apresentados sugerem também que a abordagem proposta é viável, mas
sendo ainda necessário desenvolvê-la para dispositivo portátil com tempos de resposta
curtos. Particularmente, os principais desafios serão a melhoria da detecção dos olhos
e a diminuição do processamento necessário para o alerta. O primeiro será focado no
estudo de como aumentar as detecções positivas dos olhos do motorista, enquanto que o
segundo deverá possibilitar que o aplicativo seja executado em tempo real em dispositivos
portáteis.
6.2
Sugestões de trabalhos futuros
A seguir serão apresentadas algumas sugestões para trabalhos futuros, identificados como
oportunidades de evolução do trabalho. Alguns dos tópicos listados têm como objetivo
tornar esse trabalho mais completo, explorando aspectos que não cabem no tempo do
programa de mestrado e serão deixados como sugestões para melhorias.
• Uso de registro de EEG para validação da detecção de sonolência. O registro de
EEG é considerado o indı́cio mais objetivo e confiável do estado de sonolência de
uma pessoa. Na avaliação do sinal de EEG, normalmente considera-se a amplitude
da energia em diferentes frequências, sendo estas classificadas em Delta (<3,5), Teta
(4-7), Alfa (8-13) e Beta (14-25Hz). O nı́vel de sonolência normalmente é indicado na
banda Teta (Shaaban et al., 2004). Além do grau de sonolência, o registro de EEG
é válido para conferir a precisão do sistema na detecção de fechamento e abertura
do olho. Esta técnica descrita foi abordada no trabalho de ? com significativos
resultados de validação.
• Implementação de sistema de detecção remota de sonolência deste estudo em plata-
CAPÍTULO 6. CONCLUSÕES
54
forma para dispositivo portátil.
• Protótipo do sistema para dispositivo portátil ao mercado, com as devidas especificações necessárias para o bom funcionamento, em consonância com os requisitos
identificados e validados no ambiente de testes da implementação do sistema e, que
atenda os principais objetivos, dentre eles, com destaque a prevenção de acidentes,
gerando retorno à sociedade.
• Uso de realidade virtual 3D. Uma significativa avaliação é a realização de testes com
motoristas em ambiente de realidade virtual 3D, em conjunto com o levantamento de
atividade eletroencefalográfica do motorista, de forma a registrar simultaneamente
os dados de coleta. Vale ressaltar que este tipo de experimento não oferece qualquer
risco aos sujeitos, apenas sendo necessário um alto investimento em equipamentos
desta natureza.
Referências Bibliográficas
ABC-NEWS (2013).
Seeing machines uses eye-tracking technology to monitor
for distracted or fatigued drivers.
http://www.abc.net.au/news/2013-05-29/
eye-tracking-technology-watches-out-for-sleepy-drivers/4720240.
Alshaqaqi, B., Baquhaizel, A. S., Ouis, M. E. A., Boumehed, M., Ouamri, A., e Keche,
M. (2013). Vision based system for driver drowsiness detection. IEEE Xplore Digital
Library.
Boverie, S. e Giralt, A. (2008). Driver Vigilance Diagnostic Based on Eyelid Movement
Observation. Proceedings of the 17th World Congress. The International Federation of
Automatic Control., pgs. 1–6.
Chai, S. M. e Kujawa, G. A. (2009). Vision based alert system using portable device with
camera.
Coetzer, R. e Hancke, G. (2011). Eye detection for a real-time vehicle driver fatigue
monitoring system. IEEE Intelligent Vehicles Symposium., 4.
Farina, A. e Marana, A. (2012). Biomobile: Sistema biométrico de identificação de usuários em dispositivos móveis na plataforma android. UNESP.
Fernandes, R. (2006). O Sono Normal. Simpósio de Medicina: Distúrbios Respiratórios
do Sono, pgs. 157–168.
Garcia, I., Bronte, S., Bergasa, L., Hernandez, N., Delgado, B., e Sevillano, M. (2010).
Vision-based drowsiness detector for a realistic driving simulator. Intelligent Transportation Systems (ITSC), 2010 13th International IEEE Conference on, pgs. 887–894.
GARTNER (2013). Market share: Mobile communication devices by region and country.
Technical report. http://www.gartner.com/newsroom/id/2573415.
Girotto, E., Mesas, A. E., de Andrade, S. M., e Birolim, M. M. (2013). Psychoactive
substance use by truck drivers: a systematic review. Technical report. http://www.
oem.bmj.com.
55
REFERÊNCIAS BIBLIOGRÁFICAS
56
Grace, R. (2001). Drowsy driver monitor and warning system. International Driving
Symposium on Human Factors in Driver Assessment, Training and Vehicle Design.,
pgs. 1–5.
Group, H. S. (2010). Eyealert fatigue warning system. http://www.eyealert.com/ea/
eadetail.html.
Guimaraes, K. (2008). Efeitos dos exercı́cios orofarı́ngeos em pacientes com apnéia obstrutiva do sono moderada: Estudo controlado e randomizado. Banco de Teses: Faculdade
de Medicina da USP.
Horng, W. e Chen, C. (2008). Driver fatigue detection system based on eye tracking and
dynamic template matching. Tamkang Journal of Science and Engineering, 11(1):65–
72.
Horng, W. B., Chen, C. Y., Peng, J. W., e Chen, C. H. (2012). Improvements of driver
fatigue detection system based on eye tracking and dynamic template matching. Wseas
Transactions on Information Science and Applications, 9(1).
Hu, D.-I., hua Zhao, X., chun Mu, Z., hui Sun, D., e liu, K. (2013). Distinguish method
of fatigue state based on driving behavior wavelet analysis. Proceedings of the 32nd
Chinese Control Conference, pgs. 3590–3596.
Ji, Q. e Yang, X. (2002). Real-time eye, gaze, and face pose tracking for monitoring driver
vigilance. Elsevier Science Ltd, 8(5):357377.
Ji, Q., Zhu, Z., e Lan, P. (2004). Real-time nonintrusive monitoring and prediction of
driver fatigue. IEEE Transactions on Vehicular Technology., 53(4).
Kim, Y., Kim, Y., e Hahn, M. (2008). Detecting driver fatigue based on the drivers
response pattern and the front view environment of an automobile. Second International
Symposium on Universal Communication, pgs. 237–240.
Knauth, D. R., Leal, A. F., Pilecco, F. B., Sefner, F., e Teixeira, A. M. F. B. (2012).
Staying awake: truck drivers’ vulnerability in rio grande do sul, southern brazil. Revista
Saúde Pública, 46(5). http://www.scielo.br/rsp.
Krueger, S. e Calway, A. (1996). Multiresolution motion estimation using an affine model.
CSTR, (96-002).
Lang, L. e Qi, H. (2008). The study of driver fatigue monitor algorithm combined perclos
and aecs. IEEE Computer Society, pgs. 349–352.
Lecheta, R. (2001). Google Android 2a edição. Novatec, São Paulo.
REFERÊNCIAS BIBLIOGRÁFICAS
57
Lee, B.-G. e Chung, W.-Y. (2012). Multi-classifier for highly reliable driver drowsiness
detection in android plataform. Biomedical Engineering: Applications, Basis and Communications, 24(2):147–154.
Liu, C. (2012).
Face detection with android apis.
Technical report, Developer, QuinStreet Inc. http://www.developer.com/ws/android/programming/
face-detection-with-android-apis.html.
Liying, L. e Haoxiang, Q. (2008). The study of driver fatigue monitor algorithm combined
perclos and aecs. 1:349–352.
Machines, S. (2011). Driver state sensor. Technical report, Seeing Machines Limited.
Martins, P. J. F., de Mello, M. T., e Tufik, S. (2001). Exercı́cio e sono. Technical Report 1.
http://www.scielo.br/scielo.php?pid=S1517-86922001000100006&script=sci_
arttext&tlng=es.
Matos, P. F., Lombardi, L. O., Ciferri, R. R., Pardo, T. A. S., Ciferri, C. D. A., e Vieira,
M. T. P. (2009). Relatório técnico ”métricas de avaliação”. Technical report, Universidade Federal de São Carlos. http://http://gbd.dc.ufscar.br/~pablofmatos/
files/ReportMetrica-MatosEtAl.pdf.
Mccool, C., Marcel, S., Hadid, A., Pietikainen, M., Matejka, P., Cernocky, J., Poh, N.,
Kittler, J., Larcher, A., Lévy, C., Matrouf, D., Bonastre, J., Tresadern, P., e Cootes,
T. (2012). Bi-modal person recognition on a mobile phone: using mobile phone data.
Technical report.
Parmar, N. e Hiscocks, P. (2002). Drowsy driver detection system. Technical report,
Ryerson University.
Picot, A., Caplier, A., e Charbonnier, S. (2009). Comparison between eog and high frame
rate camera for drowsiness detection. IEEE Xplore, (10.1109/WACV.2009.5403120):1–
6.
Pradhan, T., Bagaria, A. N., e Routray, A. (2012). Measurement of perclos using eigeneyes. IEEE Proceedings of 4th International Conference on Intelligent Human Computer
Interaction.
Qing, W., Bingxi, S., Bin, X., e Junjie, Z. (2010). A perclos-based driver fatigue recognition application for smart vehicle space. Third International Symposium on Information
Processing.
QUALCOMM (2011). Próxima geração de chipsets móveis. Technical report, In Proc.
Honda Symp. http://www.qualcomm.com.br/.
REFERÊNCIAS BIBLIOGRÁFICAS
58
Qureshi, A. e J.T., L.-C. (2004). Medications and their effects on sleep. Technical Report
88(3):751-66., Med Clin North Am.
Rizzo, G. (2002). Drowsy driving in the south of brazil. Revista brasileira Neurologia.,
68(3):94–96.
Russell, S. e Norving, P. (2004). Inteligência Artificial, 2a edição. Campus, Rio de Janeiro.
Saeid, F. e Parisa, E. (2012). Tracking eye state for fatigue detection. International
Conference on Advances in Computer and Electrical Engineering.
Shaaban, L., C.S., H., Minu, P., Robert, C., e William, O. (2004). Pupil staging and eeg
measurement of sleepiness. International Journal of Psychophysiology., 52.
Smith, P., Shah, M., e Lobo, N. (2003). Determining driver visual attention with one
camera. IEEE Transactions on Intelligent Transportation Systems, 4(04):205–218.
Souza, J. C., Paiva, T., e Reimão, R. (2008). Sleep, quality of life and accidents in the
lives of brazilian and portuguese truck drivers. Psicologia em Estudo, 13(3):429–436.
Suzuki, A., Yasui, N., Nakano, N., e Kakeko, M. (2003). Lane recognition system for
guiding of autonomous vehicle. Intelligent Vehicles Symposium, IEEE, pgs. 196–201.
Tan, P., Steinbach, M., e Kumar, V. (2005). Introduction to data mining, first edition.
Intelligent Vehicles Symposium, IEEE, pgs. 196–201.
Tanha, M. e Seifoory, H. (2011). Morphological drowsy detection. IEEE International
Conference on Signal and Image Processing Applications (ICSIPA), pgs. 63–65.
Ueno, H., Kaneda, M., e Tsukino, M. (1994). Development of drowsiness detection system.
Technical report, Vehicle Res. Lab., Nissan Motor Co. Ltd.
Viola, P. e Jones, M. J. (2001). Rapid object detection using a boosted cascade of simple
features. IEEE CVPR, 1:511.
Viola, P. e Jones, M. J. (2004). Robust real-time face detection. International Journal of
Computer Vision, 57(2):137–154.
Wu, J. e Trivedi, M. M. (2010). An eye localization, tracking and blink pattern recognition system: Algorithm and evaluation. ACM Transactions on Multimedia Computing,
Communications and Applications, 6(8).
Yang, J. H., Mao, Z. H., Tijerina, L., Pilutti, T., Coughlin, J. F., e Feron, E. (2009).
Detection of driver fatigue caused by sleep deprivation. IEEE Transactions on systems,
man, and cybernetics-part A: Systems and humans, 39(4):694–705.
REFERÊNCIAS BIBLIOGRÁFICAS
59
Yeo, M. V., Li, X., Shen, K., e Smith, E. P. W. (2009). Can svm be used for automatic
eeg detection of drowsiness during car driving? Elsevier - Safety Science, (47):115–124.
Zana, Y. e Dias, M. J. (2012). Sistema portátil de detecção de estado de sonolência e emissão de alerta através do monitoramento do piscar de olhos utilizando uma câmera infravermelha acoplada. Instituto Nacional da Propriedade Industrial, (BR1020120326744).
Apêndice A
Patente de invenção depositada no
INPI
A patente apresentada nesta seção foi depositada no Instituto Nacional da Propriedade Intelectual (INPI) sob o número BR1020120326744 publicada na Revista RPI 2195, Página
88. Essa patente apresenta parte das ideias desenvolvidas.
60
1/9
RESUMO
SISTEMA PORTÁTIL DE DETECÇÃO DE ESTADO DE SONOLÊNCIA E
EMISSÃO DE ALERTA ATRAVÉS DO MONITORAMENTO DO PISCAR DE
OLHOS UTILIZANDO UMA CÂMERA INFRAVERMELHA ACOPLADA. O
5
presente invento refere-se a um sistema de detecção do estado de sonolência de uma
pessoa e emissão de alerta, constituído de um dispositivo portátil, uma câmera
infravermelha acoplada e um método de detecção de sonolência.
A invenção pretende detectar o grau de sonolência de pessoas em tempo
real, sem contato físico, e alertá-las com vistas à prevenção de acidentes ou erros
10
operacionais, que podem ocorrer com maior probabilidade quando as pessoas estão em
estado de sonolência. O sistema pode ser usado em diversos tipos de ambientes,
inclusive veículos, escritórios e fábricas. O sistema utiliza imagens capturadas por uma
câmera infravermelha; essas imagens são processadas por um dispositivo portátil
compreendido de microprocessador e um método de detecção de sonolência. Uma
15
alerta, por meio visual, sonoro, vibratório ou de comunicação, pode ser emitido em
casos de detecção de um estado de sonolência.
2/9
“SISTEMA PORTÁTIL DE DETECÇÃO DE ESTADO DE SONOLÊNCIA E
EMISSÃO DE ALERTA ATRAVÉS DO MONITORAMENTO DO PISCAR DE
OLHOS UTILIZANDO UMA CÂMERA INFRAVERMELHA ACOPLADA”
A presente invenção refere-se a um sistema de detecção do estado de
5
sonolência de uma pessoa e emissão de alerta, constituído de um dispositivo portátil,
uma câmera infravermelha acoplada e um método de detecção de sonolência.
A invenção pretende detectar o grau de sonolência em pessoas, como
motoristas e operadores de instrumentos, e alertá-las com vistas à prevenção de
acidentes ou erros operacionais, as quais ocorrem com maior probabilidade quando as
10
pessoas estão em estado de sonolência. O sistema pode ser usado em diversos tipos de
ambientes, inclusive veículos, escritórios e fábricas.
Os atuais sistemas de detecção de sonolência são baseados em vários
métodos e também aplicados de formas diferentes. Os métodos correlacionados podem
ser classificados em três categorias: Uso de sensores que detectam sinais fisiológicos,
15
sensores que avaliam o desempenho de condução do motorista e sistemas que usam
imagens de câmeras.
Na patente de invenção n.º PI0804220-9, utiliza-se o monitoramento do
piscar dos olhos por eletromiografia, da pressão sanguínea e do potencial elétrico de
pele da pessoa que conduz o veiculo e ainda o registro de ondas cerebrais por meio de
20
eletroencefalografia.
Outra patente de invenção é a de nº US 6.822.573B2, a qual analisa sinais
físicos, dentre eles a analise de posição da cabeça e a postura do motorista. Esta patente
também analisa as ações que o motorista transmite ao carro, como a diminuição da força
de aperto no volante e frequência cardíaca. Nessa mesma linha de estudo existe também
25
a patente nº PI 9504298-9 que é um sistema de identificação e aviso de sonolência do
motorista que avalia desvios bruscos na direção e aceleração do veiculo.
A patente de n.º US 7.482.937B2, a qual utiliza um sistema de
dispositivo portátil com uma câmera embutida para monitorar através das imagens
capturadas as condições de atenção do motorista e emissão de alertas do estado de
30
sonolência do motorista. Contudo, esta invenção não prevê um componente para
3/9
captação de imagens em condições ambientais de baixa ou sem iluminação, portanto seu
uso fica restrito a operação em condições de forte iluminação.
As técnicas encontradas apresentam limitações, seja pela necessidade de
conexão de dispositivos ao corpo, seja pelas condições ambientais.
5
Métodos não remotos utilizam-se de aparatos conectados ao corpo da
pessoa, sejam eles sensores para medir as condições fisiológicas como frequência
cardíaca e eletroencefalograma, ou ainda chapéus e óculos presos a fios para medir a
inclinação da cabeça. Estes meios normalmente geram desconforto e podem não ser
usados, seja por esquecimento ou autoconfiança do usuário; além disso, são métodos de
10
alto custo e, portanto, de difícil comercialização.
Os métodos que avaliam o desempenho do motorista não levam em
consideração fatores sobre a má condição das rodovias, como falta de sinalização e
falhas no asfalto, e possuem uma alta taxa de erro. Outro fator são as mudanças
climáticas que diminuem a visibilidade e afetam o desempenho do motorista resultando
15
em alta taxa de alertas falsos positivos, tornando o invento pouco confiável.
Em invenções que utilizam-se de imagens para avaliar as condições de
sonolência é imprescindível um método que funcione tanto em condições diurnas
quanto noturnas, pois é fato que no período noturno ocorre a maior incidência de
estados de sonolência, objeto primário da solução.
20
De acordo com uma concretização de referência desta invenção, o
dispositivo portátil pode ser um aparelho celular posicionado em frente a um operador
de painel de controle operacional em conjunto com uma câmera infravermelha acoplada
posicionada para detectar a face do operador do painel. O sistema que opera o
monitoramento usado neste celular pode ser baixado da Internet com uma interface para
25
o usuário realizar sua ativação. Caso detectado sinais de estado de sonolência, que
sugere estado de baixo nível de atenção, o sistema emitirá um alerta sonoro do próprio
aparelho celular e envia de uma mensagem, podendo ser de SMS por rede telefônica ou
de dados, para o supervisor do operador, visto que pode se tratar do monitoramento de
operações critica de uma fábrica.
30
Em outra concretização desta invenção, o dispositivo portátil é um
aparelho celular posicionado juntamente com uma câmera infravermelha acoplada no
painel ou para-brisa de um veículo motor; a câmera infravermelha é posicionada diante
4/9
do motorista em uma posição que capture imagens de vídeo da face do motorista. Com
o sistema de monitoramento do estado de sonolência instalado no dispositivo portátil,
este realiza o processamento das imagens e análise do estado de sonolência do
motorista, e se identificado durante o monitoramento à detecção de padrões de piscar
5
que caracterizam um estado de sonolência, o sistema emitirá através do próprio
dispositivo portátil uma alerta sonoro, e ainda o sistema pode ser configurado em sua
interface pelo próprio utilizador para enviar alertas a outras pessoas com a finalidade de
que estas monitorem o estado de sonolência do motorista, tendo assim essas pessoas a
possibilidade de conhecer a situação em tempo real em uma viagem, podendo utilizar
10
desses dados para reforçar o alerta ao motorista.
A presente invenção tem como objetivo superar as limitações dos
métodos descritos acima. O sistema da presente invenção utiliza imagens capturadas por
uma câmera que opera na região espectral do infravermelho, podendo ter um dispositivo
de iluminação infravermelha ou não; essas imagens são processadas por um dispositivo
15
portátil contendo microprocessador. Visto a disponibilidade a baixo custo de
dispositivos desta natureza, a exemplo de celulares, o sistema terá um baixo custo final.
As figuras anexas mostram uma concretização do sistema de detecção do
estado de sonolência, abaixo segue a listagem das figuras com suas respectivas
descrições.
20
A figura “FIG. 1” mostra o interior de um automóvel 4 com o dispositivo
portátil 1 e uma câmera infravermelha 2 para ser usada em condições diurnas ou
noturnos, e está em direção de captura de imagens diante ao usuário 3.
A figura “FIG. 2” mostra o fluxograma do algoritmo demonstrando
sistematicamente todas as etapas do algoritmo; este é iniciado realizando a aquisição de
25
imagem 1, com esta imagem se verifica a existência de uma face 2, caso negativo o
processo volta em 1, e caso positivo continua o fluxo realizando a captura da imagem 3,
nesta imagem da face se verifica a existência de olhos do utilizador 4, caso negativo
retorna à etapa de aquisição 1 e caso afirmativo se realiza o recorte da área do olho 5
para diminuir a região de busca e melhorar o desempenho, passa para a etapa de
30
rastreando da próxima imagem 6 e verifica se ainda existem as características da
imagem anterior 7, isto é, a posição do olho, caso negativo o processo retorna como
5/9
perda do olho e retoma a etapa de aquisição 1, em caso positivo a imagem é analisada
para detectar o estado do olho, isto é, estado entre aberto e fechado que identifica
características de amplitude e velocidade de fechar dos olhos, e de posso dessas
informações é executada a avaliação do estado de sonolência do utilizador 9, analisando
5
neste passo o conjunto de informações de uma sequência de imagens e se decide através
de um conjunto de regras se será gerado o alerta 11 ao utilizador ou continuará o fluxo
de monitoramento atualizando o a imagem do olho 12.
A invenção está disposta para uso do sistema de detecção do estado de
sonolência em condições diurnas e noturnas. O sistema disposto na FIG. 1 requer um
10
dispositivo portátil 1 e uma câmera infravermelha 2, e ainda o método demonstrado no
fluxograma da FIG. 2. O dispositivo portátil FIG. 1 é composto de microprocessador
para realizar o processamento das funções do método; o sistema funciona tanto em
ambientes com alta quanto de baixa iluminação com o uso de câmera infravermelha
acoplada.
15
A lógica da invenção é apresentada detalhadamente no fluxograma do
algoritmo FIG. 2 da captura das imagens, execução, analise a alerta ao usuário, bem
como o seu continuo fluxo de funcionamento neste processo de detecção de sonolência
e emissão de alerta, mostrado as etapas de entrada de dados do ambiente externo 1,
processamento de imagem 2, 3, 4, 5, 6, 7, aquisição de dados para analise 8 e avaliação
20
do estado de sonolência 9 que verifica as condições de sonolência, tomada de decisão
através de regras estabelecidas para identificar o estado de sonolência e retorno ao
utilizador 11.
6/9
REINVINDICAÇÕES
1) SISTEMA PORTÁTIL DE DETECÇÃO DE ESTADO DE SONOLÊNCIA E
EMISSÃO DE ALERTA ATRAVÉS DO MONITORAMENTO DO PISCAR DE
OLHOS UTILIZANDO UMA CÂMERA INFRAVERMELHA ACOPLADA é
5
caracterizado por um dispositivo portátil constituído de um microprocessador, uma
câmera infravermelha e um método de detecção de estado de sonolência.
2) dispositivo portátil de acordo com a reivindicação 1, é caracterizado por um
dispositivo eletrônico compreendido de microprocessador;
3) câmera infravermelha de acordo com a reivindicação 1, caracterizado pelo fato de
10
que trará condições de uso em condições de baixa e alta iluminação ambiental com uma
câmera infravermelha;
4) método de detecção de sonolência de acordo com a reivindicação 1, caracterizado
por ativação de um alerta, em resposta a um acontecimento, compreendido por:
Posicionamento de um dispositivo portátil de tal forma que o dispositivo portátil esteja
15
posicionado para capturar imagens do ambiente; Processamento de imagens no
microprocessador de um dispositivo portátil para a detecção de piscares; Ativação de
uma alerta relacionada ao evento de detecção do estado de sonolência processado por
dispositivo portátil.
5) método de acordo com o reivindicado em 1, caracterizado por ativação do alerta
20
baseado em sinal sonoro, visual, vibratório ou de comunicação do dispositivo portátil
compreendido por sons emitidos do alto falante, emissão de aviso em tela e vibração do
próprio dispositivo portátil.
6) método de acordo com o reivindicado em 1, caracterizado por interface que
compreende uma apresentação de informações em tela para o usuário do dispositivo
25
portátil;
7) sistema para ativação de alerta em resposta a um evento de acordo com o
reivindicado em 1, caracterizado por sistema compreendido por: Um dispositivo
portátil com uma câmera infravermelha, um microprocessador e componentes de alerta,
sejam eles do tipo: sonoro, visual, vibratório e de comunicação; um sistema de alerta
30
para gerar e enviar alerta em resposta a detecção de um evento; Quando o
microprocessador do dispositivo portátil está operando para processar imagens de uma
7/9
câmera, detecção de evento de características de imagens da câmera, e detecção do
estado de sonolência para emitir alertar do sistema se um evento for detectado.
8/9
9/9

Documentos relacionados