Yolo Vision Shenzhen
Shenzhen
Junte-se agora

Por que Ultralytics remove NMS como isso altera a implementação

Descubra como Ultralytics permite uma inferência verdadeiramente completa e NMS e por que a remoção do pós-processamento simplifica a exportação e a implementação de ponta.

Em 14 de janeiro, lançámos Ultralytics , a última geração dos nossos modelos de visão computacional. Com o YOLO26, o nosso objetivo não era apenas melhorar a precisão ou a velocidade, mas repensar como os modelos de deteção de objetos são construídos e implementados em sistemas do mundo real.

À medida que a visão computacional passa da investigação para a produção, espera-se cada vez mais que os modelos sejam executados em CPUs, dispositivos de ponta, câmaras, robôs e hardware incorporado. Nesses ambientes, a fiabilidade, a baixa latência e a facilidade de implementação são tão importantes quanto o desempenho. 

O YOLO26 foi projetado com essa realidade em mente, usando uma arquitetura simplificada de ponta a ponta que remove a complexidade desnecessária do pipeline de inferência. Uma das inovações mais importantes feitas no YOLO26 é a remoção da supressão não máxima, comumente conhecida como NMS. 

Durante anos, NMS sido uma parte padrão dos sistemas de deteção de objetos, usado como uma etapa de pós-processamento para limpar deteções duplicadas. Embora eficaz, também introduziu desafios adicionais de computação e implementação, especialmente em hardware de ponta.

Com o YOLO26, adotamos uma abordagem diferente. Ao repensar como as previsões são geradas e treinadas, possibilitamos uma inferência verdadeiramente completa e NMS. O modelo produz detecções finais diretamente, sem depender de etapas de limpeza externas ou regras criadas manualmente. Isso torna o YOLO26 mais rápido, mais fácil de exportar e mais confiável para implantar em uma ampla variedade de plataformas de hardware.

Fig. 1. Detecção de objetos numa imagem utilizando Ultralytics .

Neste artigo, vamos analisar mais detalhadamente por que a deteção tradicional de objetos dependia do NMS, como isso se tornou um gargalo na implementação e como o YOLO26 elimina a necessidade de soluções alternativas. Vamos começar!

A detecção tradicional de objetos produz detecções duplicadas

Antes de nos aprofundarmos no que NMS e por que o removemos do YOLO26, vamos dar um passo atrás e ver como os modelos tradicionais de detecção de objetos geram as suas previsões.

Os modelos tradicionais de deteção de objetos geralmente produzem várias caixas delimitadoras sobrepostas para o mesmo objeto. Cada uma dessas caixas vem com a sua própria pontuação de confiança, mesmo que todas se refiram ao mesmo objeto na imagem.

Isso acontece por alguns motivos. Primeiro, o modelo faz previsões em vários locais espaciais e em diferentes escalas ao mesmo tempo. Isso ajuda o modelo detect de diferentes tamanhos, mas também significa que locais próximos podem identificar o mesmo objeto de forma independente.

Em segundo lugar, muitos sistemas de deteção de objetos utilizam abordagens baseadas em âncoras, que geram um grande número de caixas candidatas em torno de cada localização. Embora isso melhore a probabilidade de encontrar objetos com precisão, também aumenta o número de previsões sobrepostas.

Por fim, a detecção baseada em grelha, por si só, leva naturalmente à redundância. Quando um objeto se encontra próximo ao limite de várias células da grelha, várias células podem prever uma caixa para esse objeto, resultando em várias detecções sobrepostas. 

Por causa disso, a saída bruta do modelo frequentemente contém várias caixas para um único objeto. Para tornar os resultados utilizáveis, essas previsões redundantes precisam ser filtradas para que apenas uma detecção final permaneça.

Compreender a supressão não máxima

Quando um modelo de deteção de objetos produz várias caixas delimitadoras sobrepostas para o mesmo objeto, esses resultados precisam ser limpos antes de poderem ser usados. É aqui que a supressão não máxima é aplicada.

A supressão não máxima é uma etapa de pós-processamento executada após o modelo ter concluído as suas previsões. O seu objetivo é reduzir detecções duplicadas para que cada objeto seja representado por uma única caixa delimitadora final.

Fig. 2. Uma visão geral do NMS. Imagem do autor.

O processo funciona comparando as caixas delimitadoras com base nas suas pontuações de confiança e no grau de sobreposição. As previsões com confiança muito baixa são removidas primeiro. 

As caixas restantes são então classificadas por confiança, e a caixa com a pontuação mais alta é selecionada como a melhor deteção. Essa caixa selecionada é comparada com as outras caixas. 

Se outra caixa se sobrepor demasiado a ela, essa caixa é suprimida e removida. A sobreposição é normalmente medida usando Intersection over Union, uma métrica que calcula a relação entre a área partilhada por duas caixas e a área total coberta por ambas. Este processo repete-se até que apenas as deteções mais confiáveis e sem sobreposição permaneçam.

Por que NMS a implementação

Embora a supressão não máxima ajude a filtrar detecções duplicadas, ela também apresenta desafios que se tornam mais visíveis quando os modelos saem da fase de pesquisa e passam para a implementação no mundo real.

Uma das maiores questões é o desempenho. NMS após a inferência e requer a comparação entre as caixas delimitadoras para decidir quais devem ser mantidas. 

Este processo é computacionalmente dispendioso e difícil de paralelizar de forma eficiente. Em dispositivos de ponta e sistemas CPU, este trabalho extra pode adicionar uma latência perceptível, tornando mais difícil atender aos requisitos em tempo real.

NMS aumenta a complexidade da implementação. Como não faz parte do próprio modelo, ele precisa ser implementado separadamente como código de pós-processamento. 

Diferentes tempos de execução e plataformas lidam com NMS maneiras diferentes, o que muitas vezes significa manter implementações personalizadas para cada ambiente de destino. O que funciona em uma configuração pode se comportar de maneira ligeiramente diferente em outra, tornando a implementação mais frágil e difícil de dimensionar.

A otimização de hardware é outro desafio. NMS se adapta perfeitamente aos aceleradores de IA especializados, que são projetados para executar operações de redes neurais com eficiência. Como resultado, mesmo quando o modelo é executado rapidamente em hardware otimizado, NMS se tornar um gargalo que limita o desempenho geral.

Além desses fatores, NMS de parâmetros escolhidos manualmente, como limites de confiança e limites de sobreposição. Essas configurações podem afetar significativamente os resultados e, muitas vezes, precisam ser ajustadas para diferentes conjuntos de dados, aplicações ou hardware. Isso torna o comportamento menos previsível em sistemas de produção e adiciona uma sobrecarga extra de configuração.

Explicação sobre a inferência de deteção de objetos de ponta a ponta

As limitações da supressão não máxima levaram-nos a repensar como os modelos de deteção de objetos devem se comportar no momento da inferência. Em vez de gerar muitas previsões sobrepostas e limpá-las posteriormente, fizemos uma pergunta mais fundamental. 

E se o modelo pudesse produzir detecções finais diretamente? Essa questão está no cerne da inferência de detecção de objetos de ponta a ponta. Em um sistema de ponta a ponta, o modelo é treinado para lidar com todo o processo de detecção do início ao fim, sem depender de etapas externas de limpeza.

Em vez de produzir muitas caixas candidatas e filtrá-las após a inferência, o modelo aprende a gerar por conta própria um pequeno conjunto de previsões confiáveis e não sobrepostas. As detecções duplicadas são resolvidas dentro da rede, em vez de serem removidas pelo pós-processamento.

Arquiteturas de modelos mais recentes mostraram que essa abordagem era possível e prática. Com a estratégia de treinamento correta, os modelos podiam aprender a associar cada objeto a uma única previsão, em vez de muitas previsões concorrentes, reduzindo a redundância na sua origem.

Fig. 3. Um exemplo de deteção de objetos usando Ultralytics .

Para que isso funcione, o treinamento também precisa mudar. Em vez de permitir que muitas previsões concorram pelo mesmo objeto, o modelo aprende a tomar uma decisão clara, produzindo menos detecções, mas com maior confiança.

O resultado geral é um pipeline de inferência mais simples. Como as duplicatas já são resolvidas internamente, não há necessidade de supressão não máxima no momento da inferência. A saída do modelo já é o conjunto final de detecções.

Este design completo também facilita a implementação. Sem etapas de pós-processamento ou NMS específicas da plataforma, o modelo exportado é totalmente independente e funciona de forma consistente em diferentes estruturas de inferência e alvos de hardware.

Como explica o nosso engenheiro-chefe de parcerias, Francesco Mattioli, “o verdadeiro aprendizado de ponta a ponta significa que o modelo deve lidar com tudo, desde pixels até previsões, sem etapas de pós-processamento manuais que quebram a diferenciabilidade e complicam a implementação”.

Como Ultralytics remove NMS

O YOLO26 elimina a supressão não máxima, alterando a forma como as detecções são aprendidas e produzidas, em vez de depender do pós-processamento para limpá-las. Em vez de permitir que muitas previsões concorram pelo mesmo objeto, o YOLO26 é treinado para aprender uma relação clara de um para um entre objetos e resultados.

Isso é possível, em parte, graças à detecção baseada em consultas aprendíveis, que ajuda o modelo a se concentrar na produção de uma única previsão confiável para cada objeto, em vez de muitas candidatas sobrepostas. Cada objeto está associado a uma previsão, reduzindo naturalmente as detecções duplicadas.

Esse comportamento é reforçado por meio de estratégias de correspondência consistentes durante o treinamento, incentivando o modelo a tomar uma decisão segura por objeto, em vez de gerar previsões sobrepostas. No final das contas, o modelo produz menos previsões, mas cada uma delas representa uma detecção final. 

Por que a remoção do DFL tornou possível a detecção NMS

Outra inovação importante que permite a inferência NMS no YOLO26 é a remoção da Distribuição Focal Loss, ou DFL. Nos YOLO anteriores, a DFL era usada para melhorar a regressão da caixa delimitadora, prevendo uma distribuição de possíveis localizações da caixa em vez de um único valor. 

Embora essa abordagem tenha melhorado a precisão da localização, ela também adicionou complexidade ao pipeline de detecção. Essa complexidade tornou-se uma limitação ao avançar para uma inferência verdadeiramente completa. 

O DFL introduziu cálculos adicionais e intervalos de regressão fixos, o que tornou mais difícil para o modelo aprender atribuições de objetos limpas e individuais e aumentou a dependência de etapas de pós-processamento, como a supressão não máxima. Com o YOLO26, removemos o DFL e redesenhamos a regressão da caixa delimitadora para torná-la mais simples e direta.

Em vez de depender de resultados baseados na distribuição, o modelo aprende a prever coordenadas precisas da caixa de forma a permitir detecções menos numerosas, mas mais confiáveis. Essa mudança ajuda a reduzir as previsões sobrepostas na sua origem e alinha a regressão da caixa delimitadora com o design completo e NMS do YOLO26. 

Ultralytics NMS requer NMS e é fácil de implementar.

Um design NMS torna o YOLO26 um modelo verdadeiramente completo. Isso tem um impacto importante na exportação de modelos

Exportar significa converter um modelo treinado para um formato que possa ser executado fora do ambiente de treino, como ONNX, TensorRT, CoreML ou OpenVINO. Em pipelines tradicionais, esse processo frequentemente falha porque a supressão não máxima não faz parte do próprio modelo. 

Ao remover NMS, o YOLO26 evita esse problema completamente. O modelo exportado já inclui tudo o que é necessário para produzir detecções finais. 

Isso torna o modelo exportado totalmente independente e mais portátil entre estruturas de inferência e destinos de hardware. O mesmo modelo se comporta de maneira consistente, seja ele implementado em servidores, sistemas CPU, dispositivos incorporados ou aceleradores de ponta. A implementação se torna mais direta, pois o que você exporta é exatamente o que você executa.

Essa simplicidade é especialmente importante para aplicações de ponta. Por exemplo, o YOLO26 pode ser facilmente implementado em dispositivos como drones para casos de uso como monitoramento de culturas, inspeção de campos e análise da saúde das plantas, onde os orçamentos limitados de computação e energia tornam impraticáveis os complexos pipelines de pós-processamento. Como o modelo gera detecções finais diretamente, ele funciona de forma confiável em hardware leve, sem etapas extras de processamento.

Fig. 4. Ultralytics é fácil de implementar em dispositivos de ponta, como drones.

Em suma, a inferência NMS elimina o atrito da exportação e da implementação e permite sistemas de visão mais limpos e confiáveis. NMS uma solução alternativa. O YOLO26 não precisa mais de soluções alternativas.

Principais conclusões

O YOLO26 elimina a supressão não máxima (NMS) resolvendo o problema subjacente das detecções duplicadas, em vez de limpá-las após o facto. O seu design completo permite que o modelo produza detecções finais diretamente, tornando a exportação e a implementação mais simples e consistentes em diferentes hardwares. NMS uma solução útil para sistemas anteriores, mas o YOLO26 já não precisa dele.

Junte-se à nossa comunidade e confira o nosso repositório GitHub para saber mais sobre IA. Explore as nossas páginas de soluções sobre IA na agricultura e visão computacional no retalho. Descubra as nossas opções de licenciamento e comece a usar a Vision AI hoje mesmo! 

Vamos construir o futuro
da IA juntos!

Comece sua jornada com o futuro do aprendizado de máquina

Comece gratuitamente