Link to this sectionAnálise usando Ultralytics YOLO26#
Link to this sectionIntrodução#
Este guia fornece uma visão geral abrangente de três tipos fundamentais de visualizações de dados: gráficos de linhas, gráficos de barras e gráficos de pizza. Cada seção inclui instruções passo a passo e trechos de código sobre como criar essas visualizações usando Python.
Watch: How to generate Analytical Graphs using Ultralytics | Line Graphs, Bar Plots, Area and Pie Charts
Link to this sectionExemplos Visuais#
| Gráfico de Linhas | Gráfico de Barras | Gráfico de Pizza |
|---|---|---|
![]() | ![]() | ![]() |
Link to this sectionPor que os gráficos são importantes#
- Gráficos de linhas são ideais para rastrear mudanças ao longo de períodos curtos e longos e para comparar mudanças de vários grupos durante o mesmo período.
- Gráficos de barras, por outro lado, são adequados para comparar quantidades entre diferentes categorias e mostrar relações entre uma categoria e seu valor numérico.
- Por último, gráficos de pizza são eficazes para ilustrar proporções entre categorias e mostrar partes de um todo.
yolo solutions analytics show=True
# Pass the source
yolo solutions analytics source="path/to/video.mp4"
# Generate the pie chart
yolo solutions analytics analytics_type="pie" show=True
# Generate the bar plots
yolo solutions analytics analytics_type="bar" show=True
# Generate the area plots
yolo solutions analytics analytics_type="area" show=TrueLink to this sectionArgumentos de Analytics#
Aqui está uma tabela descrevendo os argumentos de Analytics:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
model | str | None | Caminho para um ficheiro de modelo YOLO da Ultralytics. |
analytics_type | str | 'line' | Tipo de gráfico, i.e., line, bar, area ou pie. |
Você também pode aproveitar diferentes argumentos de track na solução Analytics.
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Especifica o algoritmo de rastreamento a ser usado. As opções integradas são: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Define o limiar de confiança para as deteções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos. |
iou | float | 0.7 | Define o limiar de Intersection over Union (IoU) para filtrar deteções sobrepostas. |
classes | list | None | Filtra resultados por índice de classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas. |
verbose | bool | True | Controla a exibição dos resultados de rastreio, fornecendo uma saída visual dos objetos rastreados. |
device | str | None | Especifica o dispositivo para inferência (p. ex., cpu, cuda:0 ou 0). Permite aos utilizadores selecionar entre CPU, uma GPU específica ou outros dispositivos de computação para a execução do modelo. |
Além disso, os seguintes argumentos de visualização são suportados:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
show | bool | False | Se True, exibe as imagens ou vídeos anotados numa janela. Útil para feedback visual imediato durante o desenvolvimento ou teste. |
line_width | int or None | None | Especifica a largura da linha das caixas delimitadoras. Se None, a largura da linha é ajustada automaticamente com base no tamanho da imagem. Proporciona personalização visual para maior clareza. |
Link to this sectionConclusão#
Compreender quando e como usar diferentes tipos de visualizações é crucial para uma análise de dados eficaz. Gráficos de linhas, gráficos de barras e gráficos de pizza são ferramentas fundamentais que podem te ajudar a transmitir a história dos seus dados de forma mais clara e eficaz. A solução de Analytics do Ultralytics YOLO26 fornece uma maneira simplificada de gerar essas visualizações a partir dos seus resultados de detecção de objetos e rastreamento, tornando mais fácil extrair insights significativos dos seus dados visuais.
Link to this sectionFAQ#
Link to this sectionComo crio um gráfico de linhas usando a Análise do Ultralytics YOLO26?#
Para criar um gráfico de linhas usando a Análise do Ultralytics YOLO26, siga estes passos:
- Carregue um modelo YOLO26 e abra seu arquivo de vídeo.
- Inicialize a classe
Analyticscom o tipo definido como "line." - Itere através dos quadros do vídeo, atualizando o gráfico de linhas com dados relevantes, como contagens de objetos por quadro.
- Salve o vídeo de saída exibindo o gráfico de linhas.
Exemplo:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
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(
"ultralytics_analytics.avi",
cv2.VideoWriter_fourcc(*"MJPG"),
fps,
(1280, 720), # this is fixed
)
analytics = solutions.Analytics(
analytics_type="line",
show=True,
)
frame_count = 0
while cap.isOpened():
success, im0 = cap.read()
if success:
frame_count += 1
results = analytics(im0, frame_count) # update analytics graph every frame
out.write(results.plot_im) # write the video file
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()Para mais detalhes sobre a configuração da classe Analytics, visite a seção Análise usando Ultralytics YOLO26.
Link to this sectionQuais são os benefícios de usar o Ultralytics YOLO26 para criar gráficos de barras?#
Usar o Ultralytics YOLO26 para criar gráficos de barras oferece vários benefícios:
- Visualização de Dados em Tempo Real: Integre facilmente os resultados de detecção de objetos em gráficos de barras para atualizações dinâmicas.
- Facilidade de Uso: A API e as funções simples tornam direto implementar e visualizar dados.
- Personalização: Personalize títulos, rótulos, cores e muito mais para atender às suas necessidades específicas.
- Eficiência: Processe com eficiência grandes quantidades de dados e atualize gráficos em tempo real durante o processamento de vídeo.
Use o seguinte exemplo para gerar um gráfico de barras:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
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(
"ultralytics_analytics.avi",
cv2.VideoWriter_fourcc(*"MJPG"),
fps,
(1280, 720), # this is fixed
)
analytics = solutions.Analytics(
analytics_type="bar",
show=True,
)
frame_count = 0
while cap.isOpened():
success, im0 = cap.read()
if success:
frame_count += 1
results = analytics(im0, frame_count) # update analytics graph every frame
out.write(results.plot_im) # write the video file
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()Para saber mais, visite a seção Gráfico de Barras no guia.
Link to this sectionPor que devo usar o Ultralytics YOLO26 para criar gráficos de pizza em meus projetos de visualização de dados?#
O Ultralytics YOLO26 é uma excelente escolha para criar gráficos de pizza porque:
- Integração com Detecção de Objetos: Integre diretamente os resultados de detecção de objetos em gráficos de pizza para insights imediatos.
- API Fácil de Usar: Simples de configurar e usar com o mínimo de código.
- Personalizável: Várias opções de personalização para cores, rótulos e mais.
- Atualizações em Tempo Real: Gerencie e visualize dados em tempo real, o que é ideal para projetos de análise de vídeo.
Aqui está um exemplo rápido:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
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(
"ultralytics_analytics.avi",
cv2.VideoWriter_fourcc(*"MJPG"),
fps,
(1280, 720), # this is fixed
)
analytics = solutions.Analytics(
analytics_type="pie",
show=True,
)
frame_count = 0
while cap.isOpened():
success, im0 = cap.read()
if success:
frame_count += 1
results = analytics(im0, frame_count) # update analytics graph every frame
out.write(results.plot_im) # write the video file
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()Para mais informações, consulte a seção Gráfico de Pizza no guia.
Link to this sectionO Ultralytics YOLO26 pode ser usado para rastrear objetos e atualizar visualizações dinamicamente?#
Sim, o Ultralytics YOLO26 pode ser usado para rastrear objetos e atualizar visualizações dinamicamente. Ele suporta o rastreamento de vários objetos em tempo real e pode atualizar várias visualizações, como gráficos de linhas, gráficos de barras e gráficos de pizza com base nos dados dos objetos rastreados.
Exemplo para rastrear e atualizar um gráfico de linhas:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
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(
"ultralytics_analytics.avi",
cv2.VideoWriter_fourcc(*"MJPG"),
fps,
(1280, 720), # this is fixed
)
analytics = solutions.Analytics(
analytics_type="line",
show=True,
)
frame_count = 0
while cap.isOpened():
success, im0 = cap.read()
if success:
frame_count += 1
results = analytics(im0, frame_count) # update analytics graph every frame
out.write(results.plot_im) # write the video file
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()Para saber sobre a funcionalidade completa, veja a seção Rastreamento.
Link to this sectionO que torna o Ultralytics YOLO26 diferente de outras soluções de detecção de objetos como OpenCV e TensorFlow?#
O Ultralytics YOLO26 se destaca de outras soluções de detecção de objetos como OpenCV e TensorFlow por vários motivos:
- Precisão de Última Geração: O YOLO26 oferece precisão superior em tarefas de detecção de objetos, segmentação de instância, segmentação semântica e classificação.
- Facilidade de Uso: A API amigável permite implementação e integração rápidas sem codificação extensiva.
- Desempenho em Tempo Real: Otimizado para inferência de alta velocidade, adequado para aplicações em tempo real.
- Aplicações Diversas: Suporta várias tarefas, incluindo rastreamento de múltiplos objetos, treinamento de modelos personalizados e exportação para diferentes formatos como ONNX, TensorRT e CoreML.
- Documentação Abrangente: Documentação extensa e recursos de blog para guiar os usuários em cada etapa.
Para comparações mais detalhadas e casos de uso, explore nosso Blog da Ultralytics.


