A Inteligência Artificial empoderando por meio da acessibilidade


Ultimamente temos visto uma amplificação do uso de IA (Inteligência Artificial) para diversos fins como análises preditivas, jogos, roteirização, análise de sentimentos, chat bots, reconhecimento de imagens e muitos outros. Mas um uso muito interessante da IA, que foge dos parâmetros comerciais, é na acessibilidade.

Com esse objetivo em mente, nos predispusemos a tornar acessível o site Microsoft Tech. Se você entrar em qualquer artigo do site, perceberá que logo abaixo a imagem de destaque do artigo, existe uma barra de áudio que lê o conteúdo para o usuário. Além disso, as imagens também são descritas para os usuários. Para tornar tudo isto possível foram utilizadas as seguintes tecnologias: Computer Vision, Text To Speech e Translate.

Text to Speech

É uma API de serviços cognitivos capaz de converter texto em fala. O processo é simples: o arquivo de texto é enviado a API por meio de solicitações HTTP POST, que, então é sintetizado em uma voz humana e retornado como um arquivo de áudio.

Este tipo de API não é benéfica apenas para deficientes visuais ou pessoas com dificuldade de leitura, mas também para pessoas que estão se deslocando, dirigindo ou até mesmo se exercitando. Esta API possui suporte para mais de 75 vozes e 45 idiomas. A API é suportada por Linux, Windows e Android.

Para fazer uma solicitação HTTP basta enviar um POST com o texto no corpo da solicitação. O comprimento máximo da solicitação é de 1024 caracteres e a solicitação deve conter o seguinte cabeçalho.

Imagem contendo cabeçalho, valores e comentários

Computer Vision

A visão computacional é utilizada para reconhecimento de imagens. A API de visão computacional da Microsoft, com a nuvem por trás, permite que os desenvolvedores possam analisar imagens para:

  • Taguear imagens com base no conteúdo;
  • Categorizar imagens;
  • Identificar o tipo e a qualidade das imagens;
  • Detectar faces humanas e retornar suas coordenadas;
  • Reconhecer um conteúdo específico a um domínio;
  • Gerar descrições do conteúdo;
  • Usar o reconhecimento óptico de caracteres para identificar o texto impresso encontrado nas imagens;
  • Reconhecer texto manuscrito;
  • Distinguir esquemas de cores;
  • Sinalizar um conteúdo como adulto.

No portal a API foi utilizada para gerar descrições das imagens. A descrição resume o que é encontrado na imagem. O algoritmo da API gera várias descrições baseadas nos objetos encontrados na imagem e atribui uma pontuação para cada uma gerando uma lita, que retorna um arquivo JSON como visto abaixo.

uma foto preto e branco de uma cidade

JSON retornado.

'description':{
   "captions":[
      {
         "type":"phrase",
         'text':'a black and white photo of a large city',
         'confidence':0.607638706850331
      }
   ]   
   "captions":[
      {
         "type":"phrase",
         'text':'a photo of a large city',
         'confidence':0.577256764264197
      }
   ]   
   "captions":[
      {
         "type":"phrase",
         'text':'a black and white photo of a city',
         'confidence':0.538493271791207
      }
   ]   
   'description':[
      "tags":{
         "outdoor",
         "city",
         "building",
         "photo",
         "large",
      }
   ]
}

 

Translate

Infelizmente a API de visão computacional retorna a descrição da imagem em inglês, sendo assim, foi necessário implementar mais uma API, a de tradução.

A API de tradução da Microsoft também é bem simples e funciona parecida como a API Text to Speech. Por meio de uma solicitação HTTP POST é enviado seguindo os parâmetros abaixo.

Parâmetros da solicitação HTTP POST

Os cabeçalhos da solicitação incluem:

Conteúdo dos cabeçalhos de solicitação

O corpo da solicitação é uma matriz JSON, na qual cada elemento é um objeto JSON com uma propriedade de cadeia de caracteres denominada Text, como no exemplo abaixo.

Entrada

[
    {"Text":"こんにちは"},
    {"Text":"さようなら"}
]

Saída

[
    {"text":"konnnichiha","script":"Latn"},
    {"text":"sayounara","script":"Latn"}
]

 

Um mundo mais inclusivo

Pudemos perceber que com a aplicação simples destas APIs de serviços cognitivos, somo capazes de tornar o mundo mais acessível para todos, mas podemos fazer muito mais.

Acreditamos que um dos deveres da tecnologia é tornar o mundo um lugar melhor, é empoderar as pessoas para que elas possam ir além. Sendo assim, devemos utilizar a tecnologia para aproximar as pessoas, e nunca excluí-las. E vocês, como têm utilizado a tecnologia neste sentido e quais tecnologias tem utilizado?


Autor: Microsoft Tech