Sei sulla pagina 1di 9

Sistema de orientao espacial para pessoas com deficincia visual

Rui do Carmo1 e Fernando Silvestre da Silva2


1

Formando em Engenharia de Automao e Controle, UNISAL, rc.ad.eng@live.com


2
Doutor em Engenharia Eltrica2, UNISAL, fernando.silva@sj.unisal.br

Resumo O presente trabalho teve como objetivo a


pesquisa e o desenvolvimento de um mecanismo de
deteco de obstculos, cujo visa permitir que pessoas
com deficincia visual possam se locomover com maior
segurana. Atravs de um sensor Kinect e de algoritmos
de programao desenvolvidos em linguagem C#, o
espao fsico digitalizado no plano tridimensional, os
obstculos so identificados e classificados por meio do
uso de tcnicas de processamento de imagens digitais. A
partir de reas de segurana predefinidas, a pessoa com
deficincia visual informada, atravs de mensagens de
udio, sobre o nvel de risco e a proximidade dos
obstculos identificados. Os ensaios realizados, em
diferentes condies ambientais, demonstram que, a
partir de uma imagem de profundidade, o sistema
capaz de segmentar os objetos, estimar as coordenadas
cartesianas de seus centros geomtricos, verificar se tais
coordenadas esto contidas nas reas de segurana e
sintetizar a mensagem de voz correspondente. O sistema
de orientao espacial desenvolvido capaz de prover a
pessoa com deficincia visual interao com o meio
fsico e com os indivduos nele contidos, permitindo que
a mesma usufrua com segurana do seu direito de
acessibilidade.
Palavras-chave: Processamento de imagens digitais,
deficincia visual, acessibilidade, integrao social.
Abstract This papers objective is the research and
development of an obstacle detection system that
provides a safer way to visual impaired people to move
around. Using the Kinect sensor and C# programming
language algorithms, the space around is digitalized in a
3D model. In this model, the obstacles are identified and
classified using image processing techniques. Using predefined safe zones, the visual impaired person is
informed using audio messages about the distance from
identified obstacles and level of threat they pose. The
experiments were conducted in different environmental
conditions and the results show that, from the measured
deepness image, the system is able do segment objects, to
estimate the Cartesian coordinates of the objects
geometric center, check if these centers are inside a high
risk zone and synthetize the corresponding voice
message. The developed spatial orientation system is
able to provide a visual impaired people a safe iteration
with the environment and with the individuals in it,
enhancing the safety and his accessibility.

I. INTRODUO
Os seres humanos possuem inteligncia complexa e
atravs de seus organismos e estruturas sensoriais so
capazes de interagir com o meio fsico no seu entorno.
Dentre os organismos sensoriais, a viso um elemento
essencial, uma vez que, atravs dela somos capazes de
compreender cores, luminosidade, tamanho, forma,
distncia, etc. O olho humano, composto de seus
inmeros elementos, responsvel pela captao e
converso das ondas eletromagnticas, no espectro de
cores visveis, em impulsos eltricos, cujos so
transmitidos ao crebro por meio do nervo tico, sendo
que, as patologias que causam a deficincia visual, quer
sejam congnitas ou adquiridas, esto em sua maior parte
associadas a ele.
Aproximadamente 285 milhes de pessoas [1], ou seja,
4,07% da populao mundial, possuem algum tipo de
deficincia visual, seja ela parcial ou total, abrangendo
principalmente a faixa etria acima dos 50 anos de idade
[1]. A pessoa com total deficincia visual faz uso de
outros sentidos para suprir sua necessidade de orientao
no espao fsico, dentre eles: a audio e o tato. No
obstante, so gerados e armazenados mapas mentais
contendo as rotas dos ambientes comuns, tais como: a
casa e o trabalho. No decorrer da histria, aparelhos e
tcnicas foram concebidas no intuito de auxiliar pessoas
com deficincia visual total, dentre as quais, as mais
utilizadas so: a bengala e o co-guia.
Em 2 de dezembro de 2004 foi promulgado o decreto
n 5.296 que regulamenta as leis federais 10.048 e 10.098
(lei da acessibilidade) e em 25 de agosto de 2009 foi
promulgado o decreto n 6.949 que regulamenta a
Conveno Internacional dos Direitos da Pessoa com
Deficincia, cujos tm por objetivo prover maior
acessibilidade as pessoas com deficincia ou mobilidade
reduzida. Dentre as medidas estabelecidas, destaca-se: A
instalao de pisos tteis de acordo com as normas
tcnicas da ABNT; A instalao de botoeiras com signos
em Braille em elevadores; A instalao de sinalizao
sonora intermitente em semforos e a disponibilizao de
aplicativos sintetizadores de voz para uso de programas
e sites da internet. Entretanto, tais medidas no isentam
os riscos de acidentes de percurso, uma vez que o meio
fsico passa por constante transformao. Sobre essa
perspectiva, o sistema de orientao espacial
desenvolvido visa contribuir para segurana da pessoa
com deficincia visual, prevenindo-a de possveis
acidentes provenientes de obstculos mveis e imveis.

Keywords: Digital image processing, visual impairment,


accessibility, social integration.
Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

II. SNTESE DA BIBLIOGRAFIA FUNDAMENTAL


A. Sensor Kinect
O sensor Kinect [2] um dispositivo de interao para
jogos virtuais, desenvolvido pela Microsoft com o
propsito inicial de substituir o tradicional mtodo de
controle manual, sendo que, sua inovao se d atravs
do uso simultneo de tcnicas da deteco de
movimentos e reconhecimento de voz. Face a extensa
gama de possibilidades de aplicao do sensor Kinect, em
Junho de 2011, a Microsoft disponibilizou a verso beta
do Kinect for Windows SDK (Pacote de desenvolvimento
de aplicativos do Kinect para o Windows) [3], destinado
ao uso de pesquisadores e desenvolvedores de
aplicativos. Em julho de 2014, a Microsoft disponibilizou
uma atualizao fsica e computacional do sensor Kinect,
denominada de Kinect for Windows v2 [4], que
contempla resoluo de vdeo em alta-definio (HD1080p), sensor de profundidade de alta fidelidade, entre
outros. Para o desenvolvimento deste projeto foi utilizado
o sensor Kinect na verso 1.8 do SDK [3].
Em termos fsicos, o sensor Kinect possui um emissor
infravermelho, uma cmera de vdeo colorida, uma
cmera de vdeo monocromtica, um servomotor para
controle do ngulo de elevao e uma srie de quatro
microfones [3]. A Figura 1 identifica os principais
elementos do sensor Kinect.

Raw-Bayer: 32 bits de dados por ponto; se


assemelha a sensibilidade natural da viso humana; lento
em processamento, pois, transmite quadros em resoluo
de 1280 x 960 pontos a uma taxa de 30 FPS.
Em se tratando da taxa de transmisso, a mesma
ajustada virtualmente, ou seja, a taxa de transmisso real
depende da disponibilidade do canal de comunicao e
pode ser avaliada com base no tempo de atraso entre o
envio dos pacotes. A largura de banda ocupada na
transmisso dos pacotes de dados razo direta da
resoluo e do formato de imagem ajustadas.
O emissor IR (Infrared) [3] responsvel pela
projeo de um padro de luz estruturada no ambiente,
ou seja, uma combinao de formas geomtricas
combinadas numa matriz de pontos, cujas dimenses
dependem da resoluo ajustada. As deformaes no
padro de luz estruturada causadas pelos objetos so
captadas pelo sensor de profundidade, cujo, estima a
distncia mtrica de cada ponto da imagem em relao a
face frontal do sensor. O sensor de profundidade [3], por
sua vez, se trata de uma cmera monocromtica contendo
um sensor CCD (Charge-coupled device) sensvel ao
espectro eletromagntico na faixa de frequncias
infravermelhas. A Figura 2 demonstra o funcionamento
de um sensor CCD e seus elementos R, G e B.
Figura 2 Sensor CCD.

Figura 1 Partes que compem o sensor Kinect.

Fonte: Acervo dos autores.

Fonte: Acervo dos autores.

A cmera colorida dotada de um sensor CMOS


(Complementary Oxide-Metal Diode) e uma lente com
abertura de 57 x 43, na direo horizontal e vertical
respectivamente, cuja apresenta resoluo mxima de
1280 x 960 pontos (pixels) e uma taxa de transmisso
mxima de 10 FPS (Frames per second), contudo, a
configurao padro recomendada de 640 x 480 pontos
a 30 FPS, a qual suficiente para a execuo da maioria
das aplicaes [3]. Os quadros de cores capturados so
disponibilizados nos formatos:

A imagem capturada tem a forma de uma matriz de


pontos, cuja atualizada periodicamente e transmitida no
formato de um vetor de 16 bits por ponto [3]. A faixa de
leitura do sensor de profundidade compreende o espao
entre 0,8 e 4,0m e assegura uma preciso da ordem de
1mm, dependendo das condies de luminosidade
ambiente. O sensor de profundidade compara a imagem
capturada com o padro de luz estruturada gerado pelo
emissor IR [3]. Se o valor de profundidade obtido no
pertencer a faixa de leitura, o mesmo ser considerado
como desconhecido, muito prximo ou muito longe. A
figura 3 exibe as dimenses do campo de viso e as faixas
de leitura do sensor de profundidade.

BGR-A: 32 bits de dados por ponto; cor definida pela


composio das tonalidades de azul, verde e vermelho;
alfa representa a opacidade do ponto;
YUV: 16 bits de dados por ponto; possui correo em
gama; utiliza menos memria para processamento da
imagem;
Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

Figura 3 Campo de viso e faixas de leitura do sensor de


profundidade.

diagrama de blocos da interface entre o sensor Kinect, a


NUI e a aplicao desenvolvida pelo usurio.
Figura 5 Interface de aplicao NUI.

Fonte: Extrado de [3].

O sensor Kinect dispe de um servomotor [3] capaz de


ajustar a inclinao do corpo mvel com relao a sua
base, permitindo o ajuste do campo de viso a imagem a
qual se deseja capturar. O movimento de rotao
aplicado sobre o eixo X, com uma faixa de atuao que
compreende de -27 a +27, conforme ilustrado na Figura
4.
Figura 4 ngulo de elevao do sensor Kinect.

Fonte: Extrado de [3].

A interface NUI capaz de processar at seis sensores


Kinect simultaneamente controlando individualmente
trs canais de comunicao: Canal de cor (Color Stream),
canal de profundidade (Depth Stream) e canal de udio
(Audio Stream) [3]. O desenvolvimento das aplicaes de
usurio que iro interagir com o sensor Kinect realizado
atravs da plataforma Microsoft Visual Studio, cuja
oferece suporte para as linguagens VB.net, C# e C++.
Previamente ao incio do desenvolvimento de uma nova
aplicao necessrio instalar o SDK correspondente
com a verso do sensor Kinect que est sendo empregada.
B. Processamento de imagens digitais

Fonte: Acervo dos autores.

A srie de microfones [3] faz uso da tecnologia PCM


(Pulse Code Modulation) que permite capturar o udio e
estimar a posio angular de origem do som no ambiente.
O udio capturado atravs de um canal mono com uma
taxa de amostragem de 16kHz, digitalizado com 24 bits
de preciso, e possui funes de cancelamento de eco e
supresso do rudo de fundo [3].
O sensor Kinect possui um conjunto de APIs
(Application Interfaces) denominado NUI (Natural User
Interface) [3], cuja responsvel pelo gerenciamento da
comunicao entre a aplicao desenvolvida pelo usurio
e o sensor propriamente dito. A figura 5 apresenta o

Processamento de imagens digitais refere-se s


tcnicas de manipulao de imagens desenvolvidas em
ambiente computacional e est presente nas mais
diversas reas de atividades, tais como: militar,
industrial, mdica, segurana pblica, etc [5]. Para que
ocorra o processamento de uma imagem necessrio
haver um elemento de entrada, tal como: Cmera de
vdeo ou mesa digitalizadora; um elemento de
processamento,
tal
como:
Computador
ou
microprocessador; e um elemento de sada, cujo pode ser:
Um monitor de vdeo ou uma impressora [5].
A etapa de aquisio visa capturar a imagem fsica e
converte-la numa imagem digital, sendo que, na maioria
dos casos este processo retorna uma matriz de pontos
(Pixels), cuja armazenada em memria e
disponibilizada para posterior processamento [5]. Cada
ponto traz consigo um conjunto de informaes que

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

representam caractersticas reais da imagem fsica, tais


como: Cor e luminosidade [5]. A qualidade e
confiabilidade das informaes dependem da forma
construtiva do elemento de entrada, no que tange ao
tamanho dos pontos, espaamento entre os pontos,
quantidade de pontos da matriz, nveis de tons-de-cinza,
linearidade de medio e nvel de rudo [5]. Sensores do
tipo CCD tem como caracterstica construtiva o aumento
do nvel de rudo em funo da temperatura ambiente [5].
O nvel de rudo de uma imagem pode ser reduzido
submetendo-a a um pr-processamento atravs de
operaes algbricas simples, como por exemplo:
Aplicar a mdia aritmtica entre duas imagens contendo
a mesma cena porm digitalizadas em instantes
diferentes [5]. Outra forma de se reduzir os efeitos
causados pelos rudos utilizar filtros, como por
exemplo: Modificar a tonalidade de um ponto tomando
como referncia a tonalidade dos pontos vizinhos; ou
eliminar um determinado ponto se o gradiente de
tonalidade dele prprio para com seus vizinhos superar
um determinado limiar [5]. O efeito observado a
suavizao da imagem com a reduo da amplitude nos
pontos onde antes haviam picos de intensidade [5].
Uma imagem processada com o intuito de se extrair
informaes relevantes para medio e/ou tomada de
decises [5]. Contudo, desde a aquisio at a exibio,
uma imagem passa por inmeros estgios que
contribuem para sua degradao, ou seja, as informaes
sofrem transformaes que influem nos resultados
esperados [5]. A degradao pode ser minimizada
utilizando tcnicas de restaurao de imagens, como por
exemplo: A filtragem inversa, cuja estabelece um filtro
de restaurao capaz de cancelar a degradao e o rudo
caractersticos do sistema [5]. A figura 6 mostra a
imagem f(x, y) sendo submetida a uma degradao h(x, y)
e a um rudo n(x, y). Em seguida, o processo de
convoluo entre a imagem degradada w(x, y) e o filtro
de restaurao g(x, y), devolve como produto a imagem
corrigida f(x, y).
Figura 6 Modelo matemtico de restaurao.

Fonte: Acervo dos autores.

Em outras condies, a qualidade da imagem deixa de


ser relevante frente a outros fatores, como por exemplo:
Quantidade de memria disponvel para armazenamento
num circuito fechado de televiso (CFTV). Nestes casos,
so empregadas tcnicas de compresso de forma a
reduzir o espao virtual ocupado pela imagem, sendo
que, tais operaes podem implicar na perda de
informaes atravs da diminuio da quantidade de bits
utilizados para representar os dados de um determinado
ponto [5]. Por exemplo: A tonalidade R de um ponto Pij.
Na etapa de processamento, a imagem previamente
digitalizada carregada pelo programa aplicativo e

manipulada de acordo com um conjunto de instrues


provenientes do algoritmo de processamento [5]. Com
isso, se pretende estudar o contedo de uma imagem
atravs do reconhecimento de padres, via mtodos
estatsticos e redes neurais, cujo contempla tcnicas de
segmentao, medio, classificao e estimativa de
objetos [5]. A primeira fase do processamento consiste
em isolar os objetos do restante da imagem. Em seguida,
se efetua a medio do objeto de acordo com a
caracterstica que se deseja avaliar. Por fim, assumindo
como referncia os valores desejados e os valores
medidos, definido a qual grupo pertence o objeto
identificado [5]. A Figura 7 exibe a sequncia de
processamento indicada para o reconhecimento de
padres em imagens.
Figura 7 Processo de reconhecimento de padres.

Fonte: Acervo dos autores.

O processo de segmentao pode ser concebido


agrupando os pontos com caractersticas semelhantes ou
rastreando as bordas que definem os limites entre os
objetos[6]. A forma mais elementar de segmentao de
uma imagem atravs de um limiar (Threshold) aplicado
sobre o seu histograma, sendo comumente utilizado para
isolar o fundo (Background) dos objetos, os quais se
pretende reconhecer [6]. Nos casos em que a tonalidade
do fundo similar a tonalidade dos objetos, se faz
necessrio ajustar o limiar de forma a encontrar o ponto
timo de segmentao [6]. Em cenas complexas, com
grande quantidade de objetos, empregada a tcnica de
segmentao por crescimento de regies (Region
growing) que consiste no agrupamento de pontos e seus
vizinhos, tomando como referncia uma caracterstica
em comum e estabelecendo um limiar de comparao [6].
A imagem segmentada permite avaliar cada objeto
individualmente e efetuar a medio de suas
caractersticas, tais como: Permetro, rea, comprimento,
largura, mdia de tonalidades, etc. [6]. Redes neurais
podem ser empregadas para reconhecer objetos a partir
da apresentao de conjuntos de treinamento, ou seja,
conjuntos de imagens que contenham o mesmo objeto ao
qual deseja-se classificar [6]. A imagem processada
ento armazenada novamente em memria, tambm na
forma de uma matriz de pontos [5].
A etapa de exibio visa tornar visvel a imagem
processada, ou seja, as caractersticas virtuais de cada
ponto so utilizadas para determinar a cor e a
luminosidade do ponto correspondente no elemento de
sada [5]. Existem basicamente dois tipos de elementos
de sada: Os permanentes, que reproduzem uma cpia
fsica em papel, disco-duro, etc.; e os volteis que
representam uma imagem de forma temporria apenas
[5]. A exibio da imagem depende fundamentalmente
do tamanho fsico do elemento de sada, de sua resoluo
grfica e de sua resoluo fotomtrica (grau de preciso
com que o elemento reproduz os valores de luminosidade

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

e tonalidade de um ponto) [5]. Para exibio correta de


uma imagem necessrio avaliar inclusive a nolinearidade do elemento de sada e aplicar as correes
necessrias [5].

Figura 8 Diagrama de blocos representativo do processo de busca e


inicializao do sensor Kinect e do amostrador de quadros.

III. PROJETO DESENVOLVIDO


O sistema de orientao espacial desenvolvido
proveniente da automao concebida atravs da
integrao das reas de eletrnica digital e tecnologia da
informao, atravs da qual possvel obter uma imagem
tridimensional do ambiente, processa-la segundo um
padro de reconhecimento de obstculos e informar a
pessoa com deficincia visual sobre o nvel de risco ao
qual a mesma est exposta.
A. Recursos
Os principais elementos fsicos e computacionais
aplicados no desenvolvimento deste projeto so: Um
sensor Kinect com fonte de alimentao e uma sada do
tipo USB (Universal Serial Bus) 2.0; Um computador
porttil com processador Intel de 1.8GHz dois ncleos,
memria RAM (Random Access Memory) de 4GB
(Gigabytes) e quatro entradas do tipo USB 2.0; Um
programa aplicativo Microsoft Visual Studio 2013 com
suporte linguagem C# e ambiente de apresentao WPF
(Windows Forms Presentation); Um pacote de suporte ao
desenvolvimento SDK (Support Development Kit),
verso 1.8.0; E um pacote de sintetizao de voz, no
gnero feminino e no idioma da lngua portuguesa
B. Metodologia
Os procedimentos adotados para o desenvolvimento
do projeto seguem os princpios de um trabalho de
pesquisa, tomando como referncia inicial o estudo da
NUI, ou seja, o conjunto de APIs disponibilizada para o
desenvolvimento de aplicaes com o sensor Kinect.
Dentre a extensa gama de classes presentes na NUI, duas
foram selecionadas para estudo, cujas so: Color Stream
e Depth Stream. Tais classes contm as instrues de
configurao e captura de imagem colorida e de
profundidade, ambas necessrias para o processo de
reconhecimento de obstculos. Para que estas classes
estejam disponveis no ambiente de desenvolvimento do
Visual Studio, necessrio instalar o SDK
correspondente, energizar e conectar o sensor Kinect
atravs de uma das portas USB do computador, aguardar
a concluso da instalao automtica dos drivers e em
seguida incluir na estrutura do projeto a referncia DLL
(Dynamic-link Library) denominada Microsoft.Kinect,
Aps submetidas as configuraes anteriores, o
ambiente de desenvolvimento est apto a receber as
primeiras linhas de cdigo contendo as instrues de
identificao do sensor Kinect, de inicializao dos
canais de comunicao e de inicializao do amostrador
(temporizador astvel) responsvel pela captura dos
frames disponibilizados pela NUI. Sinteticamente, o
processo obedece ao fluxo de informaes ilustrado pela
Figura 8.

Fonte: Acervo dos autores.

Primeiramente, se efetua a identificao do sensor


Kinect conectado atravs das seguintes instrues,
demonstradas em forma de pseudocdigo, como segue:
SensorAtual: SensorKinect
Para Cada SensorCandidato Em SensoresConectados Faa
Se SensorCandidato.Estado Igual A Conectado Ento
SensorAtual SensorCandidato
Termina Para
Fim Se
Fim Para

Uma vez que o sensor Kinect identificado, se habilita


os canais de comunicao para captura das imagens
coloridas e de profundidade e se inicializa o sensor
Kinect. Em seguida se inicializa o amostrador, cujo
tempo de ciclo (em milissegundos) definido pela taxa
de aquisio (FPS) desejada. Havendo inicializado o
amostrador, a cada ciclo ser disparado (Triggered) um
evento e um novo frame das imagens de profundidade e
colorida ser capturado e submetido ao processamento,
conforme ilustrado pela Figura 9.
Figura 9 Diagrama de blocos representativo do processo de captura
e processamento das imagens de profundidade e colorida.

Fonte: Acervo dos autores.

O processo de captura das imagens similar, diferindo


apenas nas classes e instrues utilizadas.
De posse das imagens de profundidade e coloridas,
tem o incio a etapa de processamento, cuja o elemento
central do desenvolvimento deste projeto. Os quadros de
imagens capturados na etapa anterior vem dispostos na
forma de vetores de dados do tipo byte, separados em
agrupamentos de dois bytes para cada ponto da imagem
de profundidade e quatro bytes para cada ponto da
imagem colorida, conforme ilustrado pela figura 10.

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

Figura 10 Agrupamento de bytes por pontos.

Fonte: Acervo dos autores

A primeira tarefa do processamento efetuar a


transposio dos dados de profundidade recebidos no
formato vetorial para o formato matricial, de forma a
representar a imagem real capturada pelo sensor Kinect.
Em contrapartida, o vetor de cores exibido diretamente
para o usurio atravs da interface grfica desenvolvida
em WPF, enquanto que a matriz de profundidade
submetida ao escalonamento logartmico para filtragem
de rudos. Em seguida so distribudas as sementes
(Seeds), ou seja, os pontos de iniciais para a tarefa
segmentao. Logo aps, a imagem de profundidade
previamente filtrada (imagem de intensidades)
submetida ao processo de segmentao por crescimento
de regies, cujo retornar os objetos identificados e suas
respectivas caractersticas. A Figura 11 retrata o fluxo de
informaes da etapa de processamento de imagens.
Figura 11 Diagrama de blocos representativo do processamento das
imagem de profundidade e colorida.

filtragem atravs da associao do valor de profundidade


de cada ponto da imagem com valores constantes
armazenados na forma de uma tabela, cuja retrata uma
funo logartmica decrescente e visa relacionar os
valores de intensidade de forma similar como a
intensidade de luz percebida pela retina humana [7].
A prxima tarefa se refere a distribuio das sementes
para incio do processo de segmentao da imagem de
intensidades, sendo descrita atravs das seguintes
instrues:
Sementes: Vetor
X: Inteiro
Y: Inteiro
Para i 0 At ImagemIntensidades.Altura Faa
Para j 0 At ImagemIntensidades.Largura Faa
Sementes MatrizIntensidades[i, j]
jj+X
Fim Para
ii+Y
Fim Para

A tarefa de segmentao faz uso da matriz de


intensidades e do vetor de sementes para separar os
objetos atravs do processo de crescimento de regies.
Para cada semente (ponto inicial), o algoritmo busca
encontrar os pontos adjacentes que possuem
caractersticas similares ao ponto inicial. Este processo se
repete at que todos os pontos que compartem
caractersticas comuns tenham sido agrupados, dando
origem a uma regio, conforme demonstrado pelo
conjunto de instrues a seguir:
Pontos: Vetor
Intensidade: Inteiro
Limites: Inteiro
Para Cada Semente Em Sementes Faa
Se Ponto Diferente De Agrupado Ento
Pontos Ponto
Ponto Agrupado
Para Cada Ponto Em PontosAdjacentes
Faa
Intensidade Ponto.Intensidade
Se Intensidade Est Entre
Limites Ento
Pontos Ponto
Ponto Agrupado
Fim Se
Fim Para
Fim Se
Fim Para

Fonte: Acervo dos autores.

A tarefa consiste da transposio dos dados de


profundidade da forma vetorial para a forma matricial.
Em seguida, a matriz de profundidade submetida a

Por fim, a imagem segmentada exibida atravs de


dois elementos de sada: O visualizador de imagem
segmentada e o visualizador de imagem do radar, cujo
exibe uma representao da vista superior do ambiente,
sinalizando os objetos encontrados como pontos alocados

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

no plano cartesiano X-Z. De posse das caractersticas dos


objetos segmentados na etapa anterior, realizada a
classificao dos mesmos para determinar seus
respectivos nveis de risco. Foram estabelecidos duas
reas: Uma de alerta e outra de risco. Para cada rea
possvel ajustar o ngulo e a profundidade de alcance. O
algoritmo tambm permite a configurao do
comprimento de passada do usurio. A Figura 12 ilustra
esse processo.
Figura 12 Diagrama de blocos representativo do processo de
classificao dos objetos.

o comprimento de passada foi ajustado para 0,4m,


tomando como referncia um indivduo de 1,75m de
altura e 70 kg de massa corporal. A taxa de aquisio foi
ajustada para 1 FPS. O valor da tolerncia para
segmentao foi ajustado em 2 pontos, valor suficiente
para separar os objetos sem subsegmenta-los. O campo
de viso foi ajustado para monitorar a faixa de 0,8 a 1,8m.
A rea de alerta foi ajustada para monitorao a 45 x
1,7m. A rea de risco foi ajustada para monitorao a 25
x 1,4m.
A Figura 13 exibe a tela de configuraes
desenvolvida para ajuste do sistema.
Figura 13 Configuraes ajustadas no sistema.

Fonte: Acervo dos autores.

possvel descrever o processo anterior atravs do


seguinte conjunto de instrues:
Passada: Inteiro
N: Inteiro
Para Cada Objeto Em ObjetosSegmentados Faa
N Objeto.Profundidade / Passada
Se Objeto Est Entre reaAlerta Ento
Mensagem Ateno! Obstculo a N
passos
Fim Se
Se Objeto Est Entre reaRisco Ento
Mensagem Perigo! Obstculo a N
passos
Fim Se
Fim Para

A ltima etapa consiste em sintetizar, em forma de


udio, a mensagem de texto proveniente do algoritmo de
classificao de objetos. O algoritmo supracitado, no que
compreende desde a etapa de captura das imagens at a
etapa de sintetizao de voz, executado de forma cclica
a cada disparo do evento Time Elapsed do amostrador.

Fonte: Acervo dos autores.

Com o sensor Kinect posicionado ao nvel do solo,


foram inseridos no campo de viso trs objetos com
diferentes caractersticas.
Na Figura 14 possvel observar a imagem colorida
capturada pelo sensor Kinect, contendo os trs objetos
citados. possvel observar tambm a imagem de
profundidade representando os mesmos objetos, porm,
na escala de tons-de-cinza, de forma que, a clareza do
ponto proporcional a proximidade do mesmo para com
o face frontal do sensor Kinect. Na parte inferior da
figura, temos a representao da imagem segmentada,
contendo os objetos sinalizados atravs de diferentes
cores. Por fim, a imagem de radar dispe de uma vista
superior do ambiente criada a partir das coordenadas x e
z dos centros geomtricos de cada objeto, de forma que,
o semicrculo vermelho na extremidade inferior
representa o sensor Kinect e os crculos verdes
representam os objetos identificados.
Figura 14 Imagens capturadas atravs do sensor Kinect e; Imagens
geradas pelo algoritmo de programao.

IV. ANLISE DE RESULTADOS EXPERIMENTAIS


A avaliao dos resultados foi realizada atravs de
ensaios realizados em campo, utilizando como corpo de
prova objetos de propores reais.
A. Ensaio operacional
O ensaio operacional teve como objetivo comprovar as
funes de captura e segmentao de imagens. Para isso,

Fonte: Acerto dos autores.

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

O ensaio demonstrou que o sistema capaz de capturar


os quadros de imagem colorida e de profundidade,
efetuar a segmentao de forma a identificar os diferentes
objetos existentes e exibi-las graficamente atravs de um
formulrio WPF.

Figura 15 Objetos e mensagens emitidas.

B. Ensaio de classificao
A etapa seguinte teve como objetivo testar as funes
de classificao do nvel de risco e tambm o mdulo de
sintetizao de voz. A Tabela 1 exibe os resultados do
ensaio realizado.
Os resultados obtidos mostram que o sistema capaz
de classificar os objetos identificados de acordo com o
nvel de risco percebido, e emitir corretamente a
mensagem de voz informando a proximidade do objeto
em nmero de passos.

Fonte: Acervo dos autores.

1,80

4,50

Segura

Nenhuma

1,40

3,50

Alerta

Ateno! Obstculo a 3
passos

1,00

2,50

Risco

Perigo! Obstculo a 2
passos

1,90

4,75

Segura

Nenhuma

Ao analisar a resposta do sistema quando submetido a


diferentes condies ambientais, possvel afirmar que:
A quantidade de mensagens emitidas no depende
somente da quantidade de objetos identificados, mas sim
de sua combinao com o tipo de movimento executado;
Cada mensagem emitida tem a durao mdia de trs
segundos, portanto, o limite aceitvel de notificaes
seria de duas a trs mensagens no perodo de tempo
avaliado; Para que o sistema opere abaixo do limite, a
quantidade de objetos identificados deve ser inferior a
quatro, se movimentando lentamente.

1,75

4,37

Alerta

Ateno! Obstculo a 4
passos

V. CONCLUSES

0,80

2,00

Risco

Perigo! Obstculo a 2
passos

1,95

4,87

Segura

Nenhuma

1,50

3,75

Alerta

Ateno! Obstculo a 3
passos

1,15

2,87

Risco

Perigo! Obstculo a 2
passos

Tabela 1 Classificao de risco e sintetizao de voz.

Objeto Posio Passos

rea

Mensagem de voz

C. Ensaio de linearidade
O objetivo do ensaio de linearidade foi determinar o
limite, cujo o sistema passa a emitir mensagens de forma
contnua, transmitindo informaes conflitantes e
causando desconforto. Para isso, foram simuladas
diferentes condies de ambiente, tais como: Poucos
objetos estticos; poucos objetos se movimentando
lentamente; poucos objetos se movimentando
rapidamente; muitos objetos estticos; muitos objetos se
movimentando lentamente; e muitos objetos se
movimentando rapidamente. O tempo de amostragem
para cada condio foi de quinze segundos. A Figura 15
exibe a quantidade de mensagens emitidas de acordo com
a quantidade e o tipo de movimento executado pelos
objetos.

O desenvolvimento do sensor Kinect permitiu uma


nova abordagem na relao de interao entre o homem
e a mquina. Suas funcionalidades no se atm somente
ao uso em videojogos, mas propiciam a criao de uma
infinita gama de aplicaes para as mais diversas reas,
com diferentes propsitos. Suas caractersticas de
aquisio de imagens de profundidade e colorida
possibilitam o mapeamento em trs dimenses de um
determinado espao fsico, sendo este um elemento
fundamental no desenvolvimento deste projeto.
As tcnicas de processamento de imagens digitais, por
sua vez, continuam sendo vlidas e aplicveis nos mais
diversos campos de atuao. Sua evoluo procede do
desenvolvimento da indstria computacional, sobretudo
aps a introduo no mercado da eletrnica digital e dos
circuitos integrados. Kenneth R. Castleman, soube
expressar de forma singular os conceitos inerentes a esse
universo do processamento de imagens digitais, sendo
esta a maior referncia de estudo aplicada a este projeto.
As tcnicas de reconhecimento de padres em imagens
descritas por Castleman, permitiram segmentar a imagem
disponibilizada pelo sensor Kinect, identificar os
diferentes objetos nela contidos e extrair suas
caractersticas, cujas serviram de referncia para a
classificao do seu nvel de risco e posterior notificao.
O sistema de orientao espacial desenvolvido faz uso
de destas duas grandes vertentes, para criar um
mecanismo capaz de auxiliar a pessoa com deficincia
visual a se locomover com mais segurana nos ambientes

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

por ela usufrudos. Contudo, existem restries, algumas


delas impostas pelo prprio hardware do sensor Kinect,
quanto ao campo de viso, condies de iluminao e
temperatura ambiente, etc., algumas geradas durante o
processo de transmisso das informaes coletadas para
a NUI, e outras provenientes da prpria estruturao do
programa aplicativo. Sob esta perspectiva, entende-se
que o sistema, da forma como foi concebido, atende aos
requisitos tcnicos necessrios, cumprindo com os
objetivos estabelecidos ao comeo deste intento.
No obstante, cabem consideraes de melhorias que
visam aperfeioar o atual estado do sistema. Tais
melhorias contemplam: O aperfeioamento do algoritmo
de classificao de riscos, introduzindo o rastreamento de
objetos e o clculo de sua velocidade de deslocamento,
com o intuito de estimar o tempo de uma possvel coliso;
o desenvolvimento de um algoritmo para reconhecimento
de pessoas (Skeleton Stream), cuja classe se encontra
disponvel dentro da NUI; o desenvolvimento de um
algoritmo de roteamento para ambientes, com o propsito
de se estabelecer possveis rotas de evaso; e a
incorporao de um mdulo GPS (Global Positioning
System) para programao de percursos.

REFERNCIAS
[1] LARAMARA. Deficincia Visual Estatsticas e
Causas,
2013.
Disponvel
em:
http://laramara.org.br/deficiencia-visual/estatisticase-causas. Acesso em: 15/06/2013.
[2] LOWENSOHN, J. Timeline A Look Back at
Kinects History, 2011. Disponvel em:
http://www.cnet.com/news/timeline-a-look-back-atkinects-history. Acesso em: 18/06/2013.
[3] MICROSOFT. Kinect for Windows SDK.
Disponvel em: http://msdn.microsoft.com/enus/library/hh855347.aspx. Acesso em: 03/02/2014.
[4] MICROSOFT. Kinect for Windows Features.
Disponvel em: http://www.microsoft.com/enus/kinectforwindows/meetkinect/features.aspx.
Acesso em 05/08/2014.
[5] GONZALEZ, R. C.; WOODS, R. E. Digital Image
Processing. 2 Edio. Nova Jersey, Prentice Hall,
2001.
[6] CASTLEMAN, K. R. Digital Image Processing. 1
Ed.. Prentice Hall, 1995.
[7] STOLFI, G.. Percepo Visual Humana Televiso digital. Universidade de So Paulo
USP, 2008.

Revista Cincia e Tecnologia, v. 18, n. 32, p. 9-17, jan./jun. 2015 - ISSN: 2236-6733

Potrebbero piacerti anche