mmdetection-安装篇

本文详细介绍了如何在Linux环境下安装mmdetection,包括创建conda虚拟环境、安装PyTorch、克隆mmdetection代码库、安装依赖包及构建Docker镜像等步骤,为深度学习目标检测研究提供环境配置指导。

Linux环境下安装mmdetection

环境准备:

  • Linux系统
  • Python 3.5+
  • PyTorch 1.1 或更高
  • CUDA9.0 或更高
  • NCCL2
  • GCC 4.9 或更高
  • mmcv

安装 mmdetection

a. 创建 conda 虚拟环境并激活。

conda create -n open-mmlab python=3.7 -y
conda activate open-mmlab

b. 安装 PyTorch and torchvision, 可参考官方教程

conda install pytorch torchvision -c pytorch

c. 克隆 mmdetection 代码.

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection

d. 安装依赖环境

pip install -r requirements/build.txt
pip install "git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI"

e. 安装mmdetection

pip install -v -e .  # or "python setup.py develop"

使用这个命令,mmdetetion以dev模式安装,本地修改不用重新install,如果代码提交了commit或者pull更新了代码,则需要再次执行上面语句。
另外在requirements/下还有其他依赖环境可以安装。

构建mmdetection的Docker镜像

环境准备

  • docker
  • nvidia-docker(如果是19.03及以后,不需要安装nvidia-docker)
  • nvidia-driver(建议是最新版)

基于Dockerfile构建镜像

根据官方提供的Dockerfile 构建。

# build an image with PyTorch 1.3, CUDA 10.1 and CUDNN 7
docker build -t mmdetection docker/

Dockerfile内容如下:

ARG PYTORCH="1.3"
ARG CUDA="10.1"
ARG CUDNN="7"

FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel

ENV TORCH_CUDA_ARCH_LIST="6.0 6.1 7.0+PTX"
ENV TORCH_NVCC_FLAGS="-Xfatbin -compress-all"
ENV CMAKE_PREFIX_PATH="$(dirname $(which conda))/../"

RUN apt-get update && apt-get install -y libglib2.0-0 libsm6 libxrender-dev libxext6 \
 && apt-get clean \
 && rm -rf /var/lib/apt/lists/*

# Install mmdetection
RUN conda clean --all
RUN git clone https://github.com/open-mmlab/mmdetection.git /mmdetection
WORKDIR /mmdetection
ENV FORCE_CUDA="1"
RUN pip install --no-cache-dir -e .

Windows环境下安装mmdetection

参考:mmdetection在windows10系统环境中搭建

<think>好的,我现在需要处理用户关于mmdetection中SOLO/SOLOv2模型的使用教程及配置说明的请求。首先,我得回顾一下用户提供的系统级指令,确保回答符合格式要求。用户要求所有行内数学公式用$...$,独立公式用$$...$$,并且要正确使用LaTeX语法。同时需要用中文回答,生成相关问题,并在引用末尾添加标识。 用户的问题集中在mmdetection框架下SOLO/SOLOv2的使用方法,包括配置和教程。我需要从提供的引用中提取相关信息。根据用户提供的引用[1]和[2],虽然这两引用主要关于SOLOv2的开源项目启动文件和保姆级教程,但用户现在转向询问mmdetection中的实现。因此,可能需要结合通用SOLO/SOLOv2的配置步骤和mmdetection框架的常规使用方法。 首先,我应该确认mmdetection是否支持SOLO/SOLOv2。查阅官方文档或仓库,mmdetection确实包含SOLO和SOLOv2的实现。接下来,需要说明环境配置步骤,比如安装PyTorch、CUDA、mmcv-full以及mmdetection本身。这部分需要详细列出命令,例如使用conda安装依赖,克隆仓库,编译安装等。 然后是数据集准备,用户可能需要将数据集转换成COCO格式,因为mmdetection通常使用该格式。需要指导用户修改配置文件中的数据集路径,比如在configs/solo/solo_r50_fpn_1x_coco.py中更改data_root变量。 训练和测试部分,要说明如何使用tools/train.py和tools/test.py脚本,以及多GPU训练的dist_train.sh。需要提醒用户根据实际情况调整学习率和批次大小,特别是当使用不同数量的GPU时。 此外,用户可能遇到的问题,比如环境兼容性、CUDA版本冲突、依赖项版本不匹配等,需要给出建议,例如确保mmcv-full版本与PyTorch匹配,参考官方文档解决安装问题。 最后,生成相关问题时,需围绕SOLO/SOLOv2在mmdetection中的实现、性能优化、与其他模型的对比、自定义数据集训练以及常见错误处理等方面展开。 现在需要确保回答结构清晰,分步骤说明,正确引用提供的资料,并在末尾添加相关问题。同时注意数学公式的正确格式,虽然这个问题可能不涉及太多数学内容,但如果有提到损失函数或其他公式,需要使用对应的LaTeX格式。</think>### mmdetection中SOLO/SOLOv2模型使用教程及配置说明 #### 1. 环境配置要求 - **PyTorch ≥ 1.6** - **CUDA ≥ 10.1** - 安装依赖库: ```bash conda install cython matplotlib numpy pip install mmcv-full==1.3.0 -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html # 需替换CUDA和PyTorch版本 git clone https://github.com/open-mmlab/mmdetection.git cd mmdetection pip install -r requirements/build.txt pip install -v -e . # 编译安装[^1] ``` #### 2. 数据集准备 - 数据集需转换为COCO格式,目录结构如下: ``` data/coco/ ├── annotations ├── train2017 └── val2017 ``` - 修改配置文件中的数据集路径(以`configs/solo/solo_r50_fpn_1x_coco.py`为例): ```python data_root = 'data/coco/' # 修改为实际路径[^2] ``` #### 3. 训练与测试 - **单GPU训练**: ```bash python tools/train.py configs/solo/solo_r50_fpn_1x_coco.py --work-dir work_dirs/solo ``` - **多GPU训练**: ```bash ./tools/dist_train.sh configs/solo/solo_r50_fpn_1x_coco.py 8 --work-dir work_dirs/solo # 8为GPU数量 ``` - **测试**: ```bash python tools/test.py configs/solo/solo_r50_fpn_1x_coco.py work_dirs/solo/latest.pth --eval segm ``` #### 4. 关键配置文件解析 - **模型结构**:`configs/solo/solo_r50_fpn_1x_coco.py`定义主干网络(ResNet50+FPN)和SOLO头部 - **损失函数**:包含分类损失$L_{cls}$和掩膜损失$L_{mask}$,通过动态权重平衡: $$ L_{total} = \lambda_1 L_{cls} + \lambda_2 L_{mask} $$ #### 5. 常见问题解决 - **CUDA内存不足**:减小`img_scale`(如从(1333,800)调整为(1024,600)) - **版本冲突**:确保`mmcv-full`与PyTorch版本匹配(参考[官方兼容表](https://mmcv.readthedocs.io/en/latest/#installation)) - **自定义数据集训练**:需重新计算类别统计量并修改`num_classes`参数
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Challovactor

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值