BestYOLO est un meilleur cadre de pratique YOLO orienté par la recherche scientifique et la compétition !
Actuellement, BestYOLO est une bibliothèque open source complètement améliorée basée sur YOLOv5 v7.0. La bibliothèque sera toujours orientée vers des applications pratiques, visant la portabilité et la facilité d'utilisation, et simplifiera l'amélioration des différents modules. Actuellement, l'algorithme de détection de cible YOLOv5 basé sur le modèle torchvision.models Backbone a été intégré et davantage d'applications YOLOv5 seront progressivement open source.
?améliorer
- Backbone-ResNet18 s'aligne sur resnet18
- Backbone-RegNet_y_400mf aligner regnet_y_400mf
- Backbone-MobileNetV3 petit aligner mobilenet_v3_small
- Backbone-EfficientNet_B0 aligné efficientnet_b0
- Backbone-ResNet34 s'aligne sur resnet34
- Backbone-ResNet50 aligner resnet50
- Backbone-EfficientNetV2_s aligné efficientnet_v2_s
- Backbone-EfficientNet_B1 aligné efficientnet_b1
- Backbone-MobileNetV2 s'aligne sur mobilenet_v2
- Backbone-wide_resnet50_2 aligner wide_resnet50_2
- Backbone-VGG11_BN aligner vgg11_bn
- Backbone-Convnext Tiny aligner convnext_tiny
Tous les modèles Backbone prennent en charge l'activation des pondérations pré-entraînées en ajoutant pretrained=True
à chaque modèle common.py. Les poids pré-entraînés dans torchvision.models
sont tous entraînés sur la base de l'ensemble de données ImageNet-1K !
modèles | couches | paramètres | taille du modèle (Mo) |
---|
yolov5n | 214 | 1766623 | 3.9 |
MobileNetV3 | 313 | 2137311 | 4.7 |
efficacenet_b0 | 443 | 6241531 | 13,0 |
RegNety400 | 450 | 5000191 | 10.5 |
ResNet18 | 177 | 12352447 | 25.1 |
ResNet34 | 223 | 22460607 | 45.3 |
ResNet50 | 258 | 27560895 | 55,7 |
EfficaceNetV2_s | 820 | 22419151 | 45,8 |
efficacenet_b1 | 539 | 6595615 | 13.8 |
mobilenet_v2 | 320 | 4455295 | 9.4 |
large_resnet50_2 | 258 | 70887103 | 142.3 |
vgg11_bn | 140 | 10442879 | 21.9 |
convnext_tiny | 308 | 29310175 | 59,0 |
Vous pouvez essayer de définir depth_multiple
et width_multiple
dans le fichier de configuration .yaml
sur 1 en même temps, cela donnera peut-être de bons résultats.
SPP est un regroupement pyramidal spatial, utilisé pour obtenir une sortie de taille adaptative. (La taille de sortie des couches de pooling traditionnelles telles que le pooling maximum et le pooling moyen est liée à la taille d'entrée, mais lorsque nous créons enfin une couche entièrement connectée pour implémenter la classification, nous devons spécifier l'entrée entièrement connectée, nous avons donc besoin d'un moyen de laissez le réseau neuronal Le réseau obtient une sortie de dimension fixe à une certaine couche, et il est préférable de ne pas redimensionner cette méthode (le redimensionnement provoquerait une distorsion), donc SPP a vu le jour. Il a été proposé pour la première fois par He Kaiming et appliqué au RCNN. modèle). Le SPP d'aujourd'hui est devenu le Multi-Scale-ROI-Align d'aujourd'hui sur plus rapide-rcnn, et est devenu SPPF sur Yolo.
- yolov5n(SPPF)
- yolov5n-SPP
- yolov5n-SimSPPF
- yolov5n-ASPP
- yolov5n-RFB
- yolov5n-SPPCSPC
- yolov5n-SPPCSPC_group
- yolov5n-SimCSSPSPPF
modèles | couches | paramètres |
---|
yolov5n(SPPF) | 214 | 1766623 |
yolov5n-SPP | 217 | 1766623 |
yolov5n-SimSPPF | 216 | 1766623 |
yolov5n-ASPP | 214 | 3831775 |
yolov5n-RFB | 251 | 1932287 |
yolov5n-SPPCSPC | 232 | 3375071 |
yolov5n-SPPCSPC_group | 232 | 2047967 |
yolov5n-SimCSSPSPPF | 229 | 3375071 |
- yolov5n
- yolov5n-FPN-AC
- yolov5n-PAN-AC
- yolov5n-FPN+PAN-AC
- yolov5n-FPN-AS
- yolov5n-PAN-AS
- yolov5n-FPN+PAN-AS
modèles | couches | paramètres |
---|
yolov5n | 214 | 1766623 |
yolov5n-FPN-AC | 188 | 1858399 |
yolov5n-PAN-AC | 186 | 1642591 |
yolov5n-FPN+PAN-AC | 160 | 1734367 |
yolov5n-FPN-AS | 204 | 2106847 |
yolov5n-PAN-AS | 194 | 1891039 |
yolov5n-FPN+PAN-AS | 184 | 2231263 |
- Affectation optimale du transport
- Formation assistée Affectation Transport Optimal
- Soft-NMS
N'utilisez pas Soft-NMS
pour la formation. Cela prend trop de temps. Veuillez l'activer au stade val
. Il convient aux petites données qui se chevauchent.
- Tête découplée
- DCNv2
- WBF
- DCNv3
- NWD
application
- Assistante de production des jeux de données YOLOv5
- YOLOv5 boîte unique plusieurs étiquettes
?Compétence
- Formation et test du modèle YOLOv5 et contenu pédagogique sur le déploiement multi-terminal
- Comprendre l'implémentation de YOLOv5-OneFlow de zéro à un
- Problème de calcul YOLOV5 FPS
- Introduction au module Neck de la série YOLO
- Explication détaillée de l'amélioration des données YOLOv5 (hyp.scratch-low.yaml et augmentations.py)
- Toute version de YOLOv5 ajoute la visualisation de la carte thermique Grad-CAM
- Méthode de cryptage et de déchiffrement du poids du modèle entraînée par YOLOv5
- Série YOLOv5 : 6. Modifier Soft-NMS, Soft-CIoUNM...
- Série YOLOv5 : la mise en commun de pyramides spatiales améliore SPPF/SPPFCSPC...
- YOLOv5 | Couche d'auto-attention indépendante pour les tâches visuelles
- Cryptage du code du projet YOLOv5
- YOLOv5 : ajout d'un taux de détection manqué et d'un taux de fausse détection
- Analyse YOLOv5 | Dessiner un tableau de comparaison des données du fichier results.csv
- Astuces de la stratégie d'échantillonnage d'images YOLOv5-échantillonnage en fonction du poids de chaque catégorie de l'ensemble de données
- Comment YOLOv5 effectue la détection de cibles régionales (tutoriel étape par étape)
- Une revue complète des articles sur la détection de cibles 2D (37 articles)
- J'ai lu plus de 30 revues chinoises de base qui ont amélioré YOLO du jour au lendemain.
- Une collection d'articles de base sur les dernières améliorations apportées par CNKI à YOLO | Un aperçu rapide de 22 innovations
- Tueur de détection de petites cibles : yolov5-pip et sahi
- Le grand tueur de la détection de petites cibles : l'amélioration des données encombrées
Il convient de noter que les données d'entraînement et d'inférence restent sous la même forme de données, c'est-à-dire que vous ne pouvez pas vous entraîner à l'aide de graphiques non coupés et déduire sur la base de graphiques coupés !
- Une référence de sélection d'optimiseur immature :
?se référer à
- https://github.com/ultralytics/yolov5/tree/v7.0
- https://github.com/ppogg/YOLOv5-Lite
- https://github.com/deepcam-cn/yolov5-face
- https://github.com/Gumpest/YOLOv5-Multibackbone-Compression
- https://github.com/jizhishutong/YOLOU
- https://github.com/Bobo-y/flexible-yolov5
- https://github.com/iscyy/yoloair
- https://github.com/WangQvQ/Yolov5_Magic
- https://github.com/Hongyu-Yue/yoloV5_modify_smalltarget
- https://github.com/wuzhihao7788/yolodet-pytorch
- https://github.com/iscyy/yoloair2
- https://github.com/positive666/yolo_research
- https://github.com/Javacr/PyQt5-YOLOv5
- https://github.com/yang-0201/YOLOv6_pro
- https://github.com/yhwang-hub/dl_model_deploy
- https://github.com/FeiYull/TensorRT-Alpha
- https://github.com/sjinzh/awesome-yolo-object-detection
- https://github.com/z1069614715/objectdetection_script
- https://github.com/icey-zhang/SuperYOLO
- https://github.com/akashAD98/awesome-yolo-object-detection
?Travail
- https://github.com/cv516Buaa/tph-yolov5
- https://github.com/icey-zhang/SuperYOLO
- https://github.com/luogen1996/OneTeacher
- https://github.com/AlibabaResearch/efficientteacher
- https://github.com/YOLOonMe/EMA-attention-module
- https://github.com/maggiez0138/yolov5_quant_sample
- https://github.com/OutBreak-hui/YoloV5-Flexible-and-Inference
- https://github.com/Johnathan-Xie/ZSD-YOLO
- https://github.com/chengshuxiao/YOLOv5-ODConvNeXt
- https://github.com/LSH9832/edgeyolo
- https://github.com/Koldim2001/YOLO-Patch-Based-Inference
?Citation
@ article { 2023 bestyolo ,
title = {{ BestYOLO }: Making research and competition easier },
author = { Rongsheng Wang },
repo = { github https : // github . com / WangRongsheng / BestYOLO },
year = { 2023 }
}
contribuer