Skip to main content

An all-in-one toolkit for computer vision

Project description

PyPI Documentation Status license open issues GitHub pull-requests GitHub latest commit

EasyCV

English | 简体中文

Introduction

EasyCV is an all-in-one computer vision toolbox based on PyTorch, mainly focus on self-supervised learning, transformer based models, and SOTA CV tasks including image classification, metric-learning, object detection, pose estimation and so on.

Major features

  • SOTA SSL Algorithms

    EasyCV provides state-of-the-art algorithms in self-supervised learning based on contrastive learning such as SimCLR, MoCO V2, Swav, DINO and also MAE based on masked image modeling. We also provide standard benchmark tools for ssl model evaluation.

  • Vision Transformers

    EasyCV aims to provide an easy way to use the off-the-shelf SOTA transformer models trained either using supervised learning or self-supervised learning, such as ViT, Swin-Transformer and Shuffle Transformer. More models will be added in the future. In addition, we support all the pretrained models from timm.

  • Functionality & Extensibility

    In addition to SSL, EasyCV also support image classification, object detection, metric learning, and more area will be supported in the future. Although convering different area, EasyCV decompose the framework into different componets such as dataset, model, running hook, making it easy to add new compoenets and combining it with existing modules.

    EasyCV provide simple and comprehensive interface for inference. Additionaly, all models are supported on PAI-EAS, which can be easily deployed as online service and support automatic scaling and service monitoring.

  • Efficiency

    EasyCV support multi-gpu and multi worker training. EasyCV use DALI to accelerate data io and preprocessing process, and use fp16 to accelerate training process. For inference optimization, EasyCV export model using jit script, which can be optimized by PAI-Blade

Installation

Please refer to the installation section in quick_start.md for installation.

Get Started

Please refer to quick_start.md for quick start. We also provides tutorials for more usages.

notebook

Model Zoo

Please refer to the following model zoo for more details.

Data Hub

EasyCV have collected dataset info for different senarios, making it easy for users to fintune or evaluate models in EasyCV modelzoo.

Please refer to data_hub.md.

ChangeLog

  • 23/06/2022 EasyCV v0.4.0 was released.

    • Add semantic segmentation modules, support FCN algorithm
    • Expand classification model zoo
    • Support export model with blade for yolox
    • Support ViTDet algorithm
    • Add sailfish for extensible fully sharded data parallel training
    • Support run with mmdetection models
  • 31/04/2022 EasyCV v0.3.0 was released.

    • Update moby pretrained model to deit small
    • Add mae vit-large benchmark and pretrained models
    • Support image visualization for tensorboard and wandb
  • 07/04/2022 EasyCV v0.2.2 was released.

Please refer to change_log.md for more details and history.

License

This project licensed under the Apache License (Version 2.0). This toolkit also contains various third-party components and some code modified from other repos under other open source licenses. See the NOTICE file for more information.

Contact

This repo is currently maintained by PAI-CV team, you can contact us by

Enterprise Service

If you need EasyCV enterprise service support, or purchase cloud product services, you can contact us by DingDing Group.

dingding_qrcode

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pai-easycv-0.4.1.tar.gz (5.7 MB view hashes)

Uploaded Source

Built Distribution

pai_easycv-0.4.1-py3-none-any.whl (5.9 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page