Introduction
MMCV is a foundational python library for computer vision research and supports many
research projects as below:
It provides the following functionalities.
- Universal IO APIs
- Image/Video processing
- Image and annotation visualization
- Useful utilities (progress bar, timer, ...)
- PyTorch runner with hooking mechanism
- Various CNN architectures
- High-quality implementation of common CUDA ops
See the documentation for more features and usage.
Note: MMCV requires Python 3.6+.
Installation
There are two versions of MMCV:
- mmcv: lite, without CUDA ops but all other features, similar to mmcv<1.0.0. It is useful when you do not need those CUDA ops.
- mmcv-full: comprehensive, with full features and various CUDA ops out of box. It takes longer time to build.
Note: Do not install both versions in the same environment, otherwise you may encounter errors like ModuleNotFound
. You need to uninstall one before installing the other.
Install with pip
a. Install the lite version.
pip install mmcv
b. Install the full version.
Before installing mmcv-full, make sure that PyTorch has been successfully installed following the official guide.
We provide pre-built mmcv packages (recommended) with different PyTorch and CUDA versions to simplify the building.
CUDA |
torch 1.7 |
torch 1.6 |
torch 1.5 |
torch 1.4 |
torch 1.3 |
11.0 |
install pip install mmcv-full==latest+torch1.7.0+cu110 -f https://download.openmmlab.com/mmcv/dist/index.html |
|
|
|
|
10.2 |
install pip install mmcv-full==latest+torch1.7.0+cu102 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.6.0+cu102 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.5.0+cu102 -f https://download.openmmlab.com/mmcv/dist/index.html |
|
|
10.1 |
install pip install mmcv-full==latest+torch1.7.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.6.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.5.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.4.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.3.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html |
9.2 |
install pip install mmcv-full==latest+torch1.7.0+cu92 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.6.0+cu92 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.5.0+cu92 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.4.0+cu92 -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.3.0+cu92 -f https://download.openmmlab.com/mmcv/dist/index.html |
cpu |
install pip install mmcv-full==latest+torch1.7.0+cpu -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.6.0+cpu -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.5.0+cpu -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.4.0+cpu -f https://download.openmmlab.com/mmcv/dist/index.html |
install pip install mmcv-full==latest+torch1.3.0+cpu -f https://download.openmmlab.com/mmcv/dist/index.html |
Another way is to compile locally by running
pip install mmcv-full
Note that the local compiling may take up to 10 mins.
Install from source
After cloning the repo with
git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
You can either
If you are on macOS, add the following environment variables before the installing command.
CC=clang CXX=clang++ CFLAGS='-stdlib=libc++'
e.g.,
CC=clang CXX=clang++ CFLAGS='-stdlib=libc++' MMCV_WITH_OPS=1 pip install -e .
If you are on Windows10, set the following environment variable before the installing command.
set MMCV_WITH_OPS=1
e.g.,
set MMCV_WITH_OPS=1
pip install -e .
Note: If you would like to use opencv-python-headless
instead of opencv-python
,
e.g., in a minimum container environment or servers without GUI,
you can first install it before installing MMCV to skip the installation of opencv-python
.
TroubleShooting
If you meet issues when running or compiling mmcv, we list some common issues in TROUBLESHOOTING.md.