Artigos aprimorados na coluna de melhoria da série de livros de manga
Endereço da coluna: Primeira coluna exclusiva em toda a rede "Mango Yolov8 Tutorial de melhoria aprofundada"?
Endereço da coluna: Primeira coluna exclusiva em toda a rede "Mango Yolov5 Tutorial de melhoria aprofundada"?
Endereço da coluna: Primeira coluna exclusiva em toda a rede "Mango Yolov7 Tutorial de melhoria aprofundada"?
Endereço do projeto: https://github.com/iscyy/ultralyticspro
Concentre -se nas melhorias do Yolov8, novo - Yolov8 em Pytorch>, Suporte para melhorar a espinha dorsal, pescoço, cabeça, perda, IOU, LA, NMS e outros módulos facilitam o Yolov8
? O novo projeto de melhoria do Yolov8 Ultralyticspro está chegando, os pontos de melhoria mais recentes são atualizados em 2024
1. Melhore o conteúdo gratuito do Yolov8 <br> Este projeto continuará atualizando alguns pontos de melhoria gratuitos, que serão atualizados toda semana
3.22 Atualização: mecanismo de atenção: ultralytics/CFG/Models/CFG2024/YOLOV8-ATTENÇÃO
Mecanismo de atenção do jogo,
Mecanismo de atenção,
Mecanismo de atenção simam,
Mecanismo de atenção do SK,
Mecanismo de atenção da SOCA,
Mecanismo de atenção da CBAM,
3.23 Atualização: Estrutura da pirâmide: Ultralytics/CFG/Models/CFG2024/YOLOV8 Piramida Melhoria da estrutura
Spelan,
Simsppf,
Basicrfb,
ASPP,
Sppfcspc
Para mais atualizações, clique em: https://github.com/iscyy/ultralyticspro
Atualização do projeto YOLOV5
2024.03
Adicionado Disample Upsampling Melhoria Pontos de Melhoria: ICCV2023 Documento: Disample Upsampling Melhorias
O YOLOAIR é uma biblioteca de algoritmo YOLO baseada em Pytorch. Unifique a estrutura do código do modelo, aplicação unificada, melhoria unificada, combinação fácil de módulos e construa um modelo de rede mais poderoso.
Chinês simplificado | Inglês
Recursos • Uso? • Documento? • relatar um problema? • Atualizar? • Discussão✌️
• Métodos e referências de melhoria do YOLO •
Diversificação do modelo : Diferentes modelos de rede de detecção são construídos com base em diferentes módulos de rede.
Componente modular : ajuda os usuários a personalizar e combinar rapidamente a espinha dorsal, o pescoço e a cabeça, diversificar modelos de rede, ajudar a pesquisas científicas a melhorar os algoritmos de detecção, melhorias de modelos e combinações de arranjos de rede. Crie um poderoso modelo de rede.
Unifique a estrutura do código do modelo, métodos de aplicativos unificados, ajuste de parâmetros unificados, melhoria unificada, várias tarefas integradas, combinação fácil de módulos e construir um modelo de rede mais poderoso .
Built-in integrated model network structures such as YOLOv5, YOLOv7, YOLOv6, YOLOX, YOLOR, Transformer, PP-YOLO, PP-YOLOv2, PP-YOLOE, PP-YOLOEPlus, Scaled_YOLOv4, YOLOv3, YOLOv4, YOLO-Face, TPH-YOLO, YOLOv5Lite, SPD-YOLO, SlimNeck-YOLO, PicoDet and Outros modelos ... integram uma variedade de algoritmos de detecção e modelos de várias tarefas relacionados usando uma estrutura de código de modelo unificado, integrado na biblioteca YOLOAIR e métodos de aplicação unificados . É conveniente para os pesquisadores científicos melhorarem os modelos de algoritmo de papel, comparar modelos e realizar a diversificação de combinações de rede. Inclui modelos leves e modelos de precisão mais alta e escolhe razoavelmente de acordo com a cena para obter um equilíbrio entre precisão e velocidade. Ao mesmo tempo, a biblioteca suporta desacoplar diferentes estruturas e componentes do módulo para criar componentes do módulo. Ao combinar diferentes componentes do módulo, os usuários podem personalizar e criar diferentes modelos de detecção com base em diferentes conjuntos de dados ou diferentes cenários de negócios.
Suporta multitarefa integrada, incluindo detecção de objetos, segmentação de instância, classificação de imagem, estimativa de pose, detecção de rosto, rastreamento de destino e outras tarefas
Estrela? e o Fork não se perderá e atualizará simultaneamente.
Endereço do projeto?: Https://github.com/iscyy/yoloir
Algumas instruções de melhoria tutorial?: Https://github.com/iscyy/yoloir/wiki/improved-tutorial-presentation
As seguintes funções são suportadas para testes internos da versão YOLOAIR-BETA
Apoie mais melhorias no modelo de algoritmo da série YOLO (atualizado continuamente ...)
A biblioteca do algoritmo YOLOAIR resume uma variedade de modelos de detecção da série YOLO, e um conjunto de código integra vários modelos:
Suportar mais componentes de modelo de rede
| Backbones | Pescoço | Cabeça |
|
|
|
| Mecanismo de atenção | Estratégia de atribuição de tags | Função de perda de IOU |
|
|
|
| Perda | NMS | Aprimoramento de dados |
|
|
|
| Estrutura de pool de pirâmide espacial | Componentes modulares | Ancoragem / AnchorFree |
|
|
|
Apoie mais backbone
Apoie mais pescoço
Apoie mais cabeças de detecção
Yolov4, cabeça de detecção da cabeça Yolov5;
Yolor aprende implicitamente a cabeça de detecção da cabeça;
A cabeça desacoplada de Yolox desacoplou a cabeça desacoplada e a cabeça de detecção;
Cabeça de detecção de fusão espacial adaptativa ASFF Head;
Yolov6-V2.0 Cabeça desacoplada eficiente;
Cabeça de detecção YOLOV7 IauxDetect Head, Idetect Head, etc.;
Outras cabeças de detecção diferentes
Suporta mais mecanismos de atenção plug-and-play
Conecte e reproduza mecanismos de atenção em qualquer parte da rede
ATENÇÃO DE ATENÇÃO
Transformador contextual
Transformador de gargalo
Atenção S2-MLP
Atenção de Sk
Atenção da CBAM
Se atenção
Coordenar a atenção
Nomear atenção
Atenção do jogo
Atenção da ECA
Embaralhar atenção
Crisscrossattion
Coordenar a atenção
Socattion
Simam Atenção está sendo atualizada continuamente?
Grande notícia! ! ! Como um suplemento ao projeto de código aberto, recomendamos uma observação externa da biblioteca de código do algoritmo de atenção. Está resumido e organizado de maneira abrangente, incluindo várias atenção e outros códigos. O código é simples e fácil de ler, e uma linha de código implementa o mecanismo de atenção.
Mais estruturas espaciais de pirâmide
Apoiar mais perdas
Suporta a âncora e sem âncora
? Yolov5, yolov7, yolov3, yolov4, yolor, scaledyolov4, ppyolo, ppyolov2, aprimorado-yolov5, aprimorada-yolov7
? Yolox, Yolov6 (papel), ppyoloe, ppyoloe+
Suporta várias estratégias de alocação de tags
Suporte fusão de caixa ponderada (WBF)
Componentes modulares múltiplos embutidos para modelo de rede
Conv, GhostConv, Bottleneck, GhostBottleneck, SPP, SPPF, DWConv, MixConv2d, Focus, CrossConv, BottleneckCSP, C3, C3TR, C3SPP, C3Ghost, C3HB, C3RFEM, MultiSEAM, SEAM, C3STR, SPPCSPC, RepConv, BoT3, Air, CA, CBAM, Involution, Stem, ResCSPC, ResCSPB, ResXCSPB, ResXCSPC, BottleneckCSPB, BottleneckCSPC, ASPP, BasicRFB, SPPCSPC_group, HorBlock, CNeB, C3GC, C3C2, nn.ConvTranspose2d, DWConvblock, RepVGGBlock, CoT3, ConvNextBlock, SPPCSP, Bottleneckcsp2, DownC, Bottleneckcspf, Repvggblock, Reorg, DWT, Mobilene, Hornet ... e outros códigos detalhados./models/common.py arquivo
Apoie mais funções de perda de IOU
Apoie mais NMS
Suportar mais aprimoramentos de dados
Suporta o carregamento oficial de pesos pré-treinamento de Yolov3, Yolov4, Yolov5, Yolov7, Yolor, Scaled_yolo e outras redes para aprendizado de transferência
YOLO series network model thermal diagram visualization (GardCAM, GardCAM++, etc.) supports YOLOv3, YOLOv3-SPP, YOLOv4, YOLOv5, YOLOR, YOLOv7Scaled_YOLOv4, TPH-YOLO, SPD-YOLO and custom network model models (YOLOAir (Beta version internal test) has been supported)
Resumo dos Diagramas da estrutura do modelo de rede convencionais: Modelo?
Os módulos de componentes acima usam uma estrutura de código de modelo unificado, um formulário de tarefa unificado e um método de aplicação unificada. A componente do módulo pode ajudar os usuários a personalizar e combinar rapidamente o backbone, o pescoço e a cabeça, diversificar modelos de rede, ajudar a pesquisas científicas a melhorar os algoritmos de detecção e criar um modelo de rede mais poderoso.
Nota: Os recursos principais acima suportes incluem versão principal e versão beta. Alguns recursos são temporariamente atualizados apenas na versão beta. Nem todas as atualizações são diretamente no Main. Depois que as versões beta subsequentes são testadas internamente, elas são gradualmente adicionadas à versão principal.
Including model configuration files based on various algorithm models such as YOLOv5, YOLOv7, YOLOX, YOLOR, YOLOv3, YOLOv4, Scaled_YOLOv4, PPYOLOE, PPYOLOEPlus, Transformer, YOLO-FaceV2, PicoDet, YOLOv5-Lite, TPH-YOLOv5, SPD-YOLO, etc.
| Detecção de alvo | Segmentação de destino |
|---|---|
| Classificação da imagem | Segmentação da instância |
|---|---|
| Segmentação de destino | Rastreamento de destino |
|---|---|
| Estimativa de postura | Detecção de rosto |
|---|---|
| Foto térmica 01 | Foto térmica 02 |
|---|---|
Yolov5 https://github.com/ultralytics/yolov5/releases/tag/v6.1
Yolov4 https://github.com/iscyy/yoloir/releases/tag/v1.0
Yolov3 https://github.com/iscyy/yoloir/releases/tag/v1.0
Yolor https://github.com/iscyy/yoloir/releases/tag/v1.0
SCALED_YOLO https://github.com/iscyy/yoloir/releases/tag/v1.0
Yolov7 https://github.com/iscyy/yoloir/releases/tag/v1.0
Sobre o código. Siga o princípio do design do Yolov5.
A versão original foi criada com base no Yolov5 (v6.1)
Clone o armazém da versão em python> = 3.7.0 e instale requisitos.txt, incluindo pytorch> = 1.7 .
$ git clone https://github.com/iscyy/yoloair.git # 克隆
$ cd YOLOAir
$ pip install -r requirements.txt # 安装$ python train.py --data coco128.yaml --cfg configs/yolov5/yolov5s.yaml #默认为yolo detect.py executa a inferência em várias fontes de dados e salva os resultados da detecção no diretório runs/detect .
$ python detect.py --source 0 # 网络摄像头
img.jpg # 图像
vid.mp4 # 视频
path/ # 文件夹
path/ * .jpg # globSe você usar modelos diferentes para raciocinar sobre conjuntos de dados, poderá usar o arquivo wbf.py para integrar os resultados por meio da fusão de caixa ponderada. Você só precisa definir o caminho IMG e o caminho TXT no arquivo wbf.py.
$ python wbf.py FightingCV Official conta Atualizações em papel de ponta todos os dias
(Responda à conta pública para adicionar grupo, adicionar assistente ao grupo de troca)
| Modelo | tamanho (pixels) | mapa val 0,5: 0,95 | mapa val 0,5 | Velocidade CPU B1 (EM) | Velocidade V100 B1 (EM) | Velocidade V100 B32 (EM) | params (M) | Flops @640 (b) | Pesos |
|---|---|---|---|---|---|---|---|---|---|
| Yolov5n | 640 | 28.0 | 45.7 | 45 | 6.3 | 0,6 | 1.9 | 4.5 | Yolov5n |
| Yolov5s | 640 | 37.4 | 56.8 | 98 | 6.4 | 0,9 | 7.2 | 16.5 | Yolov5s |
| Yolov5m | 640 | 45.4 | 64.1 | 224 | 8.2 | 1.7 | 21.2 | 49.0 | Yolov5m |
| Yolov5l | 640 | 49.0 | 67.3 | 430 | 10.1 | 2.7 | 46.5 | 109.1 | Yolov5l |
| Yolov5x | 640 | 50.7 | 68.9 | 766 | 12.1 | 4.8 | 86.7 | 205.7 | Yolov5x |
| Yolov5n6 | 1280 | 36.0 | 54.4 | 153 | 8.1 | 2.1 | 3.2 | 4.6 | Yolov5n6 |
| Yolov5S6 | 1280 | 44.8 | 63.7 | 385 | 8.2 | 3.6 | 12.6 | 16.8 | Yolov5S6 |
| Yolov5m6 | 1280 | 51.3 | 69.3 | 887 | 11.1 | 6.8 | 35.7 | 50.0 | Yolov5m6 |
| Yolov5l6 | 1280 | 53.7 | 71.3 | 1784 | 15.8 | 10.5 | 76.8 | 111.4 | Yolov5l6 |
| Yolov5x6 + Tta | 1280 1536 | 55.0 55.8 | 72.7 72.7 | 3136 - | 26.2 - | 19.4 - | 140.7 - | 209.8 - | Yolov5x6 |
| Modelo | tamanho (pixels) | mapa val 0,5: 0,95 | mapa val 0,5 | Tamanho do kernel deconv | Velocidade V100 B1 (EM) | Velocidade V100 B32 (EM) | params (M) | Flops @640 (b) |
|---|---|---|---|---|---|---|---|---|
| Yolov5s | 640 | 33.7 | 52.9 | - | 5.6 | 2.2 | 7.23 | 16.5 |
| Yolov5S-Deconv-EXP1 | 640 | 33.4 | 52.5 | 2 | 5.6 | 2.4 | 7.55 | 18.2 |
| Yolov5S-Deconv-EXP2 | 640 | 34.7 | 54.2 | 4 | 5.8 | 2.5 | 8.54 | 23.2 |
# train
python -m torch.distributed.run --nproc_per_node 4 train.py --device 0,1,2,3 --data data/coco.yaml --hyp data/hyps/hyp.scratch-low.yaml --cfg path/to/model.yaml --batch 512 --epochs 300 --weights ''
# val
python val.py --verbose --data data/coco.yaml --conf 0.001 --iou 0.65 --batch 1 --weights path/to/model.pt
| Modelo | tamanho (pixels) | mapa val 0,5: 0,95 | mapa val 0,5 | params (M) | Flops @640 (b) |
|---|---|---|---|---|---|
| Yolov5s | 640 | 37.4 | 56.6 | 7.226 | 16.5 |
| YOLOV5S-DECONV | 640 | 37.8 | 57.1 | 7.232 | 16.5 |
| Modelo | tamanho (pixels) | mapa val 0,5: 0,95 | mapa val 0,5 | params (M) | Flops @640 (b) |
|---|---|---|---|---|---|
| Yolov5s | 640 | 37.2 | 56.0 | 7.2 | 16.5 |
| Yolov5S-C3GC-Backbone | 640 | 37.7 | 57.3 | 7.5 | 16.8 |
Sincronizar com a estrutura Yolov5
No futuro, continuaremos a construir e melhorar o ecossistema YOLOAIR para melhorar e integrar mais modelos da série Yolov5, continuando a combinar módulos diferentes, construir modelos de rede mais diferentes horizontalmente e introduzir tecnologias relacionadas etc.
@ article { 2022 yoloair ,
title = {{ YOLOAir }: Makes improvements easy again },
author = { iscyy },
repo = { github https : // github . com / iscyy / yoloair },
year = { 2022 }
} O conteúdo deste site é apenas para compartilhar notas. Se algum conteúdo estiver infrator, enviando email.
Se você tiver alguma dúvida, discuta comigo enviando e -mail.
https://github.com/ultralytics/yolov5
https://github.com/ultralytics/yolov3
https://github.com/wongkinyiu/pytorch_yolov4
https://github.com/wongkinyiu/scaledyolovo4
https://github.com/meituan/yolov6
https://github.com/wongkinyiu/yolov7
https://github.com/wongkinyiu/yolor
https://github.com/xmu-xiaoma666/external-attion-pytorch
https://gitee.com/searchsource/yolov5_yolox
https://github.com/krasjet-yu/yolo-facev2
https://github.com/positivo666/yolov5_research/
https://github.com/pogg/yolov5-lite
https://github.com/gumpest/yolov5-multibackbone