/CvPytorch

CvPytorch is an open source COMPUTER VISION toolbox based on PyTorch.

Primary LanguagePythonMIT LicenseMIT

CvPytorch

CvPytorch is an open source COMPUTER VISION toolbox based on PyTorch.

What's New!!!

  • [2022.07.17] Release FastestDet models on COCO (11.42mAP).
  • [2022.07.10] Release YOLO6 models with yolov6-s on COCO (32.14mAP).
  • [2022.06.11] Release YOLOX models with yolox-s on COCO (38.36mAP).
  • [2022.05.31] Release YOLOv5 models with yolov5s on COCO (35.89mAP).
  • [2022.05.19] Release EfficientNet models with efficientnet_b0, efficientnet_b1, efficientnet_b2, efficientnet_b3, efficientnet_b4, efficientnet_b5, efficientnet_b6 and efficientnet_b7 on Mini-ImageNet (85.08, 85.60, 85.74, 86.06, 88.69, 85.62, 85.76 and 85.54 mAcc).
  • [2022.05.16] Release ConvNeXt models with convnext_tiny, convnext_small, convnext_base and convnext_large on Mini-ImageNet (83.45, 83.97, 85.32 and 85.90 mAcc).
  • [2022.05.14] Release VGG models with vgg11, vgg13, vgg16 and vgg19 on Mini-ImageNet (58.52, 62.32, 56.45 and 50.36 mIoU).
  • [2022.05.12] Release shufflenetv2_x0.5 and shufflenetv2_x1.0 models on Mini-ImageNet (63.85 and 69.80mAcc).
  • [2022.05.11] Release mobilenet_v3_large models on Mini-ImageNet (83.26mAcc).
  • [2022.05.11] Release mobilenet_v3_small models on Mini-ImageNet (80.08mAcc).
  • [2022.04.27] Release Resnet50 models on Mini-ImageNet (69.02mAcc).
  • [2022.04.27] Release MobileNetV2 models on Mini-ImageNet (77.47mAcc).
  • [2022.04.26] Release NanoDet-Plus-320 models with shufflenetv2 backbone on COCO (25.89mAP).
  • [2022.04.25] Release TopFormer models with topformer_tiny on Cityscapes (71.00mIoU).
  • [2022.04.24] Release TopFormer models with topformer_small on Cityscapes (72.86mIoU).
  • [2022.04.22] Release TopFormer models with topformer_base on Cityscapes (74.60mIoU).
  • [2022.04.20] Release SGCPNet models with mobilenet v3 on Cityscapes (56.47mIoU).
  • [2022.03.03] Release RegSeg models with exp48_decoder26 on Cityscapes (73.15mIoU).
  • [2022.01.06] Release FCOS models with resnet50 backbone for 800x800 image on COCO (36.88mAP).
  • [2021.07.23] Release NanoDet models with RepVGG backbone on COCO (27.16mAP).
  • [2021.07.23] Release NanoDet-g models with cspnet backbone on COCO (23.54mAP).
  • [2021.07.23] Release NanoDet models with efficientnet_lite backbone on COCO (25.65mAP).
  • [2021.07.22] Release NanoDet-t models with Transformer neck on COCO (21.97mAP).
  • [2021.07.20] Release NanoDet-416 models with shufflenetv2 backbone on COCO (23.30mAP).
  • [2021.07.07] Release STDC models with stdc2 backbone on Cityscapes (73.36mIoU).
  • [2021.07.06] Release STDC models with stdc1 backbone on Cityscapes (72.89mIoU).
  • [2021.07.05] Release NanoDet-320 models with shufflenetv2 backbone on COCO (20.54mAP).
  • [2021.07.01] Release DeepLab v3+ models with resnet50 backbone on Cityscapes (72.96mIoU).
  • [2021.06.28] Release Unet models on Cityscapes (56.90mIoU).
  • [2021.06.20] Release PSPNet models with resnet50 backbone on Cityscapes (72.59mIoU).
  • [2021.06.15] Release DeepLab v3 models with mobilenet_v2, resnet50 and resnet101 backbone on Cityscapes (68.06, 71.53 and 72.83mIoU).

Dependencies

  • Python 3.8
  • PyTorch 1.6.0
  • Torchvision 0.7.0
  • tensorboardX 2.1

Models

Image Classification

  • (VGG) VGG: Very Deep Convolutional Networks for Large-Scale Image Recognition

  • (ResNet) ResNet: Deep Residual Learning for Image Recognition

  • (DenseNet) DenseNet: Densely Connected Convolutional Networks

  • (ShuffleNet) ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices

  • (ShuffleNet V2) ShuffleNet V2: Practical Guidelines for Ecient CNN Architecture Design

Object Detection

  • (SSD) SSD: Single Shot MultiBox Detector

  • (Faster R-CNN) Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

  • (YOLOv3) YOLOv3: An Incremental Improvement

  • (YOLOv5)

  • (FPN) FPN: Feature Pyramid Networks for Object Detection

  • (FCOS) FCOS: Fully Convolutional One-Stage Object Detection

Semantic Segmentation

  • (FCN) Fully Convolutional Networks for Semantic Segmentation

  • (Deeplab V3+) Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation

  • (PSPNet) Pyramid Scene Parsing Network

  • (ENet) A Deep Neural Network Architecture for Real-Time Semantic Segmentation

  • (U-Net) Convolutional Networks for Biomedical Image Segmentation

  • (SegNet) A Deep ConvolutionalEncoder-Decoder Architecture for ImageSegmentation

Instance Segmentation

  • (Mask-RCNN) Mask-RCNN

Datasets

Install

Training

For this example, we will use COCO dataset with yolov5l.yaml . Feel free to use your own custom dataset and configurations.

Single GPU:

$ python trainer.py --setting 'conf/hymenoptera.yml'

Multiple GPUs:

$ python -m torch.distributed.launch --nproc_per_node=2 trainer.py --setting 'conf/hymenoptera.yml'

Inference

TODO

  • Train Custom Data

  • Multi-GPU Training

  • Mixed Precision Training

  • Warm-Up

  • Model Pruning/Sparsity

  • Quantization

  • TensorRT Deployment

  • ONNX and TorchScript Export

  • Class Activation Mapping (CAM)

  • Test-Time Augmentation (TTA)

License

MIT License

Copyright (c) 2020 min liu