7
Automatic Translation of Brazilian Sign Language (LIBRAS) with Hidden Markov Models (HMM) Using samples of deaf, interpreters and a student of LIBRAS Diego Gonçalves Dias Departamento de Computação Universidade Federal de São Carlos - UFSCar São Carlos, Brasil [email protected] Ednaldo Brigante Pizollato Departamento de Computação Universidade Federal de São Carlos - UFSCar São Carlos, Brasil [email protected] Abstract—the question of sign language automatic translation has been widely debated in the computer vision field. However, some works have not adequately addressed the issue of the quality of sign gesticulation. This is mainly because most of them have been using samples that are made by non-native communicators, which are different from sample of native communicators. This paper addresses the issue of LIBRAS translation with special attention to features of signs made by natives and experts. Specifically, we will look at translation of natives and experts signs that show that even though these kind of samples are complex, there are statistical methods able to deal with them. The result is a database with videos of LIBRAS made by 21 people (18 natives, 2 experts and 1 student of LIBRAS). In addition, this article describes the creation of a sign language translation solution using pattern recognition and image processing. Keywords—Sign Language; Pattern Recognition; Image Processing; Gestutre Recognition; Hidden Markov Models. I. INTRODUÇÃO Nos últimos anos houve um crescente interesse do meio científico em abordagens focadas na tradução automática de língua de sinais [1] [2] [3]. O principal objetivo dessa linha de pesquisa é a criação de uma solução computacional capaz de executar a tradução automática da língua de sinais para a língua falada e vice-versa. Entretanto, são escassos os dados adequados (vídeos de diversas palavras gesticuladas por surdos) para a condução de experimentos. A fim de conduzir as pesquisas, alguns pesquisadores utilizam vídeos com sinais gesticulados por ouvintes. Entretanto, em sua grande maioria, tais ouvintes não têm conhecimento prévio da língua, o que faz com que nessa abordagem, os sinais resultantes não possuam a mesma qualidade de movimentos (sequencias corretas de poses e velocidade de movimentos), quando comparados aos executados por nativos ou especialistas da língua. Em face a necessidade de dados adequados para pesquisas envolvendo tradução automática da Língua Brasileira de Sinais (LIBRAS), o presente trabalho, em parceria com a Associação de Surdos de Ribeirão Preto (ASRP), criou a ASRP100. A ASRP100 é uma base de dados contendo vídeos captados com um dispositivo 3D, de pessoas nativas e ouvintes proficientes da LIBRAS gesticulando um grupo de 100 frases. O trabalho foi dividido em duas partes, sendo a primeira responsável pela criação da ASRP100 e a segunda pela criação de uma solução de reconhecimento de padrões capaz de executar a tradução automática de um grupo de 27 palavras da LIBRAS. II. REVISÃO BIBLIOGRÁFICA PARA CRIAÇÃO DE BASE DE DADOS DE LÍNGUA DE SINAIS Nesta seção são descritas algumas bases de dados estrangeiras e brasileiras disponíveis para soluções de tradução automática da língua de sinais. A. Bases de Dados Estrangeiras Pesquisadores da Universidade de Boston criaram a RWTH-BOSTON, uma base de dados com 201 vídeos legendados de frases da Língua Americana de Sinais (ASL) [4]. Essa base foi construída através da captura de vídeos 2D de três signatários nativos. Os vídeos foram gravados a 30 frames por segundo (fps) sendo o tamanho dos frames 312 x 242 pixels. Em 2008 os pesquisadores lançaram uma nova versão da base de dados chamada RWTH-BOSTON-400 com 843 sentenças gesticuladas por quatro signatários, dois homens e duas mulheres [5]. Em 2010 foram criadas as bases de dados do projeto European Cultural Heritage Online (ECHO), que resultou na criação de três bases com vídeos de três línguas de sinais: Língua de Sinais Britânica (BSL), Língua de Sinais Sueca (SSL) e Língua de Sinais Holandesa (NGT). Os contextos utilizados para escolha do vocabulário foram histórias infantis, palavras gerais e entrevistas com os signatários. Todos os vídeos foram legendados e possuem traduções para o Inglês, Sueco e para o Holandês [6]. Em 2012 foi criada a A3LIS-147, uma base de dados contendo vídeos da Língua de Sinais Italiana (LIS). A fim de encontrar volutnários, os pesquisadores firmaram uma parceria com o National Institute of Deaf People (Instituto Nacional de Surdos) localizado em Ancona, Itália. A base de dados consiste de 147 sinais isolados, que foram gesticulados por 10 signtários, sendo três mulheres e sete homens. Todos os sinais foram gesticulados ao menos uma vez por cada signatário. A base foi organizada em seis contextos distintos:

XI Workshop de Visão Computacional 2015 FINAL

Embed Size (px)

DESCRIPTION

Tradução automática da LIBRAS usando Modelos Ocultos de Markov.

Citation preview

Page 1: XI Workshop de Visão Computacional 2015 FINAL

Automatic Translation of Brazilian Sign Language (LIBRAS) with Hidden Markov Models (HMM)

Using samples of deaf, interpreters and a student of LIBRAS

Diego Gonçalves Dias Departamento de Computação

Universidade Federal de São Carlos - UFSCar São Carlos, Brasil

[email protected]

Ednaldo Brigante Pizollato Departamento de Computação

Universidade Federal de São Carlos - UFSCar São Carlos, Brasil

[email protected]

Abstract—the question of sign language automatic translation has been widely debated in the computer vision field. However, some works have not adequately addressed the issue of the quality of sign gesticulation. This is mainly because most of them have been using samples that are made by non-native communicators, which are different from sample of native communicators. This paper addresses the issue of LIBRAS translation with special attention to features of signs made by natives and experts. Specifically, we will look at translation of natives and experts signs that show that even though these kind of samples are complex, there are statistical methods able to deal with them. The result is a database with videos of LIBRAS made by 21 people (18 natives, 2 experts and 1 student of LIBRAS). In addition, this article describes the creation of a sign language translation solution using pattern recognition and image processing.

Keywords—Sign Language; Pattern Recognition; Image

Processing; Gestutre Recognition; Hidden Markov Models.

I. INTRODUÇÃO

Nos últimos anos houve um crescente interesse do meio científico em abordagens focadas na tradução automática de língua de sinais [1] [2] [3]. O principal objetivo dessa linha de pesquisa é a criação de uma solução computacional capaz de executar a tradução automática da língua de sinais para a língua falada e vice-versa. Entretanto, são escassos os dados adequados (vídeos de diversas palavras gesticuladas por surdos) para a condução de experimentos. A fim de conduzir as pesquisas, alguns pesquisadores utilizam vídeos com sinais gesticulados por ouvintes. Entretanto, em sua grande maioria, tais ouvintes não têm conhecimento prévio da língua, o que faz com que nessa abordagem, os sinais resultantes não possuam a mesma qualidade de movimentos (sequencias corretas de poses e velocidade de movimentos), quando comparados aos executados por nativos ou especialistas da língua.

Em face a necessidade de dados adequados para pesquisas envolvendo tradução automática da Língua Brasileira de Sinais (LIBRAS), o presente trabalho, em parceria com a Associação de Surdos de Ribeirão Preto (ASRP), criou a ASRP100. A ASRP100 é uma base de dados contendo vídeos captados com um dispositivo 3D, de pessoas nativas e ouvintes proficientes da LIBRAS gesticulando um grupo de

100 frases. O trabalho foi dividido em duas partes, sendo a primeira responsável pela criação da ASRP100 e a segunda pela criação de uma solução de reconhecimento de padrões capaz de executar a tradução automática de um grupo de 27 palavras da LIBRAS.

II. REVISÃO BIBLIOGRÁFICA PARA CRIAÇÃO DE BASE DE

DADOS DE LÍNGUA DE SINAIS

Nesta seção são descritas algumas bases de dados estrangeiras e brasileiras disponíveis para soluções de tradução automática da língua de sinais.

A. Bases de Dados Estrangeiras

Pesquisadores da Universidade de Boston criaram a RWTH-BOSTON, uma base de dados com 201 vídeos legendados de frases da Língua Americana de Sinais (ASL) [4]. Essa base foi construída através da captura de vídeos 2D de três signatários nativos. Os vídeos foram gravados a 30 frames por segundo (fps) sendo o tamanho dos frames 312 x 242 pixels. Em 2008 os pesquisadores lançaram uma nova versão da base de dados chamada RWTH-BOSTON-400 com 843 sentenças gesticuladas por quatro signatários, dois homens e duas mulheres [5].

Em 2010 foram criadas as bases de dados do projeto European Cultural Heritage Online (ECHO), que resultou na criação de três bases com vídeos de três línguas de sinais: Língua de Sinais Britânica (BSL), Língua de Sinais Sueca (SSL) e Língua de Sinais Holandesa (NGT). Os contextos utilizados para escolha do vocabulário foram histórias infantis, palavras gerais e entrevistas com os signatários. Todos os vídeos foram legendados e possuem traduções para o Inglês, Sueco e para o Holandês [6].

Em 2012 foi criada a A3LIS-147, uma base de dados contendo vídeos da Língua de Sinais Italiana (LIS). A fim de encontrar volutnários, os pesquisadores firmaram uma parceria com o National Institute of Deaf People (Instituto Nacional de Surdos) localizado em Ancona, Itália. A base de dados consiste de 147 sinais isolados, que foram gesticulados por 10 signtários, sendo três mulheres e sete homens. Todos os sinais foram gesticulados ao menos uma vez por cada signatário. A base foi organizada em seis contextos distintos:

Page 2: XI Workshop de Visão Computacional 2015 FINAL

locais públicos (39 sinais), estação ferroviária (35 sinais), hospital (19 sinais), terminal rodoviário (8 sinais), vida diária (16 sinais) e educação (30 sinais) [7].

B. Bases de Dados Brasileiras

Observando a necessidade de uma base de dados contendo vídeos da LIBRAS, Marcotti et al. [8] criaram uma base de dados contendo 117 sinais, sendo esses gesticulados por dois intérpretes não nativos da LIBRAS. No momento da execução do sinal, os signtários usaram luvas com cores diferentes para identificar a palma e a parte superior da mão. Os vídeos foram captuados a 30 fps e com resolução de 640 x 480 pixels.

Em 2012 Madeo et al. [9] criaram uma base de dados contendo características isoladas da LIBRAS como, por exemplo, 20 configurações de mão, cinco movimentos da mão (arco, lateral, encurvado, para cima e em ziguezague), quatro orientações das mãos e o alfabeto manual da LIBRAS. Para a gravação dos vídeos foi utilizada um webcam convencional. No momento da gesticulação os voluntários usavam luvas que identificavam a mão esquerda e a direita.

Dias e colaboradores [10] criaram uma base de dados contendo 50 gestos da LIBRAS. No total foram gravados 600 vídeos, gesticulados por quatro voluntários, sendo que três não tinham conhecimento prévio da língua e um era professor não nativo da LIBRAS. Os vídeos foram utilizados em [11], onde os pesquisadores utilizaram os Modelos Ocultos de Markov (HMM) em uma abordagem de trandução automática da LIBRAS.

C. Análises das Bases de Dados Contendo Vídeos de

Língua de sinais

Com base na experiência obtida com a evolução dos trabalhos relacionadas a criação de bases de dados contendo vídeos de língua de sinais, o meio científico chegou a um consensso sobre as boas práticas para criação desse tipo de base. A seguir descreveremos essas práticas.

• As línguas de sinais são tão complexas quanto qualquer outra língua, sendo assim, é necessário organizar o vocabulário da base em contextos específicos como, por exemplo, palavras/frases usadas em aeroportos. O objetivo é diferecionar os estudos a um problema dimensionalmente reduzido. Além disso é recomendado que cada surdo execute uma mesma palavra/frase mais de uma vez de modo a gerar múltiplas amostras de um mesmo sinal[7]. O número de repetições é fundamental para a futura utilização da base, em outras palavras quanto mais amostras de um dado sinal mais eficaz será a sua modelagem por um algormito de modelagem estatística, por exemplo[7].

• É necessário que cada surdo assine um termo, onde concorde que as suas imagens sejam utilizadas pelo meio científico. No Brasil, para desenvolver pesquisas que utilizam seres humanos é necessário ter o aval do comitê de ética da universidade em questão. Esse processo viabiliza a comparação de diferentes abordagens, o que contribui para evolução da linha de pesquisa[5];

• A utilização de legendas nos vídeos facilita o uso da base por outros pesquisadores que, em alguns casos, desconhecem a língua[5];

• Os sinais devem ser executados por nativos, pois possuem maior fluência e consequentemente maior domínio sobre a língua[5];

• É importante a utilização de equipamento capazes de registrar o maior número de características possíveis no momento da execução do sinal. Como ilustração, observamos que em [1] os pesquisadores utilizaram uma câmera capaz de gravar vídeos a 10 fps, enquanto em outras pesquisas [9] são utilizadas câmeras que gravam a 30 fps. A diferença é que as câmeras do primeiro grupo, 10 fps, registram três vezes menos característica do que a do segundo grupo, 30 fps. Um exemplo de equipamento que tem se mostrado eficiente é a utilização de sensores de profundidade (com, por exemplo , o Kinect) que são capazes de captar diversas informações ao mesmo tempo como, por exemplo, imagens convencionais em RGB, mapas de profundidade e dados do esqueleto do usuário(como a posição da mão, por exemplo). Com essa junção de equipamentos o sensor 3D é capaz de modelar o ambiente em 3 dimensões fornecendo informações, antes, desconhecidas sobre o sinal[8].

Os métodos e técnicas utilizadas para a criação da ASRP100 são fundamentadas nos descritos do meio científico. Algumas características da ASRP100 são apresentadas abaixo:

• Dentre os voluntários 18 eram nativos, 2 eram interpretes proficientes e apenas um era estudante da LIBRAS;

• O vocabulário foi organizado em contextos específicos sendo esses: frases usadas em hospitais e frases usadas no dia a dia;

• A fim de captar o maior número de características possíveis durante a gesticulação dos sinais, para gravação dos vídeos foi utilizado um sensor de profundidade;

• Todos os vídeos da base estão devidamente legendados. Com isso, tanto o significado do sinal como tempo inicial e final de cada palavras são identificados;

• Os voluntários assinaram um termo permitindo que os seus dados fossem utilizados pelo meio científico;

• Todos os sinais foram executados 2 vezes por cada voluntário;

III. METODOLOGIA

Como descrito na seção II, existem esforços na criação de bases de dados contendo vídeos da LIBRAS. Todavia em diversas situações as bases não contêm frases/palavras gesticuladas por nativos ou especialistas ou os vídeos não são legendados ou ainda o vocabulário utilizado não está organizado em contextos específicos. Então, com o objetivo de criar uma base de dados contendo dados de nativos e especialistas da LIBRAS que não apresentasse as lacunas mencionadas, criou-se a ASRP100. Essa seção descreve o processo de criação dessa base de dados.

A. Captação dos Voluntários

A fim de encontrar voluntários para gravação dos vídeos, foi feita uma parceria com a Associação de Surdos de Ribeirão Preto (ASRP) a qual permitiu que o projeto fosse apresentado aos seus associados. Através dessa parceria foram cadastradas 21 pessoas (13 homens e 8 mulheres), sendo 18 surdas congênitas ou que ficaram surdas nos primeiros anos de vida, 2 professoras de LIBRAS, com mais de sete anos de

Page 3: XI Workshop de Visão Computacional 2015 FINAL

experiência, e um estudante da língua. Os voluntários tinham entre 25 a 50 anos de idade.

B. Vocabulário Utilizado

O vocabulário utilizado para a gravação dos vídeos foi divido em duas partes: palavras mais empregadas em prontos socorros e palavras usadas no dia a dia. A fim de identificar as palavras mais utilizadas em prontos socorros, foi usado o levantamento do senso demográfico 2010 do IBGE [12], o qual descreve as doenças mais comuns entre os brasileiros. Com base nessas informações foram criadas frases utilizando os sintomas dessas doenças como, por exemplo, “Eu estou com dor de cabeça”, “Ela está com diarreia” e “Ele está com febre”. Além disso, foram observadas características peculiares da LIBRAS (de modo a explorar características como gesticulação com uma e com as duas mãos, utilização de mão dominante e expressões não manuais como expressões faciais, por exemplo). Por sua vez, as frases mais utilizadas no dia a dia foram criadas empiricamente. No total, 100 frases foram criadas.

C. Gravações dos Vídeos

Diferentemente das pesquisas citadas anteriormente, as quais usam câmeras convencionais para gravação dos vídeos, a presente pesquisa utilizou um dispositivo 3D (Kinect). O Kinect é o resultado de uma parceria entre a Microsoft e uma empresa israelense chamada PrimeSense. O sensor foi criado como um acessório para a plataforma de jogos Xbox 360 a fim de possibilitar a iteração através dos movimentos do corpo.

O Kinect é composto por um projetor de raios infravermelhos, um conjunto de microfones e uma câmera VGA (RGB clássica). A combinação desses elementos faz com que o Kinect seja capaz de estimar a posição do usuário, desde que o mesmo esteja entre 80 centímetros a 4 metros de distância do sensor. Para tal, ele correlaciona a projeção dos raios infravermelhos e a imagem capturada pela câmera. O resultado dessa combinação é um mapa de profundidade que apresenta boa precisão. Além disso, ele é capaz de calcular 48 pontos do esqueleto do usuário como, por exemplo, a posição da cabeça, braços e peito. Com isso, o Kinect consegue capturar três tipos de informações distintas: vídeos em RGB, mapa de profundidade (resultado da combinação dos feixes de luz do sensor e a câmera RGB) e posições de partes do esqueleto. Na Figura 1 estão ilustrados os três tipos de informações distintas gravadas pelo sensor.

Figura 1. Da esquerda para a direita: imagem em RGB, mapa de

profundidade e posições de partes do esqueleto do usuário Durante as gravações, além do Kinect, foram utilizados

um suporte tripé para o Kinect, um monitor AOC de 21 polegadas e um notebook Sony Vaio SVE15114FXS com processador Intel Core i5 e 6 GB de memória RAM.

No total a ASRP100 é composta por quatro partes: vídeos no sistema de cores RGB, mapas de profundidade, legendas1 dos vídeos e arquivos com dados do esqueleto dos signatários.

1 Todos os vídeos possuem legendas com informações como início e fim de cada sinal.

Na Tabela 1 é apresentado um comparativo entre a ASRP100 e as bases de dados estrangeiras.

TABELA 1. Comparação entre ASRP100 e bases de dados internacionais BD Surdos Ouvintes Palavras Frases Vídeos Anotações

RWTH 4 0 * 843 * SIM ECHO-NGT 100 0 2647 240 * SIM ECHO-BSL 2 0 2865 262 * SIM ECHO-SLL 1 0 3117 159 104 SIM A3LIS-147 10 0 147 0 294 SIM ASRP100 18 3 509 100 4200 SIM

O símbolo * representa a falta dessa informação na fonte.

A ASRP100 possui um dos maiores números de nativos e de vídeos gravados. Além disso, a ASRP100 é uma das primeiras bases de dados com vídeos de nativos gravados com o sensor Kinect. Na Tabela 2 é apresentado um comparativo entre a ASRP100 e as bases de dados brasileiras.

TABELA 2. Comparação entre ASRP100 e bases de dados brasileiras BD Surdos Ouvintes Palavras Frases Vídeos Anotações

ITA2008 0 2 117 0 234 * DBOSCO 0 4 50 0 600 * UFSCAR* 0 45 41 0 1845 * MADEO* * * 51 0 * * CANEIRO 3 0 ALF 0 234 * ASRP100 18 3 509 100 4200 SIM ALF = alfabeto manual. O símbolo * representa a falta da informação na fonte. Tanto a UFSCAR quanto a MADEO gravaram o alfabeto manual e essas gesticulações foram contadas como palavras.

Comparada às bases de dados brasileiras a ASRP100 é a base com maior número de nativos da língua, maior número de palavras e frases, maior número de vídeos e a única contendo legendas nos vídeos.

D. Visão Computacional e Representação de Imagem

A visão computacional une os campos de processamento de imagens e reconhecimento de padrões e abrange métodos de aquisição, análise e interpretação de imagens. Dessa forma, o processamento de imagens digitais desempenha importante papel no campo de visão computacional.

A escolha de uma representação adequada de uma imagem pode simplificar bastante seu processamento e a forma de aquisição da imagem também pode implicar mudanças significantes na natureza e quantidade de informações disponíveis em sua representação, como visto na Figura 2.

Figura 2. Diferentes espaços de cores renderizados sobre formas

geométricas. A renderização foi feita com POV-Ray por Michael Horvath, compartilhado sob licença Creative Commons

Explorando informações alternativas ou

complementares, como o uso de mapas de profundidade (Figura 3), pode-se obter maior sucesso na detecção de objetos específicos para se realizar segmentação do corpo humano, como é obtido pelo algoritmo de segmentação da plataforma de jogos Xbox 360 para análise de mapas de profundidade gerados pelo sensor Kinect.

Page 4: XI Workshop de Visão Computacional 2015 FINAL

Figura 3. Saída do sensor Kinect. Esquerda: matriz de pontos projetados pelo emissor IR. Direita: Mapa de profundidade obtido através da análise

da matriz de pontos projetada[13]

O Kinect decifra informações de cenas 3D a partir de uma projeção contínua e estruturada de um padrão de luz infravermelho. De modo geral, esse sistema de detecção de profundidade pode ser visto como uma variação da técnica de iluminação estruturada [13].

A precisão do sensor Kinect foi investigada por Khoshelham [14], que descreveu seu funcionamento. Segundo os seus criadores, a técnica de medição da profundidade consiste em um processo de triangulação dos pontos emitidos, de modo que o seu emissor laser projeta um único feixe que é subsequentemente dividido em múltiplos feixes seguindo uma grade de refração, criando um padrão luminoso projetado sobre o ambiente, como visto na Figura 4. Assim, esse padrão é capturado pela câmera infravermelha e correlacionado contra um padrão de referência [15] [16].

Figura 4. Padrão de pontos projetado pelo sensor Kinect[13]

E. Segmentação de Imagens em Profunidade

A segmentação de imagens é responsável por identificar regiões de interesse em uma imagem digital. De modo geral, pode-se dizer que a segmentação é a técnica de agrupamento de áreas de interesse em uma imagem digital.

A literatura apresenta diversos métodos de segmentação de imagens como, por exemplo, segmentação baseada em histogramas [17], em compressão de imagens [18] e em detecção de bordas [19]. No contexto desse trabalho, essas técnicas não serão necessárias, pois não serão utilizadas imagens digitais convencionais e sim mapas de profundidade gerados pelo Kinect.

O mapa de profundidade é um tipo distinto de imagem digital. Diferente das imagens em formatos padrões (como por exemplo RGB e HSV) ele possui apenas um valor para cada pixel, sendo esse valor da profundidade aproximada do pixel na cena. Dessa forma, a fim de selecionar as regiões de interesse (as mãos do usuário nesse caso), foi definido um limiar τ que representa a profundidade limite para renderização dos pixels da imagem. Em outras palavras podemos dizer que só serão renderizados pixels de profundidade menor ou igual a τ. Formalmente tem-se:

����� � ����� �� ���, � � ��������, � � � (1)

sendo: DM o mapa de profundidade, d a profundidade de cada pixel e τ o limiar. Essa técnica também conhecida como Virtual Wall (Barreira Virtual) [1] é simples, mas se mostrou

muito eficiente para a segmentação de mapas de profundidade. O limiar pode ser definido empiricamente com um valor fixo, ou dinamicamente tendo como base o corpo do usuário, por exemplo.

F. Clusterização: Algoritmo de Aprendizagem não

Supervisionado K-Means

A clusterização é o processo de dividir um conjunto de dados em um pequeno número de clusters. Esse pode ser considerado o problema mais importante em algoritmos de aprendizagem não supervisionada. O seu papel é encontrar similaridade em uma coleção de dados não rotulados a priori. De modo geral, pode-se dizer que a clusterização é o processo de organizar objetos dentro de grupos, dos quais os membros são similares de alguma forma.

Proposto por J. MacQueen em 1967 [20], o algoritmo de Análise de Agrupamento K-Means é considerado um dos algoritmos de aprendizado não supervisionado mais simples para solução do problema de clusterização, e um dos mais utilizados atualmente. O objetivo do K-Means é agrupar conjuntos de dados em clusters (k) usando para isso uma característica em comum entre os dados como a distância, por exemplo. Formalmente pode-se dizer que esse método encontra posições μ�, � � 1. . . � dos clusters que minimizam as distâncias dos dados para o cluster, onde:

arg�� ∑ ∑ ∥ # $%& ∥''(∈*+,&-. /

(2)

de modo que 0& representa o conjunto de valores pertencentes ao cluster �. Nesse caso especificamente, a clusterização usa, como característica de similaridade, a Distância Euclidiana Quadrática (DEQ) que é definida na equação (2) como ∥# $%& ∥'', de modo que essa é a DEQ entre # e %&, em outras palavras essa é a distância entre um determinado valor do conjunto de dados e um centroide de um dado cluster. O principal objetivo é fazer com que cada objeto seja rotulado como sendo pertencente ao cluster mais próximo.

O presente trabalho utiliza a clusterização com a técnica de K-Means descrita por LIoyd [21], sendo que o critério de similaridade foi a distância entre os pontos e a métrica escolhida foi a Distância Euclidiana Quadrática, descrita na equação 3:

�(1 � �2. $3.�' 4 �2' $3'�' 4 �25 $35�'

� 6�27 $37�'5

78.

(3)

onde �(1representa a distância entre os pontos 2 e 3.

O resultado das distâncias de todos os pontos com os seus respectivos clusters é armazenado em uma matriz, chamada matriz de similaridade. A rotulação de cada objeto do conjunto de dados é feita com base na menor distância entre o objeto e os centroides. Esse processo executa o que podemos chamar de pré-classificação dos dados, ou seja, identifica as informações em conjuntos similares, facilitando assim a classificação feito pela técnica de treinamento supervisionado, utilizada após a clusterização. Os dados resultantes do processo de clusterização foram utilizados para treinamento da técnica de aprendizagem supervisionada conhecida como Modelos Ocultos de Markov (HMM - descrita na sessão G).

G. Modelos Ocultos de Markov (HMM)

Os HMMs modelam sequências de observações no decorrer do tempo. A principal característica dos processos de Markov é a definição de que toda a história passada está

Page 5: XI Workshop de Visão Computacional 2015 FINAL

resumida no valor atual do processo. Em outras palavras, apenas o estado atual do processo influencia na próxima mudança de estado.

O HMM é um processo duplamente estocástico2, de modo que um desses processos é oculto, por isso o nome “modelos ocultos”. Dessa forma, o HMM é capaz de modelar a probabilidade conjunta de duas variáveis aleatórias, sendo essas a distribuição das observações 2 � �21, 22, . . . , 2�� e a sua relação com o tempo na forma da sequência de estados escondidos 3 � �31, 32, . . . , 3��, em que cada estado escondido 3: pertencente a um conjunto de estados finitos. Formalmente um HMM é defino como uma quíntupla.

; � �,�, <, =, >� (4)

Sendo:

• n o número de estados do modelo;

• m o número de símbolos distintos observado por cada estado;

• A a distribuição de probabilidades de transição entre estados, dada na forma de uma matriz 2 com < �? &@A, onde cada &@ representa a probabilidade de transição do estado i para o estado j, com i, j ≤ n;

• B a distribuição de probabilidades de emissão de cada símbolo do alfabeto; no caso discreto, é dada na forma de uma matriz n x m com B = {bj (o)}, em que cada vetor bj contém a tabela de frequências modelando a emissão de cada símbolo da sequência de observações para o estado j, com j ≤ n;

• π o vetor de probabilidade para o estado inicial. Esse vetor armazena a probabilidade de cada estado ser o estado emissor do primeiro símbolo da sequência de observações. Sendo:> � ?>CA, com � D . De maneira simplificada, pode-se explicar HMM como

sendo uma ferramenta que captura características de um fenômeno ao longo do tempo e as distribui entre seus estados, de tal forma que a questão temporal também é abordada. Existem 2 fases importantes de um HMM: treinamento e teste. Na fase de treinamento, diversas amostras do fenômeno são apresentadas e o HMM procura fazer a melhor distribuição das características em seus estados. Na fase de testes, os dados do fenômeno são apresentados aos modelos de HMM e aquele que apresentar melhor resultado final é o que melhor representa o fenômeno e, portanto, será o escolhido.

IV. IMPLEMENTAÇÃO E RESULTADOS PRELIMINARES

A. Segmentação de Imagens em Profunidade

O presente trabalho utiliza os mapas de profundidade para identificar as configurações das mãos do usuário no momento da execução do sinal. Embora seja uma técnica simples, demonstrou ser muito útil. Viu-se, também, que há duas formas de estabelecer o limiar: definindo um valor fixo ou criando um processo para captação dinâmica do limiar. O presente trabalho optou por definir o limiar de forma dinâmica, conforme visto na equação 5:

� � E $ 50�� (5)

ondeE é a distância do peito do signatário que é fornecida pelo sensor Kinect. Para identificar partes do corpo do usuário o Kinect utiliza o algoritmo de florestas de decisões aleatórias [24]. Com isso, serão consideradas relevantes apenas as

2 São processos aleatórios que dependem do tempo.

regiões da imagem que estiverem em uma distância menor ou igual a τ, como visto na Figura 5. Já na Figura 6 é apresentado o resultado do Virtual Wall na execução do sinal MORAR.

Figura 5. A porção verde ilustra a área da Barreira Virtual (Virtual Wall)

Figura 6. Aplicação da Virtual Wall. Do lado esquerdo o mapa de profundidade original, do lado direito a imagem com a barreira virtual

B. Extração de Características

Na fase de extração de características as imagens resultantes da Virtual Wall foram reduzidas para um espaço de 32 x 32 pixels, formando um vetor de características de 1024 posições, como pode ser visto na Figura 7. Esses vetores serão utilizados no processo de clusterização feito pelo algoritmo de K-Means.

Figura 7. Extração do vetor de característica com base nas imagens geradas

pelo processo de Barreira Virtual (Virtual Wall)

C. Clusterização dos Dados

Após a fase de extração de características, foi utilizado o algoritmo de treinamento não supervisionado K-Means para rotulação dos dados. Para tal, há duas informações importantes que devem ser definidas, as quais afetam

Page 6: XI Workshop de Visão Computacional 2015 FINAL

diretamente o desempenho do processo: a similaridade a ser observada e o número de centroides. O presente trabalho, conforme mencionado, utiliza como similaridade a Distância Euclidiana Quadrática [21]. Quanto ao número de clusters (centroides), foram utilizadas cinco clusterizações diferentes, sendo essas com 16, 32, 64, 128 e 256 clusters. Para chegar ao melhor número de clusters foram feitas avaliações medindo a precisão dos HMMs ao utilizar os dados resultantes da clusterização. Com base na precisão do HMM foi identificada a quantidade de cluster, nesse caso 64, que melhor representa os dados obtidos na fase de extração de características, ou seja, obtiveram os melhores resultados com o HMM.

D. Definição dos Elementos do HMM

Existem dois atributos cruciais para o perfeito funcionamento dos HMMs: a arquitetura e o número de estados de cada modelo. O presente trabalho utilizará a arquitetura left-right, pois, com base na literatura essa é a mais adequada para a tradução automática de língua de sinais. Já os números de estados por modelo foram definidos com base no número de configurações de mãos [25] presentes na execução do sinal.

O HMM foi treinado utilizando as informações resultantes do processo de clusterização feito pelo K-Means. A condição de parada para o algoritmo de treinamento foi a quantidade de iterações, a qual foi definida em 400 vezes. Sendo assim, após executar o processo de treinamento (otimizando cada modelo com base nas suas respectivas amostras de treinamento) por 400 vezes, o algoritmo para.

E. Configurações dos Experimentos

Para a realização dos experimentos, para cada sinal a ser traduzido foi definido um HMM que o represente. Cada modelo foi treinado com dois terços do total de amostras relativas a cada sinal. Por sua vez, na fase de reconhecimento foram apresentadas aos modelos um terço das amostras que não foram utilizadas na fase de treinamento.

Ao apresentar uma amostra desconhecida, cada modelo emite a sua verossimilhança com a amostra, de modo que a maior verossimilhança definirá o modelo com maior probabilidade de ter gerada uma determinada amostra, como visto no esquema da Figura 8.

Figura 8. Processo de inferência por máxima verossimilhança feito pelos

HMMs[13]

3 O modelo fica extremamente ajustado para o conjunto de amostras de treinamento e com baixa taxa de acerto quanto as amostras de validação. Um modelo com overfitting apresenta alta precisão quando testado com o

V. RESULTADOS FINAIS

No processo de avaliação foram utilizadas quantidades de clusters distintas a fim de encontrar a melhor configuração para o processo de clusterização. Os resultados dessa fase de avaliação podem ser observados na Tabela 3.

TABELA 3. Fase de avaliação para encontrar o melhor número de clusters

Nº Clusters Média de Acerto

16 54,92 % 32 61,63 % 64 69,06 %

128 68,04 % 256 64,33 %

O aumento do número de clusters é benéfico até certo

ponto, pois após isso há ocorrência de overfitting3. O processo de validação foi feito exatamente para evitar o overfitting, encontrando assim o melhor número de cluster para o conjunto de dados. Com o overfitting, com o aumento do número de cluster o modelo começa a ficar extremamente especializado no reconhecimento dos dados de treinamento e consequentemente piora o seu desempenho na fase de validação. Os melhores resultados foram obtidos utilizando-se 64 clusters e estão apresentados na Tabela 4.

TABELA 4. Melhor resultado do processo de tradução automática de 27 palavras da LIBRAS

Palavra Treinamento Validação Acerto % Acerto

Eu 478 239 177 74,06 % Ter 170 85 37 43,53 % El@ 130 65 18 27,69 % Já 124 62 33 53,23 % Morar 88 44 34 77,27 % Problema 88 44 31 70,45 % Dor 80 40 18 45,00 % Namorad@ 56 28 16 57,14 % Viajar 112 56 46 82,14 % Família 110 55 48 87,27 % Câncer 110 55 37 67,27 % Febre 42 21 9 42,86 % Pé 108 54 39 72,22 % Quebrar 102 51 35 68,63 % Torcer 108 54 34 62,96 % Pedra Rins 36 18 10 55,56 % Pizza 20 10 6 60,00 % Dengue 88 44 35 79,55 % Cinema 88 44 39 88,64 % Avião 80 40 33 82,50 % Braço 88 44 36 81,82 % Aids 88 44 37 84,09 % Próstata 84 42 32 76,19 % Operar 82 41 33 80,49 % Comer 80 40 34 85,00 % Formigamento 80 40 36 90,00 % Média 69,06%

VI. CONCLUSÃO

A ASRP100 possui mais de 4.200 amostras gesticuladas por 18 nativos, 2 professores de LIBRAS e 1 estudante da LIBRAS. Além disso, como foi gravada com um sensor 3D, essa base é composta por quatro tipos de dados: vídeos em RGB, mapas de profundidade, dados do esqueleto e legendas (indicando tempos inicial e final de cada palavra). Devido à grande dificuldade para encontrar voluntários nativos e também de comunicação entre ouvinte e nativo, futuras pesquisas poderiam focar na gravação de vídeos apenas com intérpretes, que em muitas situações têm conhecimento mais aprofundado da LIBRAS e a mesma desenvoltura de articulação dos movimentos.

Além disso, para pesquisas que utilizam métodos estatísticos, quanto maior for o número de amostras melhor

conjunto de dados de treinamento, porém tal modelo não é uma boa representação da realidade.

Page 7: XI Workshop de Visão Computacional 2015 FINAL

serão os resultados, ou seja, 20 frases gesticuladas 5 vezes por cada voluntário gerariam melhores resultados do que 100 frases gesticuladas 2 vezes.

No presente trabalho, também observou-se que a criação do vocabulário deve ser cuidadosamente analisada, pois terá um impacto muito grande, tanto na gravação dos vídeos, quanto na utilização da base por futuras pesquisas. Verificou-se, durante a realização deste trabalho, que vários surdos desconheciam como articular os movimentos de algumas palavras, principalmente relacionadas ao tema saúde.

Na fase de teste da base, com o procedimento de reconhecimento automático das palavras em LIBRAS, o HMM foi capaz de reconhecer uma média de 69,06% das amostras. Mesmo que a maior parte dos sinais é feita com as mãos, pesquisas futuras poderiam unir as características contidas nas configurações de mãos com as expressões não manuais como as expressões faciais, por exemplo.

AGRADECIMENTOS

Gostaríamos de agradecer a Associação de Surdos de Ribeirão Preto (ASRP) por ter ajudado tanto a encontrar voluntários quanto cedendo as suas instalações para que os vídeos fossem gravados. Também somos gratos ao CNPq por ter financiado, parcialmente, esse projeto de pesquisa.

REFERENCIAS

[1] E. B. Pizzolato, M. D. S. Anjo e G. C. Pedroso, “Automatic recognition of finger spelling for LIBRAS based on a two-layer architecture”, Proceedings of the 2010 ACM Symposium on Applied Computing, pp. 969-973, 2010.

[2] Y. Quan, “Chinese Sign Language Recognition Based On Video Sequence Appearance Modeling”, Industrial Electronics and Applications (ICIEA), 2010 the 5th IEEE Conference on, pp. 1537 - 1542, 15-17 June 2010.

[3] P. S. Rajam e G. Balakrishnan, “Recognition of Tamil Sign Language Alphabet using Image Processing to aid Deaf-Dumb People”, Procedia Engineering, vol. 30, nº 30, p. 861–868, 2012.

[4] C. Neidle, J. Kegl, D. Maclaughlin, B. Bahan e R. G. Lee, “The Syntax of American Sign Language: Functional Categories and Hierarchical Structure”, M. Press, Ed., Cambridge, MA, 2000.

[5] P. Dreuw, C. Neidle, V. Athitsos, S. Sclaroff e H. Ney, “Benchmark Databases for Video-Based Automatic Sign Language Recognition,” International Conference on Language Resources and Evaluation (LREC), pp. 1115-1121, 2008.

[6] B. Bergman e J. Mesch, “ECHO Data Set for Swedish Sign Language (SSL),” Stockholm, 2004.

[7] M. Fagiani, E. Principi, S. Squartini e F. Piazza, “A New Italian Sign Language Database”, Advances in Brain Inspired Cognitive Systems, pp. 164-173, 2012.

[8] P. Marcotti, A. Valdestilhas, L. B. Abiuzi, C. H. Q. Forster e F. A. d. Almeida, “Uma Abordagem de Reconhecimento de Gestos Para

Tradução de LIBRAS Para Português”, Conferência IADIS Ibero-Americana WWW/Internet 2008, pp. 193-201, 2008.

[9] R. C. Madeo, S. M. Peres, C. A. Lima e C. Boscarioli, “Hybrid Architecture for Gesture Recognition: Integrating Fuzzy-Connectionist and Heuristic Classifiers using Fuzzy Syntactical Strategy”, WCCI 2012 IEEE World Congress on Computational Intelligence, pp. 10-15, 2012.

[10] J. B. Dias, K. P. Souza e H. Pistori, “Conjunto de Treinamento para Algoritmos de Reconhecimento de LIBRAS”, II Workshop de Visão Computacional,, 16-18 Outubro 2006.

[11] K. P. d. Souza, J. B. Dias e H. Pistori, “Reconhecimento Automático de Gestos da Língua Brasileira de Sinais utilizando Visão Computacional”, III WVC - Workshop de Visão Computacional, 22-24 Outubro 2007.

[12] IBGE, “Censo Demográfico 2010 - Resultados Preliminares da Amostra,” IBGE, Janeiro 2011. Disponível em: <http://www.ibge.gov.br/home/estatistica/populacao/censo2010/resultados_preliminares_amostra/default_resultados_preliminares_amostra.shtm>. Acesso em: Fevereiro 2014.

[13] C. R. Souza, “Reconhecimento de gestos da Língua Brasileira de Sinais através de Máquinas de Vetores de Suporte e Campos Aleatórios Condicionais Ocultos,” Dissertação de Mestrado, Departamento de Computação, Universidade Federal de São Carlos – UFSCar 2013.

[14] K. Khoshelham e O. E. Sander, “Accuracy and resolution of kinect depth data for indoor mapping applications”, Sensors, vol. 12, nº 2, pp. 1437-1454, 2012.

[15] B. Freedman et al., “Depth mapping using projected patterns”. Estados Unidos Patente 8,150,142, 3 Abril 2012.

[16] J. Batlle, P. Jordi e J. Salvi, “Pattern codification strategies in structured light systems”, Pattern Recognition, vol. 37, nº 4, pp. 827-849, 2004.

[17] O. J. Tobias e R. Seara, “Image segmentation by histogram thresholding using fuzzy sets”, Image Processing, vol. 11, nº 12, pp. 1457-1465, 2002.

[18] S. Rao et al., “Natural image segmentation with adaptive texture and boundary encoding”, Computer Vision–ACCV 2009, pp. 135-146, 2010.

[19] J. Canny, “A computational approach to edge detection”, Pattern Analysis and Machine Intelligence, IEEE Transactions, nº 6, pp. 679-698, 1986.

[20] J. Macqueen et al., “Some methods for classification and analysis of multivariate observations”, Proceedings of the fifth Berkeley Symposium on Mathematical Statistics and Probability, pp. 281-297, 1967.

[21] X. Wu e V. Kumar, “The Top Ten Algorithms in Data Mining”, CRC Press, 2009.

[22] C. M. Bishop, Pattern Recognition and Machine Learning, 1ª ed., Springer, 2007.

[23] G. D. Forney Jr, “The viterbi algorithm,” Proceedings of the IEEE, vol. 61, nº 3, pp. 268-278, 1973.

[24] R. A. Newcombe e et al., “KinectFusion: Real-time dense surface mapping and tracking. In: Mixed and augmented reality (ISMAR),” 10th IEEE international symposium, pp. 127-136, 2011.

[25] L. F. Brito, A Língua Brasileira de Sinais, 1ª ed., vol. I, Rio de Janeiro: Universidade Federal do Rio de Janeiro.