Shortcuts

开始你的第一步

需要准备的依赖环境

在本小节中将会演示如何准备一个Pytorch的环境。

MMRotate可以在Linux和Windows系统工作,需要以下环境版本:Python 3.7+, CUDA 9.2+ and PyTorch 1.6+。

注解

如果您对于Pytorch很熟悉并且已经完成了其安装步骤,您可以跳过本部分内容直接查阅安装的部分。当然,如果您没有准备好这部分的安装,请按照以下流程进行准备。

第一步:Miniconda 下载并且安装Miniconda。

第二步: 创建一个虚拟环境并且切换至该虚拟环境中。

conda create --name openmmlab python=3.8 -y
conda activate openmmlab

第三步: 根据 Pytorch的官方说明 安装Pytorch, 例如:

conda install pytorch==1.8.0 torchvision==0.9.0 cudatoolkit=10.2 -c pytorch

安装

我们强烈建议用户使用以下方式安装MMRotate,这是最方便的。当然,还有多种自定义的安装方式可供经验丰富者选择,您可以查阅 自定义安装 来获取更多相关的帮助。

最佳的安装方式

第一步: 安装 MMEngineMMCV ,并且我们建议使用 MIM 来完成安装。

pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0rc2"

第二步: 安装 MMDetection

mim install 'mmdet>=3.0.0rc2'

注意:如果您需要进行部分代码的修改与开发,请从源码获取MMDetection并且进行以下示例的安装:

git clone https://github.com/open-mmlab/mmdetection.git -b dev-3.x
# "-b dev-3.x" means checkout to the `dev-3.x` branch.
cd mmdetection
pip install -v -e .
# "-v" means verbose, or more output
# "-e" means installing a project in editable mode,
# thus any local modifications made to the code will take effect without reinstallation.

第三步: 安装 MMRotate。

情形a:如果您需要对于MMRotate进行代码上的开发与修改,请从源码进行以下示例的安装:

git clone https://github.com/open-mmlab/mmrotate.git -b dev-1.x
# "-b dev-1.x" means checkout to the `dev-1.x` branch.
cd mmrotate
pip install -v -e .
# "-v" means verbose, or more output
# "-e" means installing a project in editable mode,
# thus any local modifications made to the code will take effect without reinstallation.

情形b:如果您只是使用MMRotate作为依赖项或者是第三方软件包,则直接使用pip进行以下示例的安装即可:

pip install mmrotate

验证安装是否正确

为了验证MMRotate是否正确地被安装到了您的环境中,我们提供了一些demo以供测试。

第一步: 为了进行测试的验证,我们需要下载config文件与checkpoint文件。

mim download mmrotate --config oriented-rcnn-le90_r50_fpn_1x_dota --dest .

下载过程可能会依据您的网络状况花费数秒或者更多的时间。当下载完成之后,您可以在您的当前目录下找到 oriented-rcnn-le90_r50_fpn_1x_dota.pyoriented_rcnn_r50_fpn_1x_dota_le90-6d2b2ce0.pth 两个文件。

第二步: 使用推理demo完成验证

情形 (a):如果您是通过源码方式安装的MMRotate,直接在命令行中运行以下代码即可:

python demo/image_demo.py demo/demo.jpg oriented-rcnn-le90_r50_fpn_1x_dota.py oriented_rcnn_r50_fpn_1x_dota_le90-6d2b2ce0.pth --out-file result.jpg

您将会在您的当前文件夹下看到一张 result.jpg 为文件名的图片,在该图片中完成了对于小轿车和公交车等物体的旋转锚定框的绘制。

情形 (b): 如果您是使用pip的方式安装的MMRotate,打开您的python控制台并使用代码:

from mmdet.apis import init_detector, inference_detector
import mmrotate

config_file = 'oriented-rcnn-le90_r50_fpn_1x_dota.py'
checkpoint_file = 'oriented_rcnn_r50_fpn_1x_dota_le90-6d2b2ce0.pth'
model = init_detector(config_file, checkpoint_file, device='cuda:0')
inference_detector(model, 'demo/demo.jpg')

您将会看到一系列数组列表被打印出来,这代表着被检测到的旋转锚定框。

自定义安装

CUDA 版本

安装Pytorch之前,您需要指定安装的CUDA版本。如果您不清楚您的CUDA版本的安装选择,我们建议:

  • 对于基于安培架构的NVIDIA GPU,例如GeForce 30系列和NVIDIA A100,请使用CUDA 11。

  • 对于其他的NVIDIA GPU,CUDA 11同样可以兼容,但是CUDA 10.2更加轻量并且更好被兼容。

请确保GPU的驱动程序满足最低的版本需求,您可以查阅 表格 以了解更多信息。

注解

如果您按照我们推荐的最佳的安装方式进行安装流程,安装CUDA的运行库就已经足够了,因为这不需要在本地进行CUDA代码的编译工作。但是如果您想从源码对于MMCV进行编译或者开发其他的CUDA算子,您需要从NVIDIA官网完整地安装CUDA工具包 官网 并且CUDA工具包的版本应该和您使用的Pytorch版本对应。例如您可以使用 ‘conda install’ 命令来安装指定版本的CUDA工具包。

不使用MIM安装MMCV

MMCV有一些C++和CUDA扩展的使用,因此MMCV与Pytorch有着复杂的依赖关系。MIM会自动处理这些依赖关系使整个安装过程更加简便,但是您也可以选择不使用MIM这个工具。

如果您想使用pip进行MMCV的安装,而不是MIM,请按照 MMCV安装指南 。您需要根据Pytorch版本和CUDA版本手动指定 find-url。

举个例子,以下代码示例是在PyTorch 1.9.x于CUDA 10.2的环境下进行MMCV的安装:

pip install mmcv -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.8/index.html

在Google Colab上安装

Google Colab 通常已经完成了Pytorch的安装, 因此我们只需要按照以下步骤完成MMCV和MMDetection的安装即可。

第一步: 使用 MIM 安装 MMCVMMDetection :

!pip3 install -U openmim
!mim install "mmcv>=2.0.0rc2"
!mim install 'mmdet>=3.0.0rc2'

第二步: 从源码安装MMRotate:

!git clone https://github.com/open-mmlab/mmrotate.git -b dev-1.x
%cd mmrotate
!pip install -e .

第三步: 验证安装是否正确

import mmrotate
print(mmrotate.__version__)
# Example output: 1.x

注解

在Jupyter中,感叹号 ! 用于调用外部可执行文件,而符号 %cd 是一个用于更改Python当前工作目录的 魔术指令

使用Docker安装MMRotate

我们同样提供了 Dockerfile 用于创建镜像。请确认您的 docker version >=19.03。

# build an image with PyTorch 1.6, CUDA 10.1
# If you prefer other versions, just modified the Dockerfile
docker build -t mmrotate docker/

然后运行以下指令:

docker run --gpus all --shm-size=8g -it -v {DATA_DIR}:/mmrotate/data mmrotate

常见问题

如果您在安装的过程中遇到了一些困难,可以查询 FAQ 页面。如果还是不能解决您的问题,您可以在github中 提交Issue

Read the Docs v: 1.x
Versions
latest
stable
1.x
v1.0.0rc0
v0.3.4
v0.3.3
v0.3.2
v0.3.1
v0.3.0
v0.2.0
v0.1.1
v0.1.0
main
dev
Downloads
pdf
html
epub
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.