Recent Releases of yolov5-parts

yolov5-parts - v3.1.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version uses GhostNet as the backbone network, and adds CBAM(Coordinate attention) attention mechanism in v3.0.0.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> GhostNet, to make it lightweight🎉NEW
  • Add CBAM attention mechanisms🎉NEW
    • After three Concats near the Head, 17/21/25Layer.
  • Using VOC2007 dataset for training.

Specific Changes

  • Add "models/partsyolov5s-ghostnetcbam.yaml"🎉NEW
    • After three Concats near the Head, 17/21/25Layer in "models/partsyolov5s-ghostnetcbam.yaml".
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5s-ghostnetcbam🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

Notes

The modification of ECA and CA attention mechanisms is the same as CBAM.

- Python
Published by zhang-dut over 2 years ago

yolov5-parts - v3.0.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version uses GhostNet as the backbone network, and adds CA(Coordinate attention) attention mechanism in v2.0.0, placing it in 4 different positions.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> GhostNet, to make it lightweight🎉NEW
  • Add CA attention mechanisms and place them in 4 different positions🎉NEW
    • After three Concats near the Head, 17/21/25Layer.
    • After the first Concat, 13Layer.
    • Before SPPF, 9Layer.
    • Head last, 24Layer.
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/partsyolov5s-ghostnetca(or ca2, ca3, ca4).yaml"🎉NEW
    • After three Concats near the Head, 17/21/25Layer in "models/partsyolov5s-ghostnetca.yaml".
    • After the first Concat, 13Layer in "models/partsyolov5s-ghostnetca2.yaml".
    • Before SPPF, 9Layer in "models/partsyolov5s-ghostnetca3.yaml".
    • Head last, 24Layer in "models/partsyolov5s-ghostnetca4.yaml".
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5s-ghostnetca(or ca2, ca3, ca4)🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut over 2 years ago

yolov5-parts - v2.3.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5. This version adds SE attention mechanism in v2.0.0.

Important Updates

  • Add SE attention mechanism to this network.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common_se.py"🎉NEW
    • Add Class: SEAttention.
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding SEAttention(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5sse.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v2.2.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5. This version adds ECA attention mechanism in v2.0.0.

Important Updates

  • Add ECA attention mechanism to this network.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common_eca.py"🎉NEW
    • Add Class: ECAAttention.
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding ECAAttention(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5seca.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

Notes

There are errors in "models/partsyolov5seca.yaml", which will be modified in subsequent versions.⚠️ERROR - layer 17: CoordAttention -> ECAAttention - layer 21: CoordAttention -> ECAAttention - layer 25: CoordAttention -> ECAAttention

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v2.1.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5. This version adds CBAM attention mechanism in v2.0.0.

Important Updates

  • Add CBAM attention mechanism to this network.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common_cbam.py"🎉NEW
    • Add Class: ChannelAttention, SpatialAttention, CBAMBlock.
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding CBAMBlock(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5scbam.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v2.0.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds CA(Coordinate attention) attention mechanism in v1.0.0, placing it in 4 different positions.

Important Updates

  • Add CA attention mechanisms and place them in 4 different positions🎉NEW
    • After three Concats near the Head, 17/21/25Layer.
    • After the first Concat, 13Layer.
    • Before SPPF, 9Layer.
    • Head last, 24Layer.
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/partsyolov5sca(or ca2, ca3, ca4).yaml"🎉NEW
    • After three Concats near the Head, 17/21/25Layer in "models/partsyolov5sca.yaml".
    • After the first Concat, 13Layer in "models/partsyolov5sca2.yaml".
    • Before SPPF, 9Layer in "models/partsyolov5sca3.yaml".
    • Head last, 24Layer in "models/partsyolov5sca4.yaml".
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5sca(or ca2, ca3, ca4)🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.3.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the GhostNet on top of v1.0.0. For GhostNet network structure, please refer to GhostNet: More Features from Cheap Operations.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> GhostNet, to make it lightweight.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Due to the inclusion of GhostConv and C3Ghost modules required for GhostNet in YOLOv5/v7.0, there is no need to modify "models/common.py".🎉NEW
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/parts_yolov5s-ghost.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.2.0- YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the ShuffleNetV2 on top of v1.0.0.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> ShuffleNetV2, to make it lightweight.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common.py"🎉NEW
    • Add modules required for ShuffleNetV2.
    • Add Class: ConvBNReLuMaxpool, ShuffleBlock.
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding ConvBNReLuMaxpool, ShuffleBlock(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5sshufflenetv2.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.1.2 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the MobileNetV3 on top of v1.1.1.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> MobileNetV3-Large, to make it lightweight.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common.py"
    • Add modules required for MobileNetV3-Large.
    • Add Class: h_sigmoid, h_swish, SELayer, convbnhswish, InvertedResidual3(Different from InvertedResidual in MobileNetV2, so renamed InvertedResidual3).
  • Modify "models/yolo.py"
    • Find parse_model function(line 303), adding h_sigmoid, h_swish, SELayer, convbnhswish, InvertedResidual3(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5smobilenetv3l.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.1.1- YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the MobileNetV3 on top of v1.0.0.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> MobileNetV3-Small, to make it lightweight.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common.py"🎉NEW
    • Add modules required for MobileNetV3-Small.
    • Add Class: h_sigmoid, h_swish, SELayer, convbnhswish, InvertedResidual3(Different from InvertedResidual in MobileNetV2, so renamed InvertedResidual3).
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding h_sigmoid, h_swish, SELayer, convbnhswish, InvertedResidual3(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5smobilenetv3s.yaml🎉NEW
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.1.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the MobileNetV2 on top of v1.0.0.

Important Updates

  • Replacing the backbone network: CSPDarknet53 -> MobileNetV2, to make it lightweight.🎉NEW
  • Using VOC2007 dataset for training.

Specific Changes

  • Modify "models/common.py"🎉NEW
    • Add modules required for MobileNetV2.
    • Add Class: ConvBNReLU6, InvertedResidual.
  • Modify "models/yolo.py"🎉NEW
    • Find parse_model function(line 303), adding ConvBNReLU6, InvertedResidual(line 322).
  • Modify "train.py"
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/partsyolov5smobilenetv2.yaml🎉NEW

    - line 443: dataset.yaml path -> data/parts_voc2007.yaml

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v1.0.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5

Important Updates

  • Using VOC2007 dataset for training.🎉NEW

Specific Changes

  • Add "data/mypartsvoc.yaml".🎉NEW
    • Modifying the addresses of training and validation sets.
    • Change the number and name of detection classes.
  • Add "models/parts_yolov5s.yaml".
    • Modify number of classes.
  • Modify "train.py".🎉NEW
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/mypartsyolov5s.yaml
    • line 443: dataset.yaml path -> data/parts_voc2007.yaml

Notes

Place the trained weight file in Assets, including "best.pt".

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v0.2.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version adds the SE attention mechanism on top of v0.1.1.

Notes | 备注

Place the trained weight file in Assets, including "best.pt" and "last.pt".

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v0.1.1 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5 This version only made simple parameter modifications on v0.1.0 to expect the best performance of ours device.

v0.1.1

  • Modify "utils/dataloaders.py".
    • line 148: batch-size's default=16 -> default=32
  • Modify "train.py".
    • line 446: numworkers=0 -> numworkers=nw

v0.1.0

Important Updates | 重要更新

  • Using T-LESS dataset for training.

Specific Changes | 具体变更

  • Add "data/mypartsvoc.yaml".
    • Modifying the addresses of training and validation sets.
    • Change the number and name of detection classes.
  • Add "models/mypartsyolov5s.yaml".
    • Modify number of classes.
  • Modify "train.py".
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/mypartsyolov5s.yaml
    • line 444: dataset.yaml path -> data/mypartsvoc.yaml

Notes | 备注

Place the trained weight file in Assets, including "best.pt" and "last.pt".

- Python
Published by zhang-dut almost 3 years ago

yolov5-parts - v0.1.0 - YOLOv5 in PyTorch

The main body of this project comes from v7.0 - YOLOv5 SOTA Realtime Instance Segmentation of ultralytics/yolov5

Important Updates | 重要更新

  • Using T-LESS dataset for training.

Specific Changes | 具体变更

  • Add "data/mypartsvoc.yaml".
    • Modifying the addresses of training and validation sets.
    • Change the number and name of detection classes.
  • Add "models/mypartsyolov5s.yaml".
    • Modify number of classes.
  • Modify "train.py".
    • line 441: initial weights path -> weights/yolov5s.pt
    • line 442: model.yaml path -> models/mypartsyolov5s.yaml
    • line 444: dataset.yaml path -> data/mypartsvoc.yaml

Notes | 备注

Place the trained weight file in Assets, including "best.pt" and "last.pt".

- Python
Published by zhang-dut almost 3 years ago