An all-in-one toolkit for computer vision
English | 简体中文
EasyCV is an all-in-one computer vision toolbox based on PyTorch, mainly focuses on self-supervised learning, transformer based models, and major CV tasks including image classification, metric-learning, object detection, pose estimation, and so on.
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 benchmarking 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 DETR Series. 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 supports image classification, object detection, metric learning, and more areas will be supported in the future. Although covering different areas,
EasyCV decomposes the framework into different components such as dataset, model and running hook, making it easy to add new components and combining it with existing modules.
EasyCV provides simple and comprehensive interface for inference. Additionally, all models are supported on PAI-EAS, which can be easily deployed as online service and support automatic scaling and service monitoring.
Efficiency
EasyCV supports multi-gpu and multi-worker training. EasyCV uses DALI to accelerate data io and preprocessing process, and uses TorchAccelerator and fp16 to accelerate training process. For inference optimization, EasyCV exports model using jit script, which can be optimized by PAI-Blade
[🔥 2023.05.09]
[🔥 2023.03.06]
[🔥 2023.01.17]
[🔥 2022.12.02]
[🔥 2022.08.31] We have released our YOLOX-PAI that achieves SOTA results within 40~50 mAP (less than 1ms). And we also provide a convenient and fast export/predictor api for end2end object detection. To get a quick start of YOLOX-PAI, click here!
Please refer to change_log.md for more details and history.
We have a series of technical articles on the functionalities of EasyCV.
Please refer to the installation section in quick_start.md for installation.
Please refer to quick_start.md for quick start. We also provides tutorials for more usages.
notebook
Self-Supervised Learning | Image Classification | Object Detection | Segmentation | Object Detection 3D |
|
|
Please refer to the following model zoo for more details.
EasyCV have collected dataset info for different scenarios, making it easy for users to finetune or evaluate models in EasyCV model zoo.
Please refer to data_hub.md.
This project is 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.
This repo is currently maintained by PAI-CV team, you can contact us by
If you need EasyCV enterprise service support, or purchase cloud product services, you can contact us by DingDing Group.