Meet YOLO26: next-gen vision AI.

Link to this sectionMapas de calor de rastreamento de objetos com o Ultralytics YOLO26#

Open Heatmaps In Colab

A solução de mapa de calor no Ultralytics YOLO26 rastreia objetos em quadros de vídeo e sobrepõe a intensidade acumulada de seu movimento a cada quadro, para que áreas movimentadas brilhem em cores quentes, enquanto áreas tranquilas permanecem frias. Construída sobre o rastreamento de objetos do YOLO26, ela transforma qualquer vídeo em um mapa de atividade espacial que revela o fluxo de tráfego, o movimento de multidões e zonas de permanência com uma única chamada Python ou comando CLI.



Watch: Heatmaps using Ultralytics YOLO26

Link to this sectionPor que usar mapas de calor para análise de vídeo?#

  • Identifique padrões de atividade rapidamente: A intensidade se acumula onde os objetos rastreados passam tempo, portanto, faixas de alto tráfego, prateleiras populares ou gargalos de multidão se destacam sem a necessidade de revisão manual quadro a quadro.
  • Rastreamento integrado: A solução executa a detecção e o rastreamento do YOLO26 internamente, portanto, não há um pipeline de rastreamento separado para configurar.
  • Contagem na mesma passagem: Passe uma region para contar objetos que entram e saem de uma zona enquanto o mapa de calor é criado, combinando duas tarefas analíticas em uma única execução.

Link to this sectionAplicações no mundo real#

TransporteVarejo
Sobreposição de mapa de calor do Ultralytics YOLO mostrando a densidade de tráfego de veículosSobreposição de mapa de calor do Ultralytics YOLO mostrando o movimento de clientes no varejo
Mapa de calor de transporte do Ultralytics YOLOMapa de calor de varejo do Ultralytics YOLO

Link to this sectionComo gerar mapas de calor com o Ultralytics YOLO#

Execute a solução de mapa de calor em uma fonte de vídeo a partir da CLI ou Python. O exemplo em Python grava os quadros processados em um arquivo de vídeo de saída:

Mapas de calor usando Ultralytics YOLO
# Run a heatmap example
yolo solutions heatmap show=True

# Pass a source video
yolo solutions heatmap source="path/to/video.mp4"

# Pass a custom colormap
yolo solutions heatmap colormap=cv2.COLORMAP_INFERNO

# Heatmaps + object counting
yolo solutions heatmap region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"

Link to this sectionArgumentos da Heatmap()#

Aqui está uma tabela com os argumentos da Heatmap:

ArgumentoTipoPredefiniçãoDescrição
modelstrNoneCaminho para um ficheiro de modelo YOLO da Ultralytics.
colormapintcv2.COLORMAP_DEEPGREENMapa de cores a usar para o mapa de calor.
show_inboolTrueFlag para controlar se os números de entrada devem ser exibidos no stream de vídeo.
show_outboolTrueFlag para controlar se os números de saída devem ser exibidos no stream de vídeo.
regionlist ou dictNonePontos que definem a região de interesse, seja uma lista de tuplas (x, y) ou um dicionário que mapeia nomes de regiões para listas de pontos para múltiplas regiões (apenas RegionCounter). Quando None, soluções que exigem uma região retornam a um padrão predefinido.

Você também pode aplicar diferentes argumentos de track na solução Heatmap.

ArgumentoTipoPredefiniçãoDescrição
trackerstr'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.
conffloat0.1Define o limiar de confiança para as deteções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
ioufloat0.7Define o limiar de Intersection over Union (IoU) para filtrar deteções sobrepostas.
classeslistNoneFiltra resultados por índice de classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
verboseboolTrueControla a exibição dos resultados de rastreio, fornecendo uma saída visual dos objetos rastreados.
devicestrNoneEspecifica 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 argumentos de visualização suportados estão listados abaixo:

ArgumentoTipoPredefiniçãoDescrição
showboolFalseSe True, exibe as imagens ou vídeos anotados numa janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.
line_widthint or NoneNoneEspecifica 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.
show_confboolTrueExibe a pontuação de confiança para cada detecção ao lado do rótulo. Fornece uma visão sobre a certeza do modelo para cada detecção.
show_labelsboolTrueExibe rótulos para cada detecção na saída visual. Fornece compreensão imediata dos objetos detectados.

Link to this sectionMapas de cores de mapa de calor#

O argumento colormap aceita qualquer mapa de cores do OpenCV. Passe a constante do módulo cv2, por exemplo colormap=cv2.COLORMAP_INFERNO:

Nome do mapa de coresDescrição
cv2.COLORMAP_AUTUMNMapa de cores de outono
cv2.COLORMAP_BONEMapa de cores ósseo
cv2.COLORMAP_JETMapa de cores jato
cv2.COLORMAP_WINTERMapa de cores de inverno
cv2.COLORMAP_RAINBOWMapa de cores arco-íris
cv2.COLORMAP_OCEANMapa de cores do oceano
cv2.COLORMAP_SUMMERMapa de cores de verão
cv2.COLORMAP_SPRINGMapa de cores de primavera
cv2.COLORMAP_COOLMapa de cores frio
cv2.COLORMAP_HSVMapa de cores HSV (Matiz, Saturação, Valor)
cv2.COLORMAP_PINKMapa de cores rosa
cv2.COLORMAP_HOTMapa de cores quente
cv2.COLORMAP_PARULAMapa de cores Parula
cv2.COLORMAP_MAGMAMapa de cores magma
cv2.COLORMAP_INFERNOMapa de cores inferno
cv2.COLORMAP_PLASMAMapa de cores plasma
cv2.COLORMAP_VIRIDISMapa de cores Viridis
cv2.COLORMAP_CIVIDISMapa de cores Cividis
cv2.COLORMAP_TWILIGHTMapa de cores crepúsculo
cv2.COLORMAP_TWILIGHT_SHIFTEDMapa de cores crepúsculo deslocado
cv2.COLORMAP_TURBOMapa de cores turbo
cv2.COLORMAP_DEEPGREENMapa de cores verde profundo

Link to this sectionComo funcionam os mapas de calor#

A solução de mapa de calor estende a classe ObjectCounter. No primeiro quadro processado, ela cria uma camada de intensidade em branco que corresponde ao tamanho do quadro. Cada quadro é então processado em duas etapas:

  1. O rastreamento YOLO26 detecta e segue cada objeto no quadro
  2. Para cada objeto rastreado, a intensidade do mapa de calor aumenta dentro de uma região circular centralizada em sua caixa delimitadora (bounding box)

Uma vez por quadro, a camada de intensidade acumulada é normalizada, colorida com o mapa de cores selecionado e misturada com o quadro original. A sobreposição aparece assim que pelo menos um objeto é rastreado; quadros sem objetos rastreados são exibidos sem a sobreposição de mapa de calor.

O resultado é uma visualização dinâmica que se acumula ao longo do tempo, revelando padrões de tráfego, movimentos de multidões ou outros comportamentos espaciais nos seus dados de vídeo. Quando uma region é definida, a solução também conta objetos entrando e saindo dessa região enquanto o mapa de calor é criado.

Link to this sectionConclusão#

A solução de mapa de calor Ultralytics YOLO26 transforma resultados de rastreamento de objetos em uma sobreposição de atividade intuitiva com apenas algumas linhas de código. Para ir mais longe, combine-a com contagem de objetos, explore as outras soluções Ultralytics ou leia sobre o modo de rastreamento subjacente.

Link to this sectionFAQ#

Link to this sectionComo o Ultralytics YOLO26 gera mapas de calor a partir de um vídeo?#

O Ultralytics YOLO26 gera mapas de calor rastreando objetos em quadros de vídeo e acumulando um valor de intensidade na localização de cada objeto rastreado, colorindo o resultado e misturando-o com o quadro original. Áreas onde objetos aparecem com frequência ou permanecem por mais tempo acumulam maior intensidade e são renderizadas em cores mais quentes. Para opções de configuração, consulte a seção Argumentos de Heatmap().

Link to this sectionComo salvar a saída do mapa de calor em um arquivo de vídeo?#

Use o cv2.VideoWriter do OpenCV e escreva results.plot_im para cada quadro processado, conforme mostrado no exemplo principal. O atributo plot_im contém o quadro com a sobreposição do mapa de calor já aplicada.

Link to this sectionPosso combinar mapas de calor com contagem de objetos?#

Sim. Passe um argumento region para Heatmap() com pontos de linha, retângulo ou polígono, e a solução contará os objetos que entram e saem dessa região enquanto o mapa de calor é criado. Os resultados retornados incluem in_count, out_count e contagens por classe. Consulte o guia de contagem de objetos para detalhes de configuração da região.

Link to this sectionComo posso visualizar apenas classes de objetos específicas em mapas de calor usando o Ultralytics YOLO26?#

Passe o argumento classes para Heatmap() com os índices de classe que você deseja manter. Por exemplo, classes=[0, 2] cria o mapa de calor apenas a partir de pessoas e carros (índices de classe COCO 0 e 2):

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(show=True, model="yolo26n.pt", classes=[0, 2])

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        break
    results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()

Link to this sectionO que diferencia os mapas de calor do Ultralytics YOLO26 de outras ferramentas de visualização de dados, como as do OpenCV ou Matplotlib?#

Os mapas de calor Ultralytics YOLO26 integram detecção de objetos, rastreamento, acúmulo de intensidade e renderização de sobreposição em uma única chamada, enquanto ferramentas genéricas como OpenCV ou Matplotlib exigem que você construa esse pipeline por conta própria. A solução processa fluxos de vídeo em tempo real e suporta rastreamento persistente e mapas de cores personalizáveis prontos para uso. Para detalhes sobre o modelo subjacente, consulte a página do modelo YOLO26.

Comentários