Code Monkey home page Code Monkey logo

mmcv's Introduction

PyPI badge codecov license

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.6torch 1.5torch 1.4torch 1.3
10.2
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.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.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.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

  • install the lite version

    pip install -e .
  • install the full version

    MMCV_WITH_OPS=1 pip install -e .

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.

mmcv's People

Contributors

hellock avatar xvjiarui avatar zwwwayne avatar yhcao6 avatar hejm37 avatar oceanpang avatar innerlee avatar dreamerlin avatar johnson-wang avatar ycxioooong avatar yl-1993 avatar nbei avatar joannalxy avatar v-qjqs avatar zhuyuanhao avatar thangvubk avatar hanyc0914 avatar daavoo avatar drcut avatar lindahua avatar wangg12 avatar mxbonn avatar xiaojieli0903 avatar zhaoyue-zephyrus avatar sunnyxiaohu avatar onedirection9 avatar mattdawkins avatar jshilong avatar louzana avatar xinntao avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.