Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Guias

Aprimorando aplicações de visão computacional com visualizações

Saiba como transformar dados de aplicações de visão computacional em gráficos fáceis de entender usando o pacote Python da Ultralytics para obter melhores insights.

Nuvola LadiNuvola Ladi11 min de leitura
Transformando dados de visão computacional em gráficos analíticos

A cada minuto, são criados enormes volumes de dados, de terminais de aeroportos e estações de trem a shopping centers. Com a adoção cada vez maior da IA, muitos desses dados são analisados e processados. Mas, às vezes, os resultados desses modelos de IA dificultam a identificação de padrões ou a compreensão de tendências à primeira vista. É aí que a visualização de dados ajuda: ela transforma resultados complexos em informações claras e fáceis de entender.

Isso é especialmente verdadeiro no caso das aplicações de visão computacional. A visão computacional é um ramo da inteligência artificial (AI) que ajuda as máquinas a interpretar e compreender informações visuais do mundo ao redor, como imagens e vídeos. Enquanto os modelos de IA visual, como o Ultralytics YOLO11, ajudam a analisar esses dados visuais para obter informações, a visualização de dados ajuda a apresentar essas informações em um formato fácil de entender.

Em poucas palavras, a visualização de dados reduz a distância entre os dados brutos e a compreensão real por meio de gráficos analíticos relevantes. Isso importa porque não basta as máquinas executarem tarefas: precisamos que elas contem uma história.

Essa necessidade de contar histórias é justamente o motivo pelo qual a visualização de dados está em alta, com previsão de que o mercado alcance US$ 18,36 bilhões até 2030. Anteriormente, exploramos como a visão computacional pode gerar insights de negócios valiosos. Hoje, vamos avançar mais um passo e mostrar como gerar gráficos analíticos claros e informativos para aplicações de visão computacional usando o pacote Ultralytics.

Visualização de dados com base nos resultados do Ultralytics YOLO11

Fig. 1. Exemplo de visualização de dados com base nos resultados do YOLO11.

Uma visão geral da visualização de dados em aplicações de visão computacional#

A visualização de dados em aplicações de visão computacional envolve transformar os resultados de tarefas de visão computacional, como detecção e rastreamento de objetos, em gráficos ou painéis fáceis de entender. Esses recursos visuais ajudam a identificar padrões e tendências, especialmente ao trabalhar com grandes volumes de imagens de vídeo.

Por exemplo, em vez de revisar manualmente horas de vídeos de vigilância, um simples gráfico de linhas que mostre o número de carros ou pessoas detectados ao longo do tempo pode destacar rapidamente os horários de pico ou os períodos excepcionalmente tranquilos.

Veja alguns dos principais motivos pelos quais a visualização de dados é útil:

  • Simplifica dados complexos: Milhares de detecções de objetos podem ser difíceis de assimilar, mas visualizações como gráficos de barras ou de setores facilitam a compreensão do panorama geral, mostrando, por exemplo, quais objetos aparecem com mais frequência.
  • Revela tendências: Gráficos de linhas e de barras ajudam a identificar padrões ao longo do tempo, como quando e onde o fluxo de pedestres tende a aumentar.
  • Economiza tempo: Em vez de revisar cada quadro do vídeo, os gráficos podem destacar rapidamente detalhes importantes, como aumentos repentinos na atividade de veículos ou aparições incomuns de objetos em áreas restritas.
  • Melhora a comunicação: Os recursos visuais facilitam o compartilhamento de insights com públicos não técnicos, ajudando todos a entender os resultados com mais clareza.

Diferentes tipos de visualização de dados#

Diferentes tipos de gráficos analíticos podem transformar os resultados da visão computacional em recursos visuais claros e fáceis de entender. Imagine que você esteja trabalhando em uma aplicação de visão computacional que detecta pessoas e veículos em imagens de vigilância. Nesse caso, um gráfico de linhas é ótimo para mostrar como o número de detecções muda ao longo do tempo, por exemplo, acompanhando os picos no fluxo de pedestres durante o dia.

Da mesma forma, os gráficos de barras são úteis quando você quer comparar o número de diferentes tipos de objetos detectados, como verificar se aparecem mais carros, bicicletas ou pedestres no vídeo. Já os gráficos de setores mostram qual porcentagem do total de detecções corresponde a cada tipo de objeto. Cada gráfico tem sua própria utilidade e ajuda a interpretar e compartilhar dados complexos de visão computacional com mais facilidade.

Exemplos de gráficos analíticos

Fig. 2. Exemplos de gráficos analíticos.

Geração de gráficos analíticos para obter insights de visão computacional#

Agora que exploramos o que é visualização de dados e por que os diferentes tipos de gráficos analíticos são importantes, vamos ver mais de perto como usar a solução Analytics da Ultralytics para visualizar os resultados das previsões do seu modelo de visão computacional. Antes de apresentar o processo passo a passo, vamos conhecer as ferramentas e opções de configuração para treinar e usar o pacote Ultralytics e modelos como o YOLO11.

O pacote Ultralytics para Python facilita o treinamento de modelos, a detecção de objetos, a execução de previsões e a visualização de resultados. Para começar, você precisará de um ambiente de programação. Veja três opções simples:

  • Interface de linha de comando (CLI): é uma ferramenta básica, somente de texto, na qual você pode digitar comandos para executar seu código. Ela não tem interface visual; você interage com ela digitando instruções em um terminal ou prompt de comando.
  • Jupyter Notebooks: é um ambiente de programação interativo em que você pode escrever, executar e testar pequenos trechos de código (chamados de "células"), um de cada vez. Os resultados aparecem logo abaixo de cada célula, facilitando a compreensão do que acontece em cada etapa. É especialmente útil para aprendizado e experimentação.
  • Google Colab: essa opção é uma versão gratuita do Jupyter Notebooks baseada na nuvem, que funciona no navegador. Não exige configuração no seu computador e oferece acesso gratuito a GPUs para um processamento mais rápido.

Essas ferramentas são ótimas para começar rapidamente, mas você também pode integrar a Ultralytics a Ambientes de Desenvolvimento Integrado (IDEs), como o Visual Studio Code (VS Code), ou a pipelines de produção. Para ver mais opções, consulte a documentação oficial da Ultralytics.

Etapa 1: Configurando o ambiente#

Depois de escolher o ambiente de sua preferência, o próximo passo é configurá-lo para executar previsões e visualizar os resultados. Você pode usar qualquer um dos ambientes mencionados acima, de acordo com aquele com que se sente mais à vontade.

Se estiver trabalhando no Google Colab, lembre-se de que ele usa uma CPU por padrão, o que pode reduzir o desempenho. Para acelerar o processamento, troque para uma GPU acessando o menu "Runtime", selecionando "Change runtime type" e definindo GPU como acelerador de hardware (de preferência, uma T4).

Para preparar o ambiente, você precisará instalar o pacote Ultralytics para Python usando o comando abaixo. Em ferramentas baseadas em notebooks, como Colab ou Jupyter, não se esqueça de adicionar um ponto de exclamação (!) antes do comando.

pip install ultralytics

Etapa 2: Baixar um arquivo de vídeo#

Em seguida, precisaremos de um vídeo para trabalhar. Você pode baixar um facilmente em um site de vídeos gratuitos, como o Pexels. Escolha um vídeo que contenha objetos que o Ultralytics YOLO11 possa detectar. Como o modelo foi pré-treinado no conjunto de dados COCO, ele consegue reconhecer objetos comuns, como pessoas, carros e bicicletas.

Neste tutorial, usaremos um vídeo de manuseio de bagagens em um terminal de aeroporto movimentado. Você pode usar o mesmo vídeo ou escolher outro que se encaixe no seu projeto.

Um quadro do vídeo de entrada mostrando o manuseio de bagagens em um terminal de aeroporto

Fig. 3. Um quadro do vídeo de entrada mostrando o manuseio de bagagens em um terminal de aeroporto.

Etapa 3: Importar pacotes#

Em seguida, podemos importar as bibliotecas necessárias e carregar o vídeo de entrada.

Vamos começar importando o OpenCV (cv2), uma biblioteca amplamente usada para trabalhar com imagens e vídeos em visão computacional. Também importaremos a biblioteca Ultralytics, que nos ajuda a executar a detecção de objetos e gerar análises a partir do vídeo.

Depois, tentaremos abrir o arquivo de vídeo especificando o caminho. Substitua "path/to/video.mp4" pelo local real do arquivo de vídeo que você baixou.

Além disso, o trecho de código abaixo inclui uma verificação simples para garantir que o vídeo seja carregado corretamente. Se o caminho estiver errado ou o arquivo estiver corrompido, o programa será interrompido e exibirá uma mensagem de erro: "Error reading video file."

import cv2
from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

Etapa 4: Preparar o gravador de vídeo#

Em seguida, vamos configurar um gravador de vídeo para salvar a saída. Quando executarmos as análises, esta parte do código criará um novo arquivo de vídeo que registrará os gráficos atualizados gerados a partir de cada quadro do vídeo original.

No trecho de código abaixo, primeiro extraímos as principais propriedades do vídeo de entrada: largura, altura e quadros por segundo (fps). Esses valores são obtidos diretamente do vídeo e convertidos em números inteiros para garantir que estejam no formato correto para gravar a saída.

Em seguida, usamos a função cv2.VideoWriter para criar um novo arquivo de vídeo, chamado "analytics_output.avi" (você pode renomeá-lo conforme necessário). O vídeo é salvo no formato MJPG, um método comum de compressão de vídeo. A resolução da saída é definida como 1280×720 pixels, independentemente do tamanho do vídeo original.

w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
out = cv2.VideoWriter(
    "analytics_output.avi",
    cv2.VideoWriter_fourcc(*"MJPG"),
    fps,
    (1280, 720),
)

Etapa 5: Configurar a solução Analytics da Ultralytics#

Agora, vamos configurar a solução Analytics da Ultralytics para gerar gráficos a partir do vídeo. Você pode escolher como os dados serão exibidos — em um gráfico de linhas, de pizza, de área ou de barras — e qual modelo YOLO usar. Neste exemplo, usaremos o modelo leve YOLO11n ("yolo11n.pt") e exibiremos os resultados em um gráfico de área.

analytics = solutions.Analytics(
    show=True,
    analytics_type="area",
    model="yolo11n.pt",
)

Etapa 6: Processar o vídeo de entrada#

A parte final do código executa um loop que processa o vídeo quadro a quadro. Cada quadro é enviado à ferramenta de análise, que atualiza o gráfico em tempo real. Em seguida, o gráfico atualizado é gravado no vídeo de saída. Se não for possível ler um quadro, o loop é interrompido. Depois que todos os quadros forem processados, o vídeo será salvo e todas as janelas abertas serão fechadas.

frame_count = 0
while cap.isOpened():
    success, im0 = cap.read()
    if success:
        frame_count += 1
        results = analytics(im0, frame_count)
        out.write(results.plot_im)
    else:
        break

cap.release()
out.release()
cv2.destroyAllWindows()

Etapa 7: Juntar tudo#

Por fim, vamos juntar tudo. Com apenas algumas linhas extras de código, podemos gerar dois vídeos de saída: um que mostra os resultados de detecção de objetos do Ultralytics YOLO11 com caixas delimitadoras e rótulos, e outro que mostra os gráficos de análise em tempo real.

Para isso, vamos configurar duas instâncias de VideoWriter: uma para salvar o vídeo das previsões e outra para as análises. Esta versão do código inclui o rastreamento de objetos e a geração de gráficos, para que você possa ver os resultados da detecção junto com os insights visuais.

Veja o código completo e exemplos das saídas de previsão e análise.

import cv2
from ultralytics import YOLO, solutions

# Carregar o modelo e o vídeo
model = YOLO('yolo11n.pt')
cap = cv2.VideoCapture('path/to/video.mp4')
assert cap.isOpened(), "Error opening video"

# Obter propriedades
w, h = int(cap.get(3)), int(cap.get(4))
fps = cap.get(5)
analytics_res = (1280, 720)

# Gravadores para os vídeos de previsão e análise
out_pred = cv2.VideoWriter('output_predictions.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, (w, h))
out_ana = cv2.VideoWriter('output_analytics.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, analytics_res)

# Configuração da análise
analytics = solutions.Analytics(show=True, analytics_type="area", model='yolo11n.pt')

# Processar quadros
frame_count = 0
while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    frame_count += 1
    pred_frame = model.track(frame, persist=True)[0].plot()
    out_pred.write(pred_frame)
    resized = cv2.resize(pred_frame, analytics_res)
    out_ana.write(analytics(resized, frame_count).plot_im)

cap.release(), out_pred.release(), out_ana.release(), cv2.destroyAllWindows()

Quando o código acima for executado com sucesso, ele gerará dois vídeos de saída. O arquivo “output_predictions.avi” mostrará os resultados da detecção de objetos com caixas delimitadoras e rótulos, enquanto “output_analytics.avi” exibirá os gráficos de análise em tempo real com base nas detecções.

Um quadro do vídeo de saída da detecção de objetos

Fig. 4. Um quadro do arquivo “output_predictions.avi”.

Veja um quadro da saída de análise com base nas previsões. Usando o gráfico de área, podemos obter insights, como as variações na contagem de malas ao longo do tempo. Um pico por volta do quadro 268, por exemplo, indica movimentação ou atividade de malas nessa parte do vídeo.

Previsões do Ultralytics YOLO11 visualizadas em um gráfico de área

Fig. 5. Previsões do Ultralytics YOLO11 visualizadas em um gráfico de área.

Uso de gráficos em aplicações de visão computacional no mundo real#

Veja algumas aplicações de visão computacional no mundo real em que a visualização de dados tem um impacto significativo:

  • Saúde: Os sistemas de visão computacional podem monitorar em tempo real a atividade dos pacientes, a movimentação da equipe e o uso de equipamentos. Isso gera grandes volumes de dados visuais que, quando visualizados, podem revelar padrões, como horários de pico na ocupação de pacientes ou atrasos no atendimento.
  • Varejo e comércio eletrônico: A IA visual pode ser usada para acompanhar a movimentação dos clientes, o tempo que passam diante das prateleiras e as interações com os produtos. Análises visuais, como gráficos de barras ou de setores, podem destacar quais áreas da loja ou itens recebem mais atenção, ajudando os varejistas a otimizar a disposição dos produtos e aumentar as conversões.
  • Manufatura: Câmeras equipadas com modelos de visão computacional podem monitorar linhas de montagem em busca de defeitos, violações de segurança ou problemas nos equipamentos. A visualização de dados pode mostrar tendências nos tipos de defeitos mais comuns ou destacar os períodos com as maiores taxas de erro, permitindo decisões mais rápidas e manutenção preventiva.

Principais conclusões#

Com o pacote Ultralytics, você pode transformar facilmente imagens de vídeo em gráficos claros e informativos que revelam o que está acontecendo, como acompanhar quantas pessoas ou objetos aparecem ao longo do tempo. Em vez de revisar manualmente horas de vídeo, você pode gerar resumos visuais que destacam padrões e tendências importantes, facilitando a tomada de decisões rápidas. Seja em hospitais, lojas de varejo ou instalações industriais, esses gráficos transformam resultados complexos de IA em insights que qualquer pessoa pode entender e usar.

Quer saber mais sobre IA? Explore nosso repositório do GitHub, conecte-se à nossa comunidade e confira nossas opções de licenciamento para dar início ao seu projeto de visão computacional. Saiba mais sobre inovações como IA na indústria e visão computacional na logística nas páginas das nossas soluções.

Escrito por

Nuvola Ladi
Nuvola Ladi

Gerente de conteúdo digital · Ultralytics

Nuvola Ladi é gerente de conteúdo digital na Ultralytics, onde cria conteúdo sobre IA visual e Ultralytics YOLO e representa a empresa em eventos do setor, como a PyTorch Conference 2025. Morando na Espanha, ela tem mestrado em Mídia Visual e Digital pela IE University. Antes de ingressar na Ultralytics, ocupou cargos em organizações como XVA Gallery & Hotel e Rolex.

Comentários

Faça uma pergunta, compartilhe seus resultados ou ajude alguém.

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