Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Voltar ao glossário da Ultralytics

Visual Question Answering (VQA)

A resposta a perguntas visuais (VQA) é a tarefa de responder a perguntas em linguagem natural sobre uma imagem. Como funcionam os modelos VQA, principais benchmarks e avaliação.

A resposta a perguntas visuais (VQA) consiste em responder a uma pergunta em linguagem natural sobre uma imagem, como «De que cor é o autocarro?», «Quantas pessoas estão à espera?» ou «O fogão está ligado?». O sistema recebe em conjunto a imagem e a pergunta e devolve uma resposta curta, pelo que tem de interpretar a pergunta, encontrar as partes relevantes da imagem e combiná-las, o que faz da VQA um teste padrão de IA multimodal. Stanislaw Antol e os seus colegas da Virginia Tech e da Microsoft Research apresentaram a tarefa e o seu primeiro grande referencial, o conjunto de dados VQA, na ICCV 2015: cerca de 250 000 imagens, maioritariamente do COCO, com 760 000 perguntas abertas e 10 respostas humanas para cada uma, aproximadamente 10 milhões de respostas no total.

Como funcionam os modelos VQA#

Um modelo VQA codifica a imagem com uma rede neural convolucional (CNN) ou um transformador de visão (ViT), codifica a pergunta com um modelo de linguagem e funde os dois. Os primeiros modelos combinavam características globais da imagem com o vetor da pergunta de uma LSTM e tratavam a resposta como uma classificação entre as milhares de respostas mais comuns. Depois, um mecanismo de atenção permitiu que a pergunta escolhesse para onde olhar: o modelo bottom-up e top-down de Peter Anderson e colegas, vencedor do VQA Challenge de 2017, direcionava a atenção a regiões propostas por um modelo de detecção de objetos. Assim, "Qual é a cor do ônibus?" podia se concentrar na caixa do ônibus. Os atuais modelos de visão e linguagem (VLMs) geram respostas abertas com um modelo de linguagem, após o ajuste de instruções visuais com dados de imagem, pergunta e resposta.

Referenciais e o problema das priorizações linguísticas#

Os primeiros modelos VQA obtinham boas pontuações, em parte, ignorando a imagem. Muitas perguntas podem ser respondidas por adivinhação com base apenas na formulação: «Há algum/alguma...» costuma ter como resposta «sim», e «Que desporto é...» tem frequentemente como resposta «ténis». O VQA v2, publicado por Yash Goyal e os seus colegas na CVPR 2017, contrariou estas priorizações linguísticas associando cada pergunta a duas imagens semelhantes com respostas diferentes, obrigando o modelo a observar a imagem para obter uma boa pontuação. Os conjuntos de dados posteriores focam-se cada um numa competência:

  • VizWiz: Mais de 31 000 perguntas feitas por pessoas cegas sobre fotografias tiradas com os seus telemóveis, muitas delas desfocadas ou mal enquadradas.
  • TextVQA: Perguntas que exigem a leitura de texto na cena, como o número numa camisola ou o nome na fachada de uma loja.
  • GQA: Perguntas de composição geradas a partir de grafos de cenas, como «A chávena à esquerda do prato é de vidro?»
  • OK-VQA: Perguntas que exigem conhecimentos externos, como saber de que país é um prato.
  • VQA-RAD: 3 515 perguntas sobre 315 imagens radiológicas, redigidas por profissionais de saúde e criadas na Biblioteca Nacional de Medicina dos EUA.

Como as pessoas formulam as respostas corretas de maneiras diferentes, o referencial VQA pontua uma resposta com base no número de anotadores humanos, entre os 10, que a deram. Três ou mais correspondências contam como totalmente corretas, e a pontuação é calculada como a média sobre todos os subconjuntos de nove anotadores:

# Ten crowd answers to "What color is the bus?", as collected for every VQA question
human_answers = ["red"] * 7 + ["red and white"] * 2 + ["orange"]


def vqa_accuracy(prediction, answers):
    """Average min(matches / 3, 1) over the ten leave-one-out subsets of nine answers."""
    scores = []
    for i in range(len(answers)):
        others = answers[:i] + answers[i + 1 :]
        scores.append(min(others.count(prediction) / 3, 1))
    return sum(scores) / len(scores)


for prediction in ["red", "red and white", "orange", "blue"]:
    print(f"{prediction}: {vqa_accuracy(prediction, human_answers):.2f}")

Ele imprime 1,00 para "vermelho", 0,60 para "vermelho e branco", 0,30 para "laranja" e 0,00 para "azul": uma resposta dada por apenas um anotador ainda recebe crédito parcial, e uma resposta que ninguém deu não recebe nenhum. Os resultados são informados separadamente para os tipos de resposta sim/não, número e outros; as perguntas numéricas têm consistentemente a pontuação mais baixa, porque contar exige encontrar cada instância exatamente uma vez. Os detectores respondem diretamente a perguntas de contagem: o YOLO26 retorna uma caixa por objeto, então o número de caixas de "person" no resultado de predição responde a "Quantas pessoas há na imagem?" para qualquer uma das 80 classes do COCO. Para classes fora dessa lista, modelos de linguagem visual também podem retornar caixas, e o VLM Leaderboard mede a precisão com que detectam objetos em conjuntos de dados do mundo real.

A legendagem de imagens descreve uma imagem inteira sem que lhe seja feita uma pergunta, enquanto a VQA responde a uma pergunta específica. A localização visual devolve a localização do objeto referido por uma expressão, muitas vezes sob a forma de uma caixa delimitadora, enquanto a VQA devolve uma resposta sobre esse objeto. O reconhecimento ótico de caracteres (OCR) fornece o texto a que se referem as perguntas do tipo TextVQA, e o raciocínio visual é a inferência em várias etapas exigida por perguntas de composição como as do GQA. A resposta a perguntas apenas textual baseia-se numa passagem, em vez de píxeis.

Aplicações#

A tecnologia assistiva é a aplicação mais evidente. O Be My Eyes lançou o Be My AI, baseado no GPT-4 da OpenAI, em 2023 para que pessoas cegas ou com baixa visão possam fotografar um rótulo, uma tela ou uma rua e fazer perguntas sobre isso. Equipes de varejo e manufatura perguntam aos VLMs sobre fotos de prateleiras ou imagens de inspeção, em vez de treinar um classificador para cada pergunta. Na saúde, a pesquisa em VQA médica aborda perguntas como "Há uma fratura?" sobre radiografias e tomografias, uma forma de análise de imagens médicas que o VQA-RAD avalia com perguntas escritas por médicos enquanto observavam as imagens.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina