Como a IA entende e interpreta a mídia visual

Inteligência artificial, ou IA, é um termo extenso que abrange vários aspectos do nosso mundo. Desde nos ajudar com os avanços da ciência médica até a adição de novos recursos até mesmo aos smartphones Android mais acessíveis, nenhuma definição pode resumir com precisão o que é IA. Isso ocorre porque a IA tem muitos usos e aplicações no mundo real em vários setores.


Um modelo de visão computacional funciona em segundo plano e geralmente é responsável por imagens exclusivas ou recursos de IA em aplicativos baseados em imagens. Neste guia, discutimos o que é um modelo de visão computacional e os três tipos de modelos de visão usados.


O que um modelo de visão computacional faz?

Assim como o ChatGPT, o popular chatbot baseado em IA que mudou o mundo para sempre com sua tecnologia de modelo de linguagem grande (LLM), um modelo de visão computacional é a próxima evolução além dos aplicativos baseados em texto. Usando o que é conhecido como modelo de visão ampla (LVM), um computador pode interpretar e identificar imagens e elementos visuais do ambiente do mundo real.

Quando treinados adequadamente usando um conjunto de dados de rede neural específico, os aplicativos de IA podem visualizar, identificar e classificar objetos no mundo real. Uma rede neural opera como o cérebro humano, mas depende de nós baseados em software para os neurônios.

Arquiteturas de Redes Neurais

Fonte: Laboratórios V7

Nos humanos, um neurônio é um sinal elétrico que envia informações de e para o cérebro. Os nós baseados em software em uma rede neural usam poder computacional integrado durante o treinamento com um conjunto de dados específico. Este é o núcleo das tecnologias de aprendizagem profunda, permitindo às aplicações de IA o poder e os recursos para ir além do que pensávamos ser fisicamente possível.

Como uma rede neural é como o cérebro humano e um LVM é projetado para imitar o olho humano, a combinação dessas tecnologias permite que aplicativos alimentados por IA nos ajudem com o aspecto visual do nosso mundo, em vez de apenas com texto.

Diferentes formas de modelos de visão

Agora que você sabe o que é um modelo de visão, existem algumas formas que você deve conhecer. As três principais formas de modelo de visão que você encontrará são redes neurais convolucionais (CNNs), aprendizado de máquina e baseadas em recursos. Cada um tem uma finalidade específica e aplicações que o utilizam. As seções abaixo discutem o que eles fazem e por que são essenciais para o funcionamento de muitos aplicativos de IA baseados em visão.

Redes neurais convolucionais

CNNs são modelos de aprendizagem profunda e são muito bons no processamento e identificação de imagens ou objetos no espaço visual. Eles também são autônomos, permitindo-lhes aprender com conjuntos de dados sem intervenção humana. CNNs são feitas de quatro camadas: convolucional, pooling, oculta e saída. Cada camada serve a um propósito específico, contando com vários algoritmos. Com essas camadas separadas trabalhando juntas, uma CNN pode compreender e identificar dados complexos de forma eficiente e organizada.

Convolucional é a primeira etapa no treinamento de um aplicativo de IA que depende de um modelo de visão computacional. Nesta fase, uma imagem é digitalizada na rede neural para que o computador possa compreender com precisão o que vê, até cada pixel. Isso permite detectar e identificar formas, padrões e texturas. A partir daí, ele é passado para a camada de pooling, pegando o grande conjunto de dados e condensando-o em um tamanho razoável. Ele remove dados irrelevantes ou desnecessários, mantendo as informações mais relevantes aprendidas na etapa convolucional.

Um gráfico de exemplo do que um modelo de visão da CNN vê como dados de entrada e saída

Fonte: IBM

Em seguida, ele vai para a camada oculta, que empilha e coleta os dados das duas camadas anteriores. É aqui que os recursos básicos dos resultados finais da imagem começam a se formar, com mais detalhes adicionados à medida que recebe dados complexos adicionais de cada passagem.

A última etapa é a camada de saída, que pega tudo das camadas anteriores e reúne tudo. Por exemplo, em um modelo de visão computacional para classificação de imagens, o resultado final pode colocar os dados em neurônios específicos com base nas categorias recebidas do conjunto de dados original.

Aprendizado de máquina

Da mesma forma que as CNNs, o aprendizado de máquina é outro método popular de rede neural para treinar um aplicativo de IA em relação a modelos de visão computacional. O aprendizado de máquina compartilha algumas ideias com as CNNs, mas elas diferem na finalidade para a qual foram projetadas.

O aprendizado de máquina treina uma rede neural com conjuntos de dados ou algoritmos predefinidos, permitindo identificar padrões desconhecidos. Isso permite prever resultados futuros ou informações sobre os dados obtidos executando métodos intensivos de repetição. O aprendizado de máquina funciona bem com recursos de detecção de imagens e outras finalidades relacionadas a imagens, dependendo do aplicativo para o qual é usado.

Um diagrama de uma rede neural com uma 'Camada de Entrada' à esquerda, várias 'Camadas Ocultas' no meio e uma 'Camada de Saída' à direita, mostrando nós interconectados e o fluxo de dados da entrada para a saída.

Fonte: “Métodos de aprendizado de máquina para monitoramento de condições de turbinas eólicas: uma revisão” por Stetco et al.

Ele pode ser usado para classificação de imagens, mas foi projetado para ser uma solução universal para quase todos os setores ou aplicações. O aprendizado de máquina permite uma variedade de conjuntos de dados ou algoritmos. CNNs são projetadas para processamento baseado em imagens. Usar as quatro camadas de uma CNN significa que os resultados são detalhados e ajustados aos dados exigidos da imagem original. Em relação aos modelos de visão computacional, as CNNs são uma escolha popular em relação ao aprendizado de máquina para conjuntos de dados complexos baseados em imagens, uma vez que são projetadas para esse propósito.

Baseado em recursos

Em comparação com seu popular modelo de visão da CNN, os modelos baseados em recursos adotam uma abordagem diferente de como funcionam. Em vez de digitalizar e identificar cada pixel de uma imagem, os modelos baseados em recursos procuram detalhes, aspectos ou recursos exclusivos maiores e mais específicos. Isso inclui detecção de bordas de um objeto, linhas e formas ou texturas em uma imagem. Semelhante às CNNs, os modelos baseados em recursos requerem várias etapas para processar os dados da imagem.

A primeira etapa em um modelo baseado em recursos é o estágio de detecção de recursos, que usa a imagem original para encontrar pontos de interesse. Ele se baseia em algoritmos de visão para detectar, destacar e caracterizar as características encontradas naquela imagem. Por exemplo, o algoritmo de transformação de recurso invariável em escala (SIFT) localiza detalhes independentemente do tamanho ou rotação, ao mesmo tempo em que faz a correspondência precisa com imagens diferentes. Ao mesmo tempo, o algoritmo de recursos robustos acelerados (SURF) é outra versão popular do SIFT. Possui recursos semelhantes, mas é mais rápido no processamento de dados com um pequeno custo de precisão.

Um exemplo de imagem de uma borboleta sendo processada pelo algoritmo de visão SURF detectando as bolhas while em suas asas

Fonte: OpenCV

SIFT é mais lento, mas mais adequado para tarefas que exigem mais detalhes de imagem. SURF é excelente em equilibrar velocidade e precisão. Ambas são escolhas populares. Quando os dados da imagem são processados, ele pega essas informações e cria descritores de pontos-chave usando outro algoritmo separado. Isso destaca e marca os recursos exclusivos descobertos nas etapas anteriores.

A etapa final envolve combinar e emparelhar os resultados com outras imagens com base nos algoritmos usados ​​anteriormente. Por exemplo, o algoritmo de transformada de Hough compara com precisão as formas com outras imagens, mesmo que os dados originais tenham ruído.

Os modelos de visão baseados em recursos são rápidos, mais leves em recursos de poder computacional e funcionam bem para tarefas menos exigentes, uma vez que não olham para cada pixel de uma imagem. Um modelo CNN é melhor para tarefas que exigem detalhes precisos, têm uma imensa escala de tamanho de conjunto de dados ou exigem cálculos complexos. Os modelos CNN contam com aprendizado profundo, que está um passo acima do que é fisicamente possível com os modelos baseados em recursos. Por causa disso, muitos na indústria de modelos de visão estão recorrendo aos modelos CNN para potencializar suas aplicações, especialmente aquelas projetadas para uso do consumidor geral.

Aplicações de modelos de visão do mundo real

As seções abaixo fornecem exemplos populares de aplicações, produtos ou serviços que utilizam modelos de visão no mercado do mundo real. Você pode estar usando recursos do modelo de visão diariamente sem perceber.

Muitos desses exemplos usam tecnologias de aprendizagem profunda com modelos de visão baseados em CNN para tarefas complexas de imagem. A maioria deles possui alguns elementos de aprendizado de máquina e modelos baseados em recursos para tarefas ou recursos menos exigentes. Os modelos de visão nem sempre se correlacionam com o uso ou recursos de IA, mas são frequentemente usados ​​em aplicativos baseados em IA.

Google Fotos

Um dos exemplos mais conhecidos do Google de modelos de visão que os consumidores usam é o Google Fotos. O aplicativo depende quase exclusivamente de modelos de visão, desde o reconhecimento de objetos e cenas até a marcação e correspondência de rostos com outras fotos em sua biblioteca. Ele também usa modelos de visão para extrair texto de qualquer imagem, sugere aprimoramentos de fotos em condições de pouca iluminação e cria colagens automaticamente usando imagens ou rostos semelhantes. Devido à sua complexidade, o Google Fotos utiliza tecnologias de aprendizagem profunda e muitas vezes depende de modelos de visão baseados na CNN.

Logotipo do Google Fotos sobreposto na imagem principal das fotos polaroid

Fonte: Unsplash/Wikimedia Commons

Lente do Google

Assim como o Google Fotos, o Google Lens depende de modelos de visão baseados na CNN para dar vida aos seus recursos exclusivos. O Google Lens usa modelos de visão para oferecer uma experiência de mecanismo de pesquisa baseada em imagens e um assistente digital em um único produto. Aponte sua câmera para algo, como uma placa em um idioma diferente, e coloque o texto traduzido sobre ela. O Google Lens identifica pontos de referência, tipos de plantas e pássaros que você pode encontrar ao ar livre. Você também pode digitalizar e copiar texto de um documento ou encontrar produtos similares, como sapatos ou móveis.

A página da Pesquisa Google mostrada no modo escuro.

Fonte: Google

Google Earth

Outro produto popular do Google é o Google Earth, que requer operações complexas e modelos de visão baseados em CNN. Como o aprendizado profundo está envolvido, esses modelos CNN são treinados usando enormes dados de imagens aéreas e de satélite. Usadas para classificação de imagens e estimativas de profundidade, essas são apenas algumas coisas que permitem ao Google Earth simular um modelo virtual da Terra com precisão e detalhes.

Unir imagens perfeitamente em grande escala é uma tarefa desafiadora. Os modelos de visão baseados em CNN se destacam nesse ambiente, pois são projetados para lidar com recursos exigentes e complexos.

Opções de estilo de mapa mostradas ao lado da visualização de satélite da Terra.

Fonte: aplicativo da web Google Earth Pro

Carros autônomos

Carros autônomos ou sem motorista precisam de um poder computacional significativo a bordo e de vários modelos de visão para serem verdadeiramente autônomos. Eles também exigem múltiplas câmeras e sensores para ver e compreender o mundo ao seu redor enquanto navegam na estrada. Este exemplo requer sincronicidade completa entre os três tipos de modelos de visão: CNNs, aprendizado de máquina e baseado em recursos.

CNNs são usadas para tarefas complexas, como detecção de objetos e pistas, enquanto o aprendizado de máquina lida com conjuntos de dados massivos. Eles são treinados e atualizados com frequência. Os modelos baseados em características podem usar o algoritmo SIFT para ajudar o sistema de câmeras a combinar as características da estrada sob várias condições de iluminação.

A imagem mostra um modelo holográfico de estrutura de arame ciano de um carro em um fundo de grade escuro, com um símbolo de ‘AI’ brilhante à esquerda e texto parcialmente visível sugerindo tecnologias de ‘condução autônoma’ à direita.

Fonte: SenseTime

ID facial

Desde o iPhone X, a Apple introduziu a tecnologia Face ID para nos ajudar a proteger nossos dispositivos iOS. Requer vários sensores e tecnologia trabalhando juntos para desbloquear seu dispositivo. Ainda usado hoje nos iPhones mais recentes, o Face ID melhora a cada nova versão. Parece usar modelos de visão baseados na CNN para extrair características faciais exclusivas da câmera infravermelha. A varredura facial no dispositivo é comparada com um mapa de profundidade antes de desbloquear ou negar a solicitação. O aprendizado de máquina também é usado para aprender continuamente suas características faciais e condições de iluminação a cada desbloqueio.

Ilha dinâmica não expandida no iPhone 15 Pro Max

Modelos de visão ajudam a fazer a mágica acontecer

Um modelo de visão computacional provavelmente está por trás de muitos de seus aplicativos favoritos que oferecem imagens exclusivas ou recursos baseados em visão. Dependendo do recurso ou tarefa, ele usa pelo menos um dos três tipos de modelo de visão: baseado em CNN, aprendizado de máquina ou baseado em recursos. Os modelos de visão CNN são comumente usados ​​porque dependem de tecnologias de aprendizagem profunda, permitindo maior escalabilidade. O aprendizado de máquina e os modelos de visão baseados em recursos são usados ​​para fins menos exigentes. Em muitos casos, todos os três tipos de modelos de visão funcionam juntos de alguma forma para criar uma experiência unificada.

Se você está procurando os melhores aplicativos e serviços de IA para o seu dispositivo Android, nós temos o que você precisa. Mostramos alguns exemplos excelentes para ajudá-lo a iniciar sua jornada de IA, incluindo alguns dos principais chatbots com tecnologia de IA.