Skip to content

MMEditing is a low-level vision toolbox based on PyTorch, supporting super-resolution, inpainting, matting, video interpolation, etc.

License

Notifications You must be signed in to change notification settings

benjaclara/mmediting

 
 

Repository files navigation

Introduction

English | 简体中文

MMEditing is an open-source image and video editing toolbox based on PyTorch. It is a part of the OpenMMLab project.

Currently, MMEditing support the following tasks:

The master branch works with PyTorch 1.5+.

Some Demos:

RealBasicVSR.Demo.mp4
CAIN.Demo.mp4

Major features

  • Modular design

    We decompose the editing framework into different components and one can easily construct a customized editor framework by combining different modules.

  • Support of multiple tasks in editing

    The toolbox directly supports popular and contemporary inpainting, matting, super-resolution and generation tasks.

  • State of the art

    The toolbox provides state-of-the-art methods in inpainting/matting/super-resolution/generation.

Note that MMSR has been merged into this repo, as a part of MMEditing. With elaborate designs of the new framework and careful implementations, hope MMEditing could provide better experience.

News

  • [2022-04-01] v0.14.0 was released.
    • Support TOFlow in video frame interpolation
  • [2022-03-01] v0.13.0 was released.
    • Support CAIN
    • Support EDVR-L
    • Support running in Windows
  • [2022-02-11] Switch to PyTorch 1.5+. The compatibility to earlier versions of PyTorch will no longer be guaranteed.

Please refer to changelog.md for details and release history.

Installation

MMEditing depends on PyTorch and MMCV. Below are quick steps for installation.

Step 1. Install PyTorch following official instructions.

Step 2. Install MMCV with MIM.

pip3 install openmim
mim install mmcv-full

Step 3. Install MMEditing from source.

git clone https://github.com/open-mmlab/mmediting.git
cd mmediting
pip3 install -e .

Please refer to install.md for more detailed instruction.

Getting Started

Please see getting_started.md and demo.md for the basic usage of MMEditing.

Model Zoo

Supported algorithms:

Inpainting
Matting
Image-Super-Resolution
Video-Super-Resolution
Generation
Video Interpolation

Please refer to model_zoo for more details.

Contributing

We appreciate all contributions to improve MMEditing. Please refer to CONTRIBUTING.md in MMCV for the contributing guideline.

Acknowledgement

MMEditing is an open source project that is contributed by researchers and engineers from various colleges and companies. We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their own new methods.

Citation

If MMEditing is helpful to your research, please cite it as below.

@misc{mmediting2022,
    title = {{MMEditing}: {OpenMMLab} Image and Video Editing Toolbox},
    author = {{MMEditing Contributors}},
    howpublished = {\url{https://github.com/open-mmlab/mmediting}},
    year = {2022}
}

License

This project is released under the Apache 2.0 license.

Projects in OpenMMLab

  • MMCV: OpenMMLab foundational library for computer vision.
  • MIM: MIM installs OpenMMLab packages.
  • MMClassification: OpenMMLab image classification toolbox and benchmark.
  • MMDetection: OpenMMLab detection toolbox and benchmark.
  • MMDetection3D: OpenMMLab's next-generation platform for general 3D object detection.
  • MMRotate: OpenMMLab rotated object detection toolbox and benchmark.
  • MMSegmentation: OpenMMLab semantic segmentation toolbox and benchmark.
  • MMOCR: OpenMMLab text detection, recognition, and understanding toolbox.
  • MMPose: OpenMMLab pose estimation toolbox and benchmark.
  • MMHuman3D: OpenMMLab 3D human parametric model toolbox and benchmark.
  • MMSelfSup: OpenMMLab self-supervised learning toolbox and benchmark.
  • MMRazor: OpenMMLab model compression toolbox and benchmark.
  • MMFewShot: OpenMMLab fewshot learning toolbox and benchmark.
  • MMAction2: OpenMMLab's next-generation action understanding toolbox and benchmark.
  • MMTracking: OpenMMLab video perception toolbox and benchmark.
  • MMFlow: OpenMMLab optical flow toolbox and benchmark.
  • MMEditing: OpenMMLab image and video editing toolbox.
  • MMGeneration: OpenMMLab image and video generative models toolbox.
  • MMDeploy: OpenMMLab model deployment framework.

About

MMEditing is a low-level vision toolbox based on PyTorch, supporting super-resolution, inpainting, matting, video interpolation, etc.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.9%
  • Other 0.1%