当前位置: 首页 > news >正文

RTDETR改进系列指南

基于Ultralytics的RT-DETR改进项目.(89.9¥)

为了感谢各位对RTDETR项目的支持,本项目的赠品是yolov5-PAGCP通道剪枝算法.具体使用教程

自带的一些文件说明

  1. train.py
    训练模型的脚本
  2. main_profile.py
    输出模型和模型每一层的参数,计算量的脚本(rtdetr-l和rtdetr-x因为thop库的问题,没办法正常输出每一层的参数和计算量和时间)
  3. val.py
    使用训练好的模型计算指标的脚本
  4. detect.py
    推理的脚本
  5. track.py
    跟踪推理的脚本
  6. heatmap.py
    生成热力图的脚本
  7. get_FPS.py
    计算模型储存大小、模型推理时间、FPS的脚本
  8. get_COCO_metrice.py
    计算COCO指标的脚本
  9. plot_result.py
    绘制曲线对比图的脚本

RT-DETR基准模型

  1. ultralytics/cfg/models/rt-detr/rtdetr-r18.yaml(有预训练权重COCO+Objects365,来自RTDETR-Pytorch版本的移植)

    rtdetr-r18 summary: 421 layers, 20184464 parameters, 20184464 gradients, 58.6 GFLOPs

  2. ultralytics/cfg/models/rt-detr/rtdetr-r34.yaml(有预训练权重COCO,来自RTDETR-Pytorch版本的移植)

    rtdetr-r34 summary: 525 layers, 31441668 parameters, 31441668 gradients, 90.6 GFLOPs

  3. ultralytics/cfg/models/rt-detr/rtdetr-r50-m.yaml(有预训练权重COCO,来自RTDETR-Pytorch版本的移植)

    rtdetr-r50-m summary: 637 layers, 36647020 parameters, 36647020 gradients, 98.3 GFLOPs

  4. ultralytics/cfg/models/rt-detr/rtdetr-r50.yaml(有预训练权重COCO+Objects365,来自RTDETR-Pytorch版本的移植)

    rtdetr-r50 summary: 629 layers, 42944620 parameters, 42944620 gradients, 134.8 GFLOPs

  5. ultralytics/cfg/models/rt-detr/rtdetr-r101.yaml

    rtdetr-r101 summary: 867 layers, 76661740 parameters, 76661740 gradients, 257.7 GFLOPs

  6. ultralytics/cfg/models/rt-detr/rtdetr-l.yaml(有预训练权重)

    rtdetr-l summary: 673 layers, 32970732 parameters, 32970732 gradients, 108.3 GFLOPs

  7. ultralytics/cfg/models/rt-detr/rtdetr-x.yaml(有预训练权重)

    rtdetr-x summary: 867 layers, 67468108 parameters, 67468108 gradients, 232.7 GFLOPs

专栏改进汇总

二次创新系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-DCNV2-Dynamic.yaml

    使用自研可变形卷积DCNV2-Dynamic改进resnet18-backbone中的BasicBlock.(详细介绍请看百度云视频-MPCA与DCNV2_Dynamic的说明)

  2. ultralytics/cfg/models/rt-detr/rtdetr-iRMB-Cascaded.yaml

    使用EfficientViT CVPR2023中的CascadedGroupAttention对EMO ICCV2023中的iRMB进行二次创新来改进resnet18-backbone中的BasicBlock.(详细介绍请看百度云视频-20231119更新说明)

  3. ultralytics/cfg/models/rt-detr/rtdetr-PConv-Rep.yaml

    使用RepVGG CVPR2021中的RepConv对FasterNet CVPR2023中的PConv进行二次创新后改进resnet18-backbone中的BasicBlock.

  4. ultralytics/cfg/models/rt-detr/rtdetr-Faster-Rep.yaml

    使用RepVGG CVPR2021中的RepConv对FasterNet CVPR2023中的Faster-Block进行二次创新后改进resnet18-backbone中的BasicBlock.

  5. ultralytics/cfg/models/rt-detr/rtdetr-Faster-EMA.yaml

    使用EMA ICASSP2023对FasterNet CVPR2023中的Faster-Block进行二次创新后改进resnet18-backbone中的BasicBlock.

  6. ultralytics/cfg/models/rt-detr/rtdetr-Faster-Rep-EMA.yaml

    使用RepVGG CVPR2021中的RepConv和EMA ICASSP2023对FasterNet CVPR2023中的Faster-Block进行二次创新后改进resnet18-backbone中的BasicBlock.

  7. ultralytics/cfg/models/rt-detr/rtdetr-DWRC3-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对DWRSeg中的Dilation-wise Residual(DWR)进行二次创新改进rtdetr.

  8. ultralytics/cfg/models/rt-detr/rtdetr-ASF-P2.yaml

    在ultralytics/cfg/models/rt-detr/rtdetr-ASF.yaml的基础上进行二次创新,引入P2检测层并对网络结构进行优化.

  9. ultralytics/cfg/models/rt-detr/rtdetr-slimneck-ASF.yaml

    使用SlimNeck中的VoVGSCSP\VoVGSCSPC和GSConv和ASF-YOLO中的Attentional Scale Sequence Fusion改进rtdetr中的CCFM.

  10. ultralytics/cfg/models/rt-detr/rtdetr-goldyolo-asf.yaml

    利用华为2023最新GOLD-YOLO中的Gatherand-Distribute和ASF-YOLO中的Attentional Scale Sequence Fusion进行改进特征融合模块.

  11. ultralytics/cfg/models/rt-detr/rtdetr-HSPAN.yaml

    对MFDS-DETR中的HS-FPN进行二次创新后得到HSPAN改进RTDETR中的CCFM.

  12. ultralytics/cfg/models/rt-detr/rtdetr-ASF-Dynamic.yaml

    使用ICCV2023 DySample改进ASF-YOLO中的Attentional Scale Sequence Fusion的上采样模块得到Dynamic Sample Attentional Scale Sequence Fusion改进CCFM.

  13. ultralytics/cfg/models/rt-detr/rtdetr-iRMB-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对EMO ICCV2023中的iRMB进行二次创新来改进resnet18-backbone中的BasicBlock.

  14. ultralytics/cfg/models/rt-detr/rtdetr-iRMB-SWC.yaml

    使用shift-wise conv对EMO ICCV2023中的iRMB进行二次创新来改进resnet18-backbone中的BasicBlock.

自研系列

待更新

BackBone系列

  1. ultralytics/cfg/models/rt-detr/rt-detr-timm.yaml

    使用timm库系列的主干替换rtdetr的backbone.(基本支持现有CNN模型)

  2. ultralytics/cfg/models/rt-detr/rt-detr-fasternet.yaml

    使用FasterNet CVPR2023替换rtdetr的backbone.

  3. ultralytics/cfg/models/rt-detr/rt-detr-EfficientViT.yaml

    使用EfficientViT CVPR2023替换rtdetr的backbone.

  4. ultralytics/cfg/models/rt-detr/rtdetr-convnextv2.yaml

    使用ConvNextV2 2023替换rtdetr的backbone.

  5. ultralytics/cfg/models/rt-detr/rtdetr-EfficientFormerv2.yaml

    使用EfficientFormerv2 2022替换rtdetr的backbone.

  6. ultralytics/cfg/models/rt-detr/rtdetr-repvit.yaml

    使用RepViT ICCV2023替换rtdetr的backbone.

  7. ultralytics/cfg/models/rt-detr/rtdetr-CSwomTramsformer.yaml

    使用CSwinTramsformer CVPR2022替换rtdetr的backbone.

  8. ultralytics/cfg/models/rt-detr/rtdetr-VanillaNet.yaml

    使用VanillaNet 2023替换rtdetr的backbone.

  9. ultralytics/cfg/models/rt-detr/rtdetr-SwinTransformer.yaml

    使用SwinTransformer ICCV2021替换rtdetr的backbone.

  10. ultralytics/cfg/models/rt-detr/rtdetr-lsknet.yaml

    使用LSKNet ICCV2023替换rtdetr的backbone.

  11. ultralytics/cfg/models/rt-detr/rt-detr-unireplknet.yaml

    使用UniRepLKNet替换rtdetr的backbone.

  12. ultralytics/cfg/models/rt-detr/rtdetr-TransNeXt.yaml

    使用TransNeXt改进rtdetr的backbone.

AIFI系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-AIFI-LPE.yaml

    使用LearnedPositionalEncoding改进AIFI中的位置编码生成.(详细介绍请看百度云视频-20231119更新说明)

  2. ultralytics/cfg/models/rt-detr/rtdetr-CascadedGroupAttention.yaml

    使用EfficientViT CVPR2023中的CascadedGroupAttention改进rtdetr中的AIFI.(详细请看百度云视频-rtdetr-CascadedGroupAttention说明)

  3. ultralytics/cfg/models/rt-detr/rtdetr-AIFI-DAttention.yaml

    使用Vision Transformer with Deformable Attention CVPR2022中的DAttention改进AIFI.

  4. ultralytics/cfg/models/rt-detr/rtdetr-AIFI-HiLo.yaml

    使用LITv2中具有提取高低频信息的高效注意力对AIFI进行二次改进.

Neck系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-ASF.yaml

    使用ASF-YOLO中的Attentional Scale Sequence Fusion来改进rtdetr.

  2. ultralytics/cfg/models/rt-detr/rtdetr-slimneck.yaml

    使用SlimNeck中的VoVGSCSP\VoVGSCSPC和GSConv改进rtdetr中的CCFM.

  3. ultralytics/cfg/models/rt-detr/rtdetr-SDI.yaml

    使用U-NetV2中的 Semantics and Detail Infusion Module对CCFM中的feature fusion进行改进.

  4. ultralytics/cfg/models/rt-detr/rtdetr-goldyolo.yaml

    利用华为2023最新GOLD-YOLO中的Gatherand-Distribute进行改进特征融合模块.

  5. ultralytics/cfg/models/rt-detr/rtdetr-HSFPN.yaml

    使用MFDS-DETR中的HS-FPN改进RTDETR中的CCFM.

Head系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-p2.yaml

    添加小目标检测头P2到TransformerDecoderHead中.

RepC3改进系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-DWRC3.yaml

    使用DWRSeg中的Dilation-wise Residual(DWR)模块构建DWRC3改进rtdetr.

  2. ultralytics/cfg/models/rt-detr/rtdetr-Conv3XCC3.yaml

    使用Swift Parameter-free Attention Network中的Conv3XC改进RepC3.

  3. ultralytics/cfg/models/rt-detr/rtdetr-DRBC3.yaml

    使用UniRepLKNet中的DilatedReparamBlock改进RepC3.

  4. ultralytics/cfg/models/rt-detr/rtdetr-DBBC3.yaml

    使用DiverseBranchBlock CVPR2021改进RepC3.

ResNet主干中的BasicBlock/BottleNeck改进系列(以下改进BottleNeck基本都有,就不再重复标注)

  1. ultralytics/cfg/models/rt-detr/rtdetr-Ortho.yaml

    使用OrthoNets中的正交通道注意力改进resnet18-backbone中的BasicBlock.(详细介绍请看百度云视频-20231119更新说明)

  2. ultralytics/cfg/models/rt-detr/rtdetr-DCNV2.yaml

    使用可变形卷积DCNV2改进resnet18-backbone中的BasicBlock.

  3. ultralytics/cfg/models/rt-detr/rtdetr-DCNV3.yaml

    使用可变形卷积DCNV3 CVPR2023改进resnet18-backbone中的BasicBlock.(安装教程请看百度云视频-20231119更新说明)

  4. ultralytics/cfg/models/rt-detr/rtdetr-iRMB.yaml

    使用EMO ICCV2023中的iRMB改进resnet18-backbone中的BasicBlock.(详细介绍请看百度云视频-20231119更新说明)

  5. ultralytics/cfg/models/rt-detr/rtdetr-DySnake.yaml

    添加DySnakeConv到resnet18-backbone中的BasicBlock中.

  6. ultralytics/cfg/models/rt-detr/rtdetr-PConv.yaml

    使用FasterNet CVPR2023中的PConv改进resnet18-backbone中的BasicBlock.

  7. ultralytics/cfg/models/rt-detr/rtdetr-Faster.yaml

    使用FasterNet CVPR2023中的Faster-Block改进resnet18-backbone中的BasicBlock.

  8. ultralytics/cfg/models/rt-detr/rtdetr-AKConv.yaml

    使用AKConv 2023改进resnet18-backbone中的BasicBlock.

  9. ultralytics/cfg/models/rt-detr/rtdetr-RFAConv.yaml

    使用RFAConv 2023改进resnet18-backbone中的BasicBlock.

  10. ultralytics/cfg/models/rt-detr/rtdetr-RFCAConv.yaml

    使用RFCAConv 2023改进resnet18-backbone中的BasicBlock.

  11. ultralytics/cfg/models/rt-detr/rtdetr-RFCBAMConv.yaml

    使用RFCBAMConv 2023改进resnet18-backbone中的BasicBlock.

  12. ultralytics/cfg/models/rt-detr/rtdetr-Conv3XC.yaml

    使用Swift Parameter-free Attention Network中的Conv3XC改进resnet18-backbone中的BasicBlock.

  13. ultralytics/cfg/models/rt-detr/rtdetr-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock改进resnet18-backbone中的BasicBlock.

  14. ultralytics/cfg/models/rt-detr/rtdetr-DBB.yaml

    使用DiverseBranchBlock CVPR2021改进resnet18-backbone中的BasicBlock.

  15. ultralytics/cfg/models/rt-detr/rtdetr-DualConv.yaml

    使用DualConv改进resnet18-backbone中的BasicBlock.

  16. ultralytics/cfg/models/rt-detr/rtdetr-AggregatedAtt.yaml

    使用TransNeXt中的聚合感知注意力改进resnet18中的BasicBlock.(百度云视频-20240106更新说明)

  17. ultralytics/cfg/models/rt-detr/rtdetr-DCNV4.yaml

    使用DCNV4改进resnet18中的BasicBlock.

  18. ultralytics/cfg/models/rt-detr/rtdetr-SWC.yaml

    使用shift-wise conv改进resnet18中的BasicBlock.

上下采样算子系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-DySample.yaml

    使用ICCV2023 DySample改进CCFM中的上采样.

  2. ultralytics/cfg/models/rt-detr/rtdetr-CARAFE.yaml

    使用ICCV2019 CARAFE改进CCFM中的上采样.

  3. ultralytics/cfg/models/rt-detr/rtdetr-HWD.yaml

    使用Haar wavelet downsampling改进CCFM的下采样.

RT-DETR-L改进系列

  1. ultralytics/cfg/models/rt-detr/rtdetr-l-GhostHGNetV2.yaml

    使用GhostConv改进HGNetV2.(详细介绍请看百度云视频-20231109更新说明)

  2. ultralytics/cfg/models/rt-detr/rtdetr-l-RepHGNetV2.yaml

    使用RepConv改进HGNetV2.(详细介绍请看百度云视频-20231109更新说明)

  3. ultralytics/cfg/models/rt-detr/rtdetr-l-attention.yaml

    添加注意力模块到HGBlock中.(手把手教程请看百度云视频-手把手添加注意力教程)

注意力系列

  1. EMA
  2. SimAM
  3. SpatialGroupEnhance
  4. BiLevelRoutingAttention, BiLevelRoutingAttention_nchw
  5. TripletAttention
  6. CoordAtt
  7. CBAM
  8. BAMBlock
  9. EfficientAttention(CloFormer中的注意力)
  10. LSKBlock
  11. SEAttention
  12. CPCA
  13. deformable_LKA
  14. EffectiveSEModule
  15. LSKA
  16. SegNext_Attention
  17. DAttention(Vision Transformer with Deformable Attention CVPR2022)
  18. FocusedLinearAttention(ICCV2023)
  19. MLCA
  20. TransNeXt_AggregatedAttention
  21. HiLo

IoU系列

  1. IoU,GIoU,DIoU,CIoU,EIoU,SIoU(百度云视频-20231125更新说明)
  2. MPDIoU论文链接(百度云视频-20231125更新说明)
  3. Inner-IoU,Inner-GIoU,Inner-DIoU,Inner-CIoU,Inner-EIoU,Inner-SIoU论文链接(百度云视频-20231125更新说明)
  4. Inner-MPDIoU(利用Inner-Iou与MPDIou进行二次创新)(百度云视频-20231125更新说明)
  5. Normalized Gaussian Wasserstein Distance.论文链接(百度云视频-20231125更新说明)
  6. Shape-IoU,Inner-Shape-IoU论文链接(百度云视频-20240106更新说明)
  7. SlideLoss,EMASlideLoss创新思路.Yolo-Face V2(百度云视频-20240113更新说明)
  8. Wise-IoU(v1,v2,v3)系列(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU)(百度云视频-20240113更新说明)
  9. Inner-Wise-IoU(v1,v2,v3)系列(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU)(百度云视频-20240113更新说明)
  10. Focaler-IoU,Focaler-GIoU,Focaler-DIoU,Focaler-CIoU,Focaler-EIoU,Focaler-SIoU,Focaler-Shape-IoU,Focaler-MPDIoU论文链接(百度云视频-20240128更新说明)
  11. Focaler-Wise-IoU(v1,v2,v3)(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU)论文链接(百度云视频-20240128更新说明)

以Yolov8为基准模型的改进方案

  1. ultralytics/cfg/models/yolo-detr/yolov8-detr.yaml

    使用RT-DETR中的TransformerDecoderHead改进yolov8.

  2. ultralytics/cfg/models/yolo-detr/yolov8-detr-DWR.yaml

    使用RT-DETR中的TransformerDecoderHead和DWRSeg中的Dilation-wise Residual(DWR)模块改进yolov8.

  3. ultralytics/cfg/models/yolo-detr/yolov8-detr-fasternet.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023改进yolov8.(支持替换其他主干,请看百度云视频-替换主干示例教程)

  4. ultralytics/cfg/models/yolo-detr/yolov8-detr-AIFI-LPE.yaml

    使用RT-DETR中的TransformerDecoderHead和LearnedPositionalEncoding改进yolov8.(详细介绍请看百度云视频-20231119更新说明)

  5. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DCNV2.yaml

    使用RT-DETR中的TransformerDecoderHead和可变形卷积DCNV2改进yolov8.

  6. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DCNV3.yaml

    使用RT-DETR中的TransformerDecoderHead和可变形卷积DCNV3 CVPR2023改进yolov8.(安装教程请看百度云视频-20231119更新说明)

  7. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DCNV2-Dynamic.yaml

    使用RT-DETR中的TransformerDecoderHead和自研可变形卷积DCNV2-Dynamic改进yolov8.(详细介绍请看百度云视频-MPCA与DCNV2_Dynamic的说明)

  8. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Ortho.yaml

    使用RT-DETR中的TransformerDecoderHead和OrthoNets中的正交通道注意力改进yolov8.(详细介绍请看百度云视频-20231119更新说明)

  9. ultralytics/cfg/models/yolo-detr/yolov8-detr-attention.yaml

    添加注意力到基于RTDETR-Head中的yolov8中.(手把手教程请看百度云视频-手把手添加注意力教程)

  10. ultralytics/cfg/models/yolo-detr/yolov8-detr-p2.yaml

    添加小目标检测头P2到TransformerDecoderHead中.

  11. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DySnake.yaml

    DySnakeConv与C2f融合.

  12. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Faster.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中的Faster-Block改进yolov8.

  13. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Faster-Rep.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与RepVGG CVPR2021中的RepConv二次创新后的Faster-Block-Rep改进yolov8.

  14. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Faster-EMA.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与EMA ICASSP2023二次创新后的Faster-Block-EMA的Faster-Block-EMA改进yolov8.

  15. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Faster-Rep-EMA.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与RepVGG CVPR2021中的RepConv、EMA ICASSP2023二次创新后的Faster-Block改进yolov8.

  16. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-AKConv.yaml

    使用RT-DETR中的TransformerDecoderHead和AKConv 2023改进yolov8.

  17. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFAConv 2023改进yolov8.

  18. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFCAConv 2023改进yolov8.

  19. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFCBAMConv 2023改进yolov8.

  20. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-Conv3XC.yaml

    使用RT-DETR中的TransformerDecoderHead和Swift Parameter-free Attention Network中的Conv3XC改进yolov8.

  21. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-SPAB.yaml

    使用RT-DETR中的TransformerDecoderHead和Swift Parameter-free Attention Network中的SPAB改进yolov8.

  22. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DRB.yaml

    使用RT-DETR中的TransformerDecoderHead和UniRepLKNet中的DilatedReparamBlock改进yolov8.

  23. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-UniRepLKNetBlock.yaml

    使用RT-DETR中的TransformerDecoderHead和UniRepLKNet中的UniRepLKNetBlock改进yolov8.

  24. ultralytics/cfg/models/yolo-detr/yolov8-detr-DWR-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对DWRSeg中的Dilation-wise Residual(DWR)进行二次创新改进yolov8.

  25. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DBB.yaml

    使用RT-DETR中的TransformerDecoderHead和DiverseBranchBlock CVPR2021改进yolov8.

  26. ultralytics/cfg/models/yolo-detr/yolov8-detr-CSP-EDLAN.yaml

    使用RT-DETR中的TransformerDecoderHead和DualConv打造CSP Efficient Dual Layer Aggregation Networks改进yolov8.

  27. ultralytics/cfg/models/yolo-detr/yolov8-detr-ASF.yaml

    使用RT-DETR中的TransformerDecoderHead和ASF-YOLO中的Attentional Scale Sequence Fusion改进yolov8.

  28. ultralytics/cfg/models/yolo-detr/yolov8-detr-ASF-P2.yaml

    在ultralytics/cfg/models/yolo-detr/yolov8-detr-ASF.yaml的基础上进行二次创新,引入P2检测层并对网络结构进行优化.

  29. ultralytics/cfg/models/yolo-detr/yolov8-detr-slimneck.yaml

    使用RT-DETR中的TransformerDecoderHead和SlimNeck中VoVGSCSP\VoVGSCSPC和GSConv改进yolov8的neck.

  30. ultralytics/cfg/models/yolo-detr/yolov8-detr-slimneck-asf.yaml

    在ultralytics/cfg/models/yolo-detr/yolov8-detr-slimneck.yaml使用ASF-YOLO中的Attentional Scale Sequence Fusion进行二次创新.

  31. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-AggregatedAtt.yaml

    使用RT-DETR中的TransformerDecoderHead和TransNeXt中的聚合感知注意力改进C2f.(百度云视频-20240106更新说明)

  32. ultralytics/cfg/models/yolo-detr/yolov8-detr-SDI.yaml

    使用RT-DETR中的TransformerDecoderHead和U-NetV2中的 Semantics and Detail Infusion Module对yolov8中的feature fusion进行改进.

  33. ultralytics/cfg/models/yolo-detr/yolov8-detr-goldyolo.yaml

    利用RT-DETR中的TransformerDecoderHead和华为2023最新GOLD-YOLO中的Gatherand-Distribute进行改进特征融合模块.

  34. ultralytics/cfg/models/yolo-detr/yolov8-detr-goldyolo-asf.yaml

    利用RT-DETR中的TransformerDecoderHead和华为2023最新GOLD-YOLO中的Gatherand-Distribute和ASF-YOLO中的Attentional Scale Sequence Fusion进行改进特征融合模块.

  35. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-DCNV4.yaml

    使用DCNV4改进C2f.

  36. ultralytics/cfg/models/yolo-detr/yolov8-detr-HSFPN.yaml

    利用RT-DETR中的TransformerDecoderHead和使用MFDS-DETR中的HS-FPN改进YOLOV8中的PAN.

  37. ultralytics/cfg/models/yolo-detr/yolov8-detr-HSPAN.yaml

    利用RT-DETR中的TransformerDecoderHead和对MFDS-DETR中的HS-FPN进行二次创新后得到HSPAN改进YOLOV8中的PAN.

  38. ultralytics/cfg/models/yolo-detr/yolov8-detr-Dysample.yaml

    使用ICCV2023 DySample改进yolov8-detr neck中的上采样.

  39. ultralytics/cfg/models/yolo-detr/yolov8-detr-CARAFE.yaml

    使用ICCV2019 CARAFE改进yolov8-detr neck中的上采样.

  40. ultralytics/cfg/models/yolo-detr/yolov8-detr-HWD.yaml

    使用Haar wavelet downsampling改进yolov8-detr neck的下采样.

  41. ultralytics/cfg/models/yolo-detr/yolov8-detr-ASF-Dynamic.yaml

    使用ICCV2023 DySample改进ASF-YOLO中的Attentional Scale Sequence Fusion的上采样模块得到Dynamic Sample Attentional Scale Sequence Fusion改进yolov8-detr中的neck.

  42. ultralytics/cfg/models/yolo-detr/yolov8-detr-C2f-SWC.yaml

    使用shift-wise conv改进yolov8-detr中的C2f.

  43. ultralytics/cfg/models/yolo-detr/yolov8-detr-iRMB-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对EMO ICCV2023中的iRMB进行二次创新来改进yolov8-detr中的C2f.

  44. ultralytics/cfg/models/yolo-detr/yolov8-detr-iRMB-SWC.yaml

    使用shift-wise conv对EMO ICCV2023中的iRMB进行二次创新来改进yolov8-detr中的C2f.

以Yolov5为基准模型的改进方案

  1. ultralytics/cfg/models/yolo-detr/yolov5-detr.yaml

    使用RT-DETR中的TransformerDecoderHead改进yolov5.

  2. ultralytics/cfg/models/yolo-detr/yolov5-detr-DWR.yaml

    使用RT-DETR中的TransformerDecoderHead和DWRSeg中的Dilation-wise Residual(DWR)模块改进yolov5.

  3. ultralytics/cfg/models/yolo-detr/yolov5-detr-fasternet.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023改进yolov5.(支持替换其他主干,请看百度云视频-替换主干示例教程)

  4. ultralytics/cfg/models/yolo-detr/yolov5-detr-AIFI-LPE.yaml

    使用RT-DETR中的TransformerDecoderHead和LearnedPositionalEncoding改进yolov5.(详细介绍请看百度云视频-20231119更新说明)

  5. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DCNV2.yaml

    使用RT-DETR中的TransformerDecoderHead和可变形卷积DCNV2改进yolov5.

  6. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DCNV3.yaml

    使用RT-DETR中的TransformerDecoderHead和可变形卷积DCNV3 CVPR2023改进yolov5.(安装教程请看百度云视频-20231119更新说明)

  7. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DCNV2-Dynamic.yaml

    使用RT-DETR中的TransformerDecoderHead和自研可变形卷积DCNV2-Dynamic改进yolov5.(详细介绍请看百度云视频-MPCA与DCNV2_Dynamic的说明)

  8. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Ortho.yaml(详细介绍请看百度云视频-20231119更新说明)

    使用RT-DETR中的TransformerDecoderHead和OrthoNets中的正交通道注意力改进yolov5.

  9. ultralytics/cfg/models/yolo-detr/yolov5-detr-attention.yaml

    添加注意力到基于RTDETR-Head中的yolov5中.(手把手教程请看百度云视频-手把手添加注意力教程)

  10. ultralytics/cfg/models/yolo-detr/yolov5-detr-p2.yaml

    添加小目标检测头P2到TransformerDecoderHead中.

  11. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DySnake.yaml

    DySnakeConv与C3融合.

  12. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Faster.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中的Faster-Block改进yolov5.

  13. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Faster-Rep.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与RepVGG CVPR2021中的RepConv二次创新后的Faster-Block-Rep改进yolov5.

  14. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Faster-EMA.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与EMA ICASSP2023二次创新后的Faster-Block-EMA的Faster-Block-EMA改进yolov5.

  15. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Faster-Rep-EMA.yaml

    使用RT-DETR中的TransformerDecoderHead和FasterNet CVPR2023中与RepVGG CVPR2021中的RepConv、EMA ICASSP2023二次创新后的Faster-Block改进yolov5.

  16. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-AKConv.yaml

    使用RT-DETR中的TransformerDecoderHead和AKConv 2023改进yolov5.

  17. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFAConv 2023改进yolov5.

  18. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFCAConv 2023改进yolov5.

  19. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-RFAConv.yaml

    使用RT-DETR中的TransformerDecoderHead和RFCBAMConv 2023改进yolov5.

  20. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-Conv3XC.yaml

    使用RT-DETR中的TransformerDecoderHead和Swift Parameter-free Attention Network中的Conv3XC改进yolov5.

  21. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-SPAB.yaml

    使用RT-DETR中的TransformerDecoderHead和Swift Parameter-free Attention Network中的SPAB改进yolov5.

  22. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DRB.yaml

    使用RT-DETR中的TransformerDecoderHead和UniRepLKNet中的DilatedReparamBlock改进改进yolov5.

  23. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-UniRepLKNetBlock.yaml

    使用RT-DETR中的TransformerDecoderHead和UniRepLKNet中的UniRepLKNetBlock改进改进yolov5.

  24. ultralytics/cfg/models/yolo-detr/yolov5-detr-DWR-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对DWRSeg中的Dilation-wise Residual(DWR)进行二次创新改进yolov5.

  25. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DBB.yaml

    使用RT-DETR中的TransformerDecoderHead和DiverseBranchBlock CVPR2021改进yolov5.

  26. ultralytics/cfg/models/yolo-detr/yolov5-detr-CSP-EDLAN.yaml

    使用RT-DETR中的TransformerDecoderHead和DualConv打造CSP Efficient Dual Layer Aggregation Networks改进yolov5.

  27. ultralytics/cfg/models/yolo-detr/yolov5-detr-ASF.yaml

    使用RT-DETR中的TransformerDecoderHead和ASF-YOLO中的Attentional Scale Sequence Fusion改进yolov5.

  28. ultralytics/cfg/models/yolo-detr/yolov5-detr-ASF-P2.yaml

    在ultralytics/cfg/models/yolo-detr/yolov5-detr-ASF.yaml的基础上进行二次创新,引入P2检测层并对网络结构进行优化.

  29. ultralytics/cfg/models/yolo-detr/yolov5-detr-slimneck.yaml

    使用RT-DETR中的TransformerDecoderHead和SlimNeck中VoVGSCSP\VoVGSCSPC和GSConv改进yolov5的neck.

  30. ultralytics/cfg/models/yolo-detr/yolov5-detr-slimneck-asf.yaml

    在ultralytics/cfg/models/yolo-detr/yolov5-detr-slimneck.yaml使用ASF-YOLO中的Attentional Scale Sequence Fusion进行二次创新.

  31. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-AggregatedAtt.yaml

    使用RT-DETR中的TransformerDecoderHead和TransNeXt中的聚合感知注意力改进C3.(百度云视频-20240106更新说明)

  32. ultralytics/cfg/models/yolo-detr/yolov5-detr-SDI.yaml

    使用RT-DETR中的TransformerDecoderHead和U-NetV2中的 Semantics and Detail Infusion Module对yolov5中的feature fusion进行改进.

  33. ultralytics/cfg/models/yolo-detr/yolov5-detr-goldyolo.yaml

    利用RT-DETR中的TransformerDecoderHead和华为2023最新GOLD-YOLO中的Gatherand-Distribute进行改进特征融合模块.

  34. ultralytics/cfg/models/yolo-detr/yolov5-detr-goldyolo-asf.yaml

    利用RT-DETR中的TransformerDecoderHead和华为2023最新GOLD-YOLO中的Gatherand-Distribute和ASF-YOLO中的Attentional Scale Sequence Fusion进行改进特征融合模块.

  35. ultralytics/cfg/models/yolo-detr/yolov5-detr-C3-DCNV4.yaml

    使用DCNV4改进C3.

  36. ultralytics/cfg/models/yolo-detr/yolov5-detr-HSFPN.yaml

    利用RT-DETR中的TransformerDecoderHead和使用MFDS-DETR中的HS-FPN改进YOLOV5中的PAN.

  37. ultralytics/cfg/models/yolo-detr/yolov5-detr-HSPAN.yaml

    利用RT-DETR中的TransformerDecoderHead和对MFDS-DETR中的HS-FPN进行二次创新后得到HSPAN改进YOLOV5中的PAN.

  38. ultralytics/cfg/models/yolo-detr/yolov8-detr-Dysample.yaml

    使用ICCV2023 DySample改进yolov8-detr neck中的上采样.

  39. ultralytics/cfg/models/yolo-detr/yolov8-detr-CARAFE.yaml

    使用ICCV2019 CARAFE改进yolov8-detr neck中的上采样.

  40. ultralytics/cfg/models/yolo-detr/yolov8-detr-HWD.yaml

    使用Haar wavelet downsampling改进yolov8-detr neck的下采样.

  41. ultralytics/cfg/models/yolo-detr/yolov5-detr-ASF-Dynamic.yaml

    使用ICCV2023 DySample改进ASF-YOLO中的Attentional Scale Sequence Fusion的上采样模块得到Dynamic Sample Attentional Scale Sequence Fusion改进yolov5-detr中的neck.

  42. ultralytics/cfg/models/yolo-detr/yolov5-detr-SWC.yaml

    使用shift-wise conv改进yolov5-detr中的C3.

  43. ultralytics/cfg/models/yolo-detr/yolov5-detr-iRMB-DRB.yaml

    使用UniRepLKNet中的DilatedReparamBlock对EMO ICCV2023中的iRMB进行二次创新来改进yolov5-detr中的C2f.

  44. ultralytics/cfg/models/yolo-detr/yolov5-detr-iRMB-SWC.yaml

    使用shift-wise conv对EMO ICCV2023中的iRMB进行二次创新来改进yolov5-detr中的C2f.

更新公告

  • 20231105-rtdetr-v1.0

    1. 初版项目发布.
  • 20231109-rtdetr-v1.1

    1. 修复断点训练不能正常使用的bug.
    2. 优化get_FPS.py中的模型导入方法.
    3. 增加以yolov5和yolov8为基准模型更换为RTDETR的Head,后续也会提供yolov5-detr,yolov8-detr相关的改进.
    4. 新增百度云视频-20231109更新说明视频和替换主干说明视频.
    5. 新增GhostHGNetV2,RepHGNetV2,详细请看使用教程中的RT-DETR改进方案.
    6. 新增使用DWRSeg中的Dilation-wise Residual(DWR)模块,加强从网络高层的可扩展感受野中提取特征,详细请看使用教程中的RT-DETR改进方案.
  • 20231119-rtdetr-v1.2

    1. 增加DCNV2,DCNV3,DCNV2-Dynamic,并以RTDETR-R18,RTDETR-R50,YOLOV5-Detr,YOLOV8-Detr多个基准模型进行改进,详细请看使用教程中的RT-DETR改进方案.
    2. 使用CVPR2022-OrthoNets中的正交通道注意力改进resnet18-backbone中的BasicBlock,resnet50-backbone中的BottleNeck,yolov8-C2f,yolov5-C3,详细请看使用教程中的RT-DETR改进方案.
    3. 使用LearnedPositionalEncoding改进AIFI中的位置编码信息生成,详细请看使用教程中的RT-DETR改进方案.
    4. 增加EMO模型中的iRMB模块,并使用(EfficientViT-CVPR2023)中的CascadedAttention对其二次创新得到iRMB_Cascaded,详细请看使用教程中的RT-DETR改进方案.
    5. 百度云视频增加1119更新说明和手把手添加注意力机制视频教学.
    6. 更新使用教程.
  • 20231126-rtdetr-v1.3

    1. 支持IoU,GIoU,DIoU,CIoU,EIoU,SIoU.
    2. 支持MPDIoU,Inner-IoU,Inner-MPDIoU.
    3. 支持Normalized Gaussian Wasserstein Distance.
    4. 支持小目标检测层P2.
    5. 支持DySnakeConv.
    6. 新增Pconv,PConv-Rep(二次创新)优化rtdetr-r18与rtdetr-r50.
    7. 新增Faster-Block,Faster-Block-Rep(二次创新),Faster-Block-EMA(二次创新),Faster-Block-Rep-EMA(二次创新)优化rtdetr-r18、rtdetr-r50、yolov5-detr、yolov8-retr.
    8. 更新使用教程.
    9. 百度云视频增加1126更新说明.
  • 20231202-rtdetr-v1.4

    1. 支持AKConv(具有任意采样形状和任意数目参数的卷积核).
    2. 支持RFAConv,RFCAConv,RFCBAMConv(感受野注意力卷积).
    3. 支持UniRepLKNet(大核CNNRepLK正统续作).
    4. 使用CVPR2022 DAttention改进AIFI.
    5. 更新使用教程.
    6. 百度云视频增加1202更新说明.
    7. 解决训练过程中由于指标出现的nan问题导致best.pt没办法正常保存.
  • 20231210-rtdetr-v1.5

    1. 支持来自Swift Parameter-free Attention Network中的重参数化Conv3XC模块.
    2. 支持UniRepLKNet中的DilatedReparamBlock.
    3. 支持UniRepLKNet中的DilatedReparamBlock对DWRSeg中的Dilation-wise Residual(DWR)模块进行二次创新的DWR_DRB.
    4. 使用ICCV2023 FLatten Transformer中的FocusedLinearAttention改进AIFI.
    5. 更新使用教程.
    6. 百度云视频增加1210更新说明.
  • 20231214-rtdetr-v1.6

    1. 支持DiverseBranchBlock.
    2. 利用DualConv打造CSP Efficient Dual Layer Aggregation Networks(仅支持yolov5-detr和yolov8-detr).
    3. 使用Swift Parameter-free Attention Network中的重参数化Conv3XC和DiverseBranchBlock改进RepC3.
    4. 支持最新的ASF-YOLO中的Attentional Scale Sequence Fusion.
    5. 更新使用教程.
    6. 百度云视频增加1214更新说明.
  • 20231223-rtdetr-v1.7

    1. 增加rtdetr-r18-asf-p2.yaml,使用ASF-YOLO中的Attentional Scale Sequence Fusion与Small Object Detection Head进行二次创新.
    2. 新增rtdetr-slimneck.yaml和rtdetr-slimneck-ASF.yaml.
    3. 新增yolov8-detr-slimneck.yaml,yolov8-detr-slimneck-asf.yaml.
    4. 新增yolov5-detr-slimneck.yaml,yolov5-detr-slimneck-asf.yaml.
    5. 修正热力图计算中预处理.
    6. 更新使用教程.
    7. 百度云视频增加1223更新说明.
  • 20240106-rtdetr-v1.8

    1. 新增Shape-IoU,Inner-Shape-IoU.
    2. 新增支持TransNeXt主干和TransNeXt中的聚焦感知注意力机制.
    3. 新增U-NetV2中的Semantics and Detail Infusion Module对RTDETR的CCFM进行创新.
    4. ASF系列支持attention_add.
    5. 更新使用教程.
    6. 百度云视频增加20240106更新说明.
  • 20240113-rtdetr-v1.9

    1. 支持Wise-IoU(v1,v2,v3)系列(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU).
    2. 支持Inner-Wise-IoU(v1,v2,v3)系列(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU).
    3. 支持SlideLoss,EMASlideLoss(利用Exponential Moving Average优化mean iou,可当自研创新模块).
    4. 使用华为2023最新GOLD-YOLO中的Gatherand-Distribute进行改进特征融合模块.
    5. 使用ASF-YOLO中Attentional Scale Sequence Fusion与GOLD-YOLO中的Gatherand-Distribute进行二次创新结合.
    6. 修正rtdetr-r34中检测头参数错误的问题,增加rtdetr-r34,rtdetr-r50-m的预训练权重.
    7. 更新使用教程.
    8. 百度云视频增加20240113更新说明.
  • 20240120-rtdetr-v1.10

    1. 新增DCNV4.
    2. 使用LITv2中具有提取高低频信息的高效注意力对AIFI进行二次改进.
    3. 使用MFDS-DETR中的HS-FPN改进RTDETR中的CCFM和YOLOV5-DETR、YOLOV8-DETR中的Neck.
    4. 对MFDS-DETR中的HS-FPN进行二次创新后得到HSPAN改进RTDETR中的CCFM和YOLOV5-DETR、YOLOV8-DETR中的Neck.
    5. 修复没有使用wiou时候断点续寻的bug.
    6. 修复plot_result.py画结果图中乱码的问题.
    7. 更新使用教程.
    8. 百度云视频增加20240120更新说明.
  • 20240128-rtdetr-v1.11

    1. 增加CARAFE轻量化上采样算子.
    2. 增加DySample(ICCV2023)动态上采样算子.
    3. 增加Haar wavelet downsampling下采样算子.
    4. 增加Focaler-IoU,Focaler-GIoU,Focaler-DIoU,Focaler-CIoU,Focaler-EIoU,Focaler-SIoU,Focaler-Shape-IoU,Focaler-MPDIoU.
    5. 增加Focaler-Wise-IoU(v1,v2,v3)(IoU,WIoU,EIoU,GIoU,DIoU,CIoU,SIoU,MPDIoU,ShapeIoU).
    6. 使用DySample(ICCV2023)动态上采样算子对ASF-YOLO中的Attentional Scale Sequence Fusion进行二次创新.
    7. 更新使用教程.
    8. 百度云视频增加20240128更新说明.
  • 20240206-rtdetr-v1.12

    1. 新增Shift-ConvNets相关改进内容.(rtdetr-SWC.yaml,rtdetr-R50-SWC.yaml,yolov8-detr-C2f-SWC.yaml,yolov5-detr-C3-SWC.yaml)
    2. 使用UniRepLKNet中的DilatedReparamBlock对EMO中的iRMB进行二次创新.
    3. 使用Shift-ConvNets中的具有移位操作的卷积对EMO中的iRMB进行二次创新.
    4. 更新使用教程.
    5. 百度云视频增加20240206更新说明.

相关文章:

RTDETR改进系列指南

基于Ultralytics的RT-DETR改进项目.(89.9) 为了感谢各位对RTDETR项目的支持,本项目的赠品是yolov5-PAGCP通道剪枝算法.具体使用教程 自带的一些文件说明 train.py 训练模型的脚本main_profile.py 输出模型和模型每一层的参数,计算量的脚本(rtdetr-l和rtdetr-x因为thop库的问…...

类和结构体的区别

类(class)和结构体(struct)是面向对象编程(Object-Oriented Programming,OOP)中常见的两种数据类型,它们在不同的编程语言中有一些共同之处,但也存在一些区别。以下是它们…...

利用Excel模拟投币试验

文章目录 试验前对Excel要进行的设置试验步骤计算正面频率结果图试验前对Excel要进行的设置 进入Excel依次点击如下选项,最后将分析工具库勾选 #mermaid-svg-bIvrxZGI9buCMW6U {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#m…...

WebService接口测试

WebService的理解 WebService就是Web服务的意思,对应的应用层协议为SOAP(相当于HTTP协议),可理解为远程调用技术。 特点: 客户端发送的请求主体内容(请求报文)的格式为XML格式 接口返回的响…...

语音唤醒——

文章目录 配置主代码 参考文档:https://picovoice.ai/docs/quick-start/porcupine-python/ 配置 pip install pvporcupine主代码 ACCESS_KEY:需要将该参数填入即可 # # Copyright 2018-2023 Picovoice Inc. # # You may not use this file except in …...

typeScript 类型推论

什么是类型推论? 类型推论是 TypeScript 中的一个特性,它允许开发人员不必显式地指定变量的类型。相反,开发人员可以根据变量的使用情况让 TypeScript 编译器自动推断出类型。例如,如果开发人员将一个字符串赋值给一个变量&#…...

JavaScript 设计模式之代理模式

代理模式 其实这种模式在现在很多地方也都有使用到,如 Vue3 中的数据相应原理就是使用的 es6 中的 Proxy 代理及 Reflect 反射的方式来处理数据响应式 我们日常在使用数据请求时,也会用到一些代理的方式,比如在请求不同的域名,端…...

JavaScript 对象判断

如何判断一个对象是否是Set、Map、Array、Object 参考链接: https://blog.csdn.net/yunchong_zhao/article/details/115915624 let set new Set() let map new Map() let arr [] let obj {}console.log(Object.prototype.toString.call(obj)); // [object Obje…...

Android下SF合成流程重学习之onMessageInvalidate

Android下SF合成流程重学习之onMessageInvalidate 引言 虽然看了很多关于Android Graphics图形栈的文章和博客,但是都没有形成自己的知识点。每次学习了,仅仅是学习了而已,没有形成自己的知识体系,这次趁着有时间,这次…...

基于SpringBoot+WebSocket+Spring Task的前后端分离外卖项目-订单管理(十七)

订单管理 1. Spring Task1.1 介绍1.2 cron表达式1.3 入门案例1.3.1 Spring Task使用步骤1.3.2 代码开发1.3.3 功能测试 2.订单状态定时处理2.1 需求分析2.2 代码开发2.3 功能测试 3. WebSocket3.1 介绍3.2 入门案例3.2.1 案例分析3.2.2 代码开发3.2.3 功能测试 4. 来单提醒4.1 …...

【Java多线程进阶】JUC常见类以及CAS机制

1. Callable的用法 之前已经接触过了Runnable接口,即我们可以使用实现Runnable接口的方式创建一个线程,而Callable也是一个interface,我们也可以用Callable来创建一个线程。 Callable是一个带有泛型的interface实现Callable接口必须重写cal…...

Python算法100例-1.7 最佳存款方案

完整源代码项目地址,关注博主私信’源代码’后可获取 1.问题描述2.问题分析3.算法设计4.完整的程序 1.问题描述 假设银行一年整存零取的月息为0.63%。现在某人手中有一笔钱,他打算在今后5年中的每年年底取出1000元,到第5年时刚…...

ADO世界之FIRST

目录 一、ADO 简介 二、ADO 数据库连接 1.创建一个 DSN-less 数据库连接 2.创建一个 ODBC 数据库连接 3.到 MS Access 数据库的 ODBC 连接 4.ADO 连接对象(ADO Connection Object) 三、ADO Recordset(记录集) 1.创建一个 …...

【COMP337 LEC 5-6】

LEC 5 Perceptron &#xff1a; Binary Classification Algorithm 8 感应器是 单个神经元的模型 突触连接的强度取决于接受外部刺激的反应 X input W weights a x1*w1x2*w2....... > / < threshold Bias MaxIter is a hyperparameter 超参数 which has to be chosen…...

力扣72. 编辑距离(动态规划)

Problem: 72. 编辑距离 文章目录 题目描述思路复杂度Code 题目描述 思路 由于易得将字符串word1向word2转换和word2向word1转换是等效的&#xff0c;则我们假定统一为word1向word2转换&#xff01;&#xff01;&#xff01; 1.确定状态&#xff1a;我们假设现在有下标i&#x…...

linux tree命令找不到:如何使用Linux Tree命令查看文件系统结构

Linux tree命令是一个用于显示文件夹和文件的结构的工具&#xff0c;它可以帮助用户更好地理解文件系统的结构。如果你在linux系统上找不到tree命令&#xff0c;那么可能是因为你的系统中没有安装tree命令。 解决方案 Linux tree命令是一个用于显示文件夹和文件的结构的工具&…...

OJ_最大逆序差

题目 给定一个数组&#xff0c;编写一个算法找出这个数组中最大的逆序差。逆序差就是i<j时&#xff0c;a[j]-a[i]的值 c语言实现 #include <stdio.h> #include <limits.h> // 包含INT_MIN定义 int maxReverseDifference(int arr[], int size) { if (size…...

MyBatis-Plus 实体类里写正则让字段phone限制为手机格式

/* Copyright © 2021User:啾啾修车File:ToupiaoRecord.javaDate:2021/01/12 19:29:12 */ package com.jjsos.repair.toupiao.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomido…...

K8S之运用污点、容忍度设置Pod的调度约束

污点、容忍度 污点容忍度 taints 是键值数据&#xff0c;用在节点上&#xff0c;定义污点&#xff1b; tolerations 是键值数据&#xff0c;用在pod上&#xff0c;定义容忍度&#xff0c;能容忍哪些污点。 污点 污点是定义在k8s集群的节点上的键值属性数据&#xff0c;可以决…...

Sora爆火,普通人的10个赚钱机会

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。&#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精通…...

【C++】C++入门—初识构造函数 , 析构函数,拷贝构造函数,赋值运算符重载

C入门 六个默认成员函数1 构造函数语法特性 2 析构函数语法特性 3 拷贝构造函数特性 4 赋值运算符重载运算符重载赋值运算符重载特例&#xff1a;前置 与 后置前置&#xff1a;返回1之后的结果后置&#xff1a; Thanks♪(&#xff65;ω&#xff65;)&#xff89;谢谢阅读&…...

沁恒CH32V30X学习笔记04--外部中断

外部中断 CH32V2x 和 CH32V3x 系列内置可编程快速中断控制器(PFIC– Programmable Fast Interrupt Controller),最多支持 255 个中断向量。当前系统管理了 88 个外设中断通道和 8 个内核中断通道 PFIC 控制器 88个外设中断,每个中断请求都有独立的触发和屏蔽控制位,有专…...

基础IO[三]

close关闭之后文件内部没有数据&#xff0c; stdout和stderr 他们一起重定向&#xff0c;只会重定向号文件描述符&#xff0c;因为一号和二号描述符虽然都是sydout&#xff0c;但是并不一样&#xff0c;而是相当于一个显示器被打开了2次。 分别重定向到2个文件的写法和直接写道…...

Leetcode 392 判断子序列

题意理解&#xff1a; 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&#xff09;字符而不改变剩余字符相对位置形成的新字符串。&#xff08;例如&#xff0c;"ace"是"abcde&quo…...

基于微信小程序的校园跑腿系统的研究与实现,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

VTK Python PyQt 监听键盘 控制 Actor 移动 变色

KeyPressInteractorStyle 在vtk 中有时我们需要监听 键盘或鼠标做一些事&#xff1b; 1. 创建 Actor&#xff1b; Sphere vtk.vtkSphereSource() Sphere.SetRadius(10)mapper vtk.vtkPolyDataMapper() mapper.SetInputConnection(Sphere.GetOutputPort()) actor vtk.vtkAc…...

力扣 第 124 场双周赛 解题报告 | 珂学家 | 非常规区间合并

前言 整体评价 T4的dp解法没想到&#xff0c;走了一条"不归路", 这个区间合并解很特殊&#xff0c;它是带状态的&#xff0c;而且最终的正解也是基于WA的case&#xff0c;慢慢理清的。 真心不容易&#xff0c;太难了。 T1. 相同分数的最大操作数目 I 思路: 模拟 c…...

2024年华为OD机试真题-生成哈夫曼树-Java-OD统一考试(C卷)

题目描述: 给定长度为n的无序的数字数组,每个数字代表二叉树的叶子节点的权值,数字数组的值均大于等于1。请完成一个函数,根据输入的数字数组,生成哈夫曼树,并将哈夫曼树按照中序遍历输出。 为了保证输出的二叉树中序遍历结果统一,增加以下限制:二叉树节点中,左节点权…...

【实战】二、Jest难点进阶(二) —— 前端要学的测试课 从Jest入门到TDD BDD双实战(六)

文章目录 一、Jest 前端自动化测试框架基础入门二、Jest难点进阶2.mock 深入学习 学习内容来源&#xff1a;Jest入门到TDD/BDD双实战_前端要学的测试课 相对原教程&#xff0c;我在学习开始时&#xff08;2023.08&#xff09;采用的是当前最新版本&#xff1a; 项版本babel/co…...

(一)【Jmeter】JDK及Jmeter的安装部署及简单配置

JDK的安装和环境变量配置 对于Linux、Mac和Windows系统,JDK的安装和环境变量配置方法略有不同。以下是针对这三种系统的详细步骤: 对于Linux系统: 下载适合Linux系统的JDK安装包,可以选择32位或64位的版本。 将JDK的安装包放置在服务器下,创建一个新的文件夹来存储JDK,…...

HAL/LL/STD STM32 U8g2库 +I2C SSD1306/sh1106 WouoUI磁贴案例

HAL/LL/STD STM32 U8g2库 I2C SSD1306/sh1106 WouoUI磁贴案例 &#x1f4cd;基于STM32F103C8T6 LL库驱动版本&#xff1a;https://gitee.com/chcsx/platform-test/tree/master/MDK-ARM&#x1f3ac;视频演示&#xff1a; WouoUI移植磁贴案例&#xff0c;新增确认弹窗 &#x1f…...

手机如何改自己的ip地址

在现如今的数码时代&#xff0c;手机已经成为人们生活中不可或缺的一部分。然而&#xff0c;有时候我们可能需要改变手机的IP地址来实现一些特定的需求。本文将向大家介绍如何改变手机的IP地址&#xff0c;帮助大家更好地应对各种网络问题。 更改手机IP地址的原因&#xff1a;…...

ajax函数库axios基本使用

ajax函数库Axios基本使用 简介&#xff1a;Axios 对原生的Ajax进行了封装&#xff0c;简化书写&#xff0c;快速开发。 官网&#xff1a;https://www.axios-http.cn/ Axios使用步骤 引入Axios的js文件(参考官网)使用Axios发送请求,获取相应结果 <script src"https:…...

【nginx实践连载-4】彻底卸载Nginx(Ubuntu)

步骤1&#xff1a;停止Nginx服务 打开终端&#xff08;Terminal&#xff09;。停止Nginx服务&#xff1a;sudo systemctl stop nginx步骤2&#xff1a;卸载Nginx软件包 运行以下命令卸载Nginx软件包&#xff1a;sudo apt purge nginx nginx-common nginx-core步骤3&#xff1…...

究极小白如何自己搭建一个自动发卡网站-独角数卡

首页 | 十画IOSID​shihuaid.cn/​编辑 如果你也是跟我一样,什么都不懂,也想要搭建一个自己的自动发卡网站,可以参考一下我的步骤,不难,主要就是细心,一步步来一定成功!! 独角数卡: 举个例子:独角数卡就是一个店面,而且里面帮你装修好了,而你要做的就是把开店之…...

Java_方法(重载方法签名等详解)

在之前我们学习C语言时&#xff0c;当我们想要重复使用某段代码的功能时&#xff0c;我们会将这段代码定义为一个函数&#xff0c;而在java中我们把这段重复使用的代码叫做方法。 方法的定义 类体的内容分为变量的声明和方法的定义&#xff0c;方法的定义包括两部分&#xff1…...

VQ35 评论替换和去除(char_length()和replace函数的使用)

代码 select id ,replace(comment,&#xff0c;,) as comment from comment_detail where char_length(comment)>3知识点 要注意替换的是中文逗号 由于题目说的是汉字长度大于3&#xff0c;所以这里就要使用char_length()而不是length() char_length()&#xff1a;单位为字…...

【MySQL】学习多表查询和笛卡尔积

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-N8PeTKG6uLu4bJuM {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…...

RabbitMQ实现延迟消息的方式-死信队列、延迟队列和惰性队列

当一条消息因为一些原因无法被成功消费&#xff0c;那么这这条消息就叫做死信&#xff0c;如果包含死信的队列配置了dead-letter-exchange属性指定了一个交换机&#xff0c;队列中的死信都会投递到这个交换机内&#xff0c;这个交换机就叫死信交换机&#xff0c;死信交换机再绑…...

【运维测试】测试理论+工具总结笔记第1篇:测试理论的主要内容(已分享,附代码)

本系列文章md笔记&#xff08;已分享&#xff09;主要讨论测试理论测试工具相关知识。Python测试理论的主要内容&#xff0c;掌握软件测试的基本流程&#xff0c;知道软件测试的V和W模型的优缺点&#xff0c;掌握测试用例设计的要素&#xff0c;掌握等价类划分法、边界值法、因…...

【C语言】实现队列

目录 &#xff08;一&#xff09;队列 &#xff08;二&#xff09;头文件 &#xff08;三&#xff09; 功能实现 &#xff08;1&#xff09;初始化 &#xff08;2&#xff09; 销毁队列 &#xff08;3&#xff09; 入队 &#xff08;4&#xff09;出队 &#xff08;5&a…...

【友塔笔试面试复盘】八边形取反问题

问题&#xff1a;一个八边形每条边都是0&#xff0c;现在有取反操作&#xff0c;选择一条边取反会同时把当前边和2个邻边取反&#xff08;如果是0变为1&#xff0c;如果是1变为0&#xff09; 现在问你怎么取反能使得八条边都变为1. 当时陷入了暴力递归漩涡&#xff0c;给出一个…...

GB 18585-2023 壁纸中有害物质限量

壁纸/墙布因其色彩多样&#xff0c;图案丰富&#xff0c;施工方便&#xff0c;价格便宜等多种优势&#xff0c;广泛应用于室内装修材料&#xff0c;在国内&#xff0c;日本&#xff0c;欧美等地区非常普及。 GB 18585-2023壁纸中有害物质限量测试项目&#xff1a; 测试项目 测…...

全面的ASP.NET Core Blazor简介和快速入门

前言 因为咱们的MongoDB入门到实战教程Web端准备使用Blazor来作为前端展示UI&#xff0c;本篇文章主要是介绍Blazor是一个怎样的Web UI框架&#xff0c;其优势和特点在哪&#xff1f;并带你快速入门上手ASP.NET Core Blazor(当然这个前提是你要有一定的C#编程基础的情况&#x…...

HGAME 2024 WEEK2 Crypto WP

前言 我很菜&#xff0c;有没做出来的题目&#xff0c;带*号题为复现。 midRSA 题目&#xff1a; from Crypto.Util.number import * from secret import flagdef padding(flag):return flagb\xff*(64-len(flag))flagpadding(flag) mbytes_to_long(flag) pgetPrime(512) qg…...

Postman轻松签名,让SHA256withRSA保驾护航!

前言 在接口测试中&#xff0c;我们经常需要对请求进行签名&#xff0c;以保证数据的安全性。而SHA256withRSA是一种较为常见的签名算法&#xff0c;它可以使用私钥对数据进行签名&#xff0c;使用公钥进行验签。 但是&#xff0c;实现该算法签名可能会涉及到一些繁琐的操作&…...

C#面:简述装箱和拆箱

在C#中&#xff0c;装箱&#xff08;boxing&#xff09;和拆箱&#xff08;unboxing&#xff09;是用于在值类型和引用类型之间进行转换的过程。 装箱&#xff1a;&#xff08;Boxing&#xff09; 是将值类型转换为引用类型的过程。 将一个值类型赋值给一个对象类型时&#x…...

【Kubernetes in Action笔记】1.快速开始

在Kubernetes上运行一个程序 基础运行环境 当前的运行环境为使用虚拟机构建的单master集群。 [rootk8s-master ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-master Ready control-plane 109d v1.27.1 k8s-node1 Ready …...

踩坑实录(Fourth Day)

今天开工了&#xff0c;其实还沉浸在过年放假的喜悦中……今天在自己写 Vue3 的项目&#xff0c;虽说是跟着 B 站在敲&#xff0c;但是依旧是踩了一些个坑&#xff0c;就离谱……照着敲都能踩到坑&#xff0c;我也是醉了…… 此为第四篇&#xff08;2024 年 02 月 18 日&#x…...

【python】网络爬虫与信息提取--requests库

导学 当一个软件想获得数据&#xff0c;那么我们只有把网站当成api就可以 requests库:自动爬取HTML页面&#xff0c;自动网络请求提交 robots协议&#xff1a;网络爬虫排除标准&#xff08;网络爬虫的规则&#xff09; beautiful soup库&#xff1a;解析HTML页面 工具&…...