Verificação verde
Link copiado para a área de transferência

Uma história dos modelos de visão

Explora a história, as realizações, os desafios e as direcções futuras dos modelos de visão.

O que é a visão computacional

Imagina entrar numa loja onde uma câmara identifica o teu rosto, analisa o teu humor e sugere produtos adaptados às tuas preferências - tudo em tempo real. Não se trata de ficção científica, mas de uma realidade possibilitada pelos modernos modelos de visão. De acordo com um relatório da Fortune Business Insight, a dimensão do mercado global de visão por computador foi avaliada em 20,31 mil milhões de dólares em 2023 e prevê-se que cresça de 25,41 mil milhões de dólares em 2024 para 175,72 mil milhões de dólares até 2032, reflectindo os rápidos avanços e a crescente adoção desta tecnologia em várias indústrias.

O domínio da visão por computador permite aos computadores detetar, identificar e analisar objectos nas imagens. À semelhança de outros domínios relacionados com a IA, a visão computacional registou uma rápida evolução nas últimas décadas, alcançando avanços notáveis. 

A história da visão por computador é extensa. Nos seus primórdios, os modelos de visão por computador eram capazes de detetar formas e arestas simples, limitando-se frequentemente a tarefas básicas como o reconhecimento de padrões geométricos ou a diferenciação entre áreas claras e escuras. No entanto, os modelos actuais podem executar tarefas complexas, como a deteção de objectos em tempo real, o reconhecimento facial e até a interpretação de emoções a partir de expressões faciais, com uma precisão e eficiência excepcionais. Esta progressão dramática realça os incríveis avanços registados no poder computacional, na sofisticação algorítmica e na disponibilidade de grandes quantidades de dados para treino.

Neste artigo, vamos explorar os principais marcos na evolução da visão computacional. Percorreremos os seus primórdios, aprofundaremos o impacto transformador das Redes Neuronais Convolucionais (CNNs) e examinaremos os avanços significativos que se seguiram.

Início da visão computacional

Tal como noutros domínios da IA, o desenvolvimento inicial da visão por computador começou com investigação fundamental e trabalho teórico. Um marco significativo foi o trabalho pioneiro de Lawrence G. Roberts no reconhecimento de objectos 3D, documentado na sua tese"Machine Perception of Three-Dimensional Solids" no início da década de 1960. As suas contribuições lançaram as bases para futuros avanços neste domínio.

Os primeiros algoritmos - Deteção de bordas

A investigação inicial sobre visão computacional centrava-se em técnicas de processamento de imagem, como a deteção de arestas e a extração de características. Algoritmos como o operador Sobel, desenvolvido no final da década de 1960, foram dos primeiros a detetar arestas através do cálculo do gradiente da intensidade da imagem.

Figura 1. Uma imagem que demonstra a deteção de arestas, em que o lado esquerdo mostra o objeto original e o lado direito mostra a versão com deteção de arestas.

Técnicas como os detectores de limites Sobel e Canny desempenharam um papel crucial na identificação de limites nas imagens, que são essenciais para reconhecer objectos e compreender cenas.

Aprendizagem automática e visão computacional

Reconhecimento de padrões

Na década de 1970, o reconhecimento de padrões surgiu como uma área chave da visão computacional. Os investigadores desenvolveram métodos de reconhecimento de formas, texturas e objectos em imagens, o que abriu caminho para tarefas de visão mais complexas.

Figura 2. Reconhecimento de padrões.

Um dos primeiros métodos de reconhecimento de padrões envolvia a correspondência de modelos, em que uma imagem é comparada com um conjunto de modelos para encontrar a melhor correspondência. Esta abordagem era limitada pela sua sensibilidade a variações de escala, rotação e ruído.

Fig. 3. Encontra um modelo no lado esquerdo da imagem direita.

Os primeiros sistemas de visão por computador eram condicionados pelo poder computacional limitado da altura. Os computadores das décadas de 1960 e 1970 eram volumosos, caros e tinham capacidades de processamento limitadas.

Mudar o jogo com a aprendizagem profunda

Aprendizagem profunda e redes neurais de convolução

A aprendizagem profunda e as redes neurais convolucionais (CNN) marcaram um momento crucial no domínio da visão computacional. Estes avanços transformaram drasticamente a forma como os computadores interpretam e analisam os dados visuais, permitindo uma vasta gama de aplicações que anteriormente eram consideradas impossíveis.

Como é que as CNNs funcionam?

Fig. 4. Arquitetura de uma rede neural convolucional (CNN).

  1. Camadas convolucionais: As CNNs utilizam camadas convolucionais, que são um tipo de modelo de aprendizagem profunda concebido para processar dados estruturados em forma de grelha, como imagens ou sequências, através da aprendizagem automática de padrões hierárquicos. Estes filtros detectam várias características, como arestas, texturas e cores, deslizando pela imagem e calculando produtos de pontos. Cada filtro ativa padrões específicos na imagem, permitindo que o modelo aprenda características hierárquicas.
  2. Funções de ativação: Após a convolução, as funções de ativação, como a ReLU (Unidade Linear Rectificada), que é uma função de ativação popular na aprendizagem profunda, produzem a entrada diretamente se for positiva e zero caso contrário, ajudando as redes neuronais a aprender relações não lineares nos dados de forma eficiente. Isto ajuda a rede a aprender padrões e representações complexas.
  3. Camadas de pooling: As camadas de pooling proporcionam uma operação de redução da amostragem que reduz a dimensionalidade do mapa de características, ajudando a extrair as características mais relevantes e reduzindo o custo computacional e o sobreajuste.
  4. Camadas totalmente conectadas: As camadas finais de uma CNN são camadas totalmente conectadas que interpretam os recursos extraídos pelas camadas convolucionais e de agrupamento para fazer previsões. Estas camadas são semelhantes às das redes neurais tradicionais.

‍Evoluçãodos modelos de visão CNN

‍Ajornada dos modelos de visão tem sido extensa, apresentando alguns dos mais notáveis:

  • LeNet (1989): A LeNet foi uma das primeiras arquitecturas de CNN, utilizada principalmente para o reconhecimento de dígitos em cheques manuscritos. O seu sucesso lançou as bases para CNNs mais complexas, provando o potencial da aprendizagem profunda no processamento de imagens.
  • AlexNet (2012): O AlexNet superou significativamente os modelos existentes na competição ImageNet, demonstrando o poder da aprendizagem profunda. Este modelo utilizou activações ReLU, dropout e aumento de dados, estabelecendo novos parâmetros de referência na classificação de imagens e despertando um interesse generalizado nas CNNs.
  • VGGNet (2014): Ao utilizar filtros convolucionais mais pequenos (3x3), a VGGNet obteve resultados impressionantes em tarefas de classificação de imagens, reforçando a importância da profundidade da rede para alcançar uma maior precisão.
  • ResNet (2015): A ResNet abordou o problema da degradação em redes profundas, introduzindo a aprendizagem residual. Esta inovação permitiu o treinamento de redes muito mais profundas, levando a um desempenho de ponta em várias tarefas de visão computacional.
  • YOLO (You Only Look Once): YOLO revolucionou a deteção de objectos ao enquadrá-la como um único problema de regressão, prevendo diretamente caixas delimitadoras e probabilidades de classe a partir de imagens completas numa única avaliação. Esta abordagem permitiu a deteção de objectos em tempo real com uma velocidade e precisão sem precedentes, tornando-a adequada para aplicações que requerem um processamento instantâneo, como a condução autónoma e a vigilância.

‍Aplicações de visão computacional

Cuidados de saúde

‍Asutilizações da visão computacional são numerosas. Por exemplo, modelos de visão como Ultralytics YOLOv8 são utilizados na imagiologia médica para detetar doenças como o cancro e a retinopatia diabética. Analisam os raios X, as ressonâncias magnéticas e as tomografias computorizadas com elevada precisão, identificando precocemente as anomalias. Esta capacidade de deteção precoce permite intervenções atempadas e melhores resultados para os doentes.

Fig. 5. Deteção de tumores cerebrais utilizando Ultralytics YOLOv8.

Preservação do ambiente

Os modelos de visão por computador ajudam a monitorizar e a proteger espécies ameaçadas de extinção, analisando imagens e vídeos de habitats de vida selvagem. Identifica e segue o comportamento dos animais, fornecendo dados sobre a sua população e movimentos. Esta tecnologia informa as estratégias de conservação e as decisões políticas para proteger espécies como os tigres e os elefantes.

Com a ajuda da IA de visão, outras ameaças ambientais, como os incêndios florestais e a desflorestação, podem ser monitorizadas, garantindo tempos de resposta rápidos por parte das autoridades locais.

Fig. 6. Uma imagem de satélite de um incêndio florestal.

Desafios e direcções futuras

Apesar de já terem alcançado resultados significativos, devido à sua extrema complexidade e à natureza exigente do seu desenvolvimento, os modelos de visão enfrentam inúmeros desafios que exigem investigação contínua e avanços futuros.

Interpretabilidade e explicabilidade

Os modelos de visão, especialmente os de aprendizagem profunda, são frequentemente vistos como "caixas negras" com transparência limitada. Isto deve-se ao facto de estes modelos serem incrivelmente complexos. A falta de interpretabilidade dificulta a confiança e a responsabilização, especialmente em aplicações críticas como os cuidados de saúde, por exemplo.

Requisitos informáticos

O treino e a implementação de modelos de IA de última geração exigem recursos computacionais significativos. Isto é particularmente verdade para os modelos de visão, que requerem frequentemente o processamento de grandes quantidades de dados de imagem e vídeo. As imagens e vídeos de alta definição, que se encontram entre os dados de treino mais intensivos, aumentam a carga computacional. Por exemplo, uma única imagem HD pode ocupar vários megabytes de armazenamento, tornando o processo de formação intensivo em recursos e demorado. Isto exige hardware potente e algoritmos de visão computacional optimizados para lidar com os dados extensos e os cálculos complexos envolvidos no desenvolvimento de modelos de visão eficazes. A investigação sobre arquitecturas mais eficientes, compressão de modelos e aceleradores de hardware como GPUs e TPUs são áreas-chave que farão avançar o futuro dos modelos de visão. Estas melhorias têm como objetivo reduzir as exigências computacionais e aumentar a eficiência do processamento. Além disso, a utilização de modelos avançados pré-treinados, como o YOLOv8 pode reduzir significativamente a necessidade de formação extensiva, simplificando o processo de desenvolvimento e aumentando a eficiência.

Uma paisagem em constante evolução

Atualmente, as aplicações dos modelos de visão estão muito difundidas, desde os cuidados de saúde, como a deteção de tumores, até às utilizações quotidianas, como a monitorização do tráfego. Esses modelos avançados trouxeram inovação para inúmeras indústrias, fornecendo maior precisão, eficiência e capacidades que antes eram inimagináveis. À medida que a tecnologia continua a avançar, o potencial dos modelos de visão para inovar e melhorar vários aspectos da vida e da indústria permanece ilimitado. Essa evolução contínua ressalta a importância da pesquisa e do desenvolvimento contínuos no campo da visão computacional.

Tens curiosidade em conhecer o futuro da IA de visão? Para mais informações sobre os últimos avanços, explora os documentosUltralytics e verifica os seus projectos em Ultralytics GitHub e YOLOv8 GitHub. Além disso, para obteres informações sobre as aplicações de IA em vários sectores, as páginas de soluções sobre Carros de Condução Aut ónoma e Fabrico oferecem informações particularmente úteis.

Logótipo do FacebookLogótipo do TwitterLogótipo do LinkedInSímbolo de ligação de cópia

Ler mais nesta categoria

Vamos construir juntos o futuro
da IA!

Começa a tua viagem com o futuro da aprendizagem automática