安装MMRotate流程

一、介绍

MMRotate的github网站已经给出了非常详细的安装步骤

所有的安装步骤已经在安装文档里,并且非常详细,

本文主要记录一些踩坑的地方。

二、流程

1.配置conda环境

假设你的Anaconda已经安装好了,并且之前自己创建过环境。使用 nvidia-smi 指令查询,我的CUDA版本是12.1。

cmd打开本地终端(最好是在D盘下面打开,因为后续的mmrotate的文件会直接安装在当前目录)

bash 复制代码
conda create --name openmmlab python=3.8 -y
conda activate openmmlab
bash 复制代码
conda install pytorch==1.8.0 torchvision==0.9.0 cudatoolkit=10.2 -c pytorch

2.使用 MIM 安装 MMCV 和 MMDetection

非常建议还是使用MIM安装,否则的话还要去根据 PyTorch 版本及其 CUDA 版本手动指定下载指令后面的 find-url,比较麻烦)

注意,github上的安装步骤其实是有一点点问题的,就是我按照如下:

pip install -U openmim

mim install mmcv-full

mim install mmdet

安装的话,最后运行mmrotate的时候会报错:

`MMCV 与 MMDetection 的兼容问题: "ConvWS is already registered in conv layer"; "AssertionError: MMCV==xxx is used but incompatible. Please install mmcv>=xxx, <=1.8.0

所以我又重新配置了环境,并使用:

bash 复制代码
pip install -U openmim
mim install mmcv-full==1.5.3
mim install mmdet==2.25.1

进行安装。

(具体版本对应如下所示,见此链接
3.安装 MMRotate

我直接从源码安装

bash 复制代码
git clone https://github.com/open-mmlab/mmrotate.git
cd mmrotate
pip install -v -e .

4.验证

(1)首先下载配置文件和检查点文件

bash 复制代码
mim download mmrotate --config oriented_rcnn_r50_fpn_1x_dota_le90 --dest .

(2)验证推理演示

bash 复制代码
python demo/image_demo.py demo/demo.jpg oriented_rcnn_r50_fpn_1x_dota_le90.py oriented_rcnn_r50_fpn_1x_dota_le90-6d2b2ce0.pth --out-file result.jpg

然后会在当前目录下看到一张名为 result.jpg 的新图片,其中旋转边界框绘制在汽车、公共汽车等目标上,就算成功啦

(3)注意:在这一步骤的时候,可能会报错:

bash 复制代码
  File "D:\Anaconda\envs\open_mmlab\lib\site-packages\PIL\Image.py", line 100, in <module>
    from . import _imaging as core
ImportError: DLL load failed while importing _imaging: 找不到指定的模块。

这可能是因为你的Pillow版本不匹配,

解决办法:先卸载Pillow再安装就行了

bash 复制代码
pip uninstall Pillow
pip install Pillow
相关推荐
PNP Robotics26 分钟前
PNP机器人上海宝山智能机器人年会发表机器人10年主题演讲演讲
人工智能·python·机器人
沫儿笙28 分钟前
abb焊接机器人保护气体省气设备
人工智能·机器人
机器人行业研究员28 分钟前
轮足之争外,六维力传感器才是机器人的隐形核心
人工智能·机器人·人机交互·六维力传感器·关节力传感器
+wacyltd大模型备案算法备案30 分钟前
模型备案服务从业者,专业讲解:大模型备案(生成式人工智能)
人工智能
搬砖者(视觉算法工程师)1 小时前
人工智能(AI)的工程原理与应用
人工智能
da_vinci_x1 小时前
PS 3D Viewer (Beta):概念美术的降维打击,白模直接在PS里转光打影出5张大片
人工智能·游戏·3d·prompt·aigc·材质·游戏美术
飞哥数智坊1 小时前
提示词工程没死,只是藏得更深了
人工智能
清云逸仙1 小时前
什么是AI领域的Prompt
人工智能·深度学习·机器学习·prompt
Elastic 中国社区官方博客1 小时前
在 Elasticsearch 中实现带可观测性的 agentic 搜索以自动调优相关性
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
生成论实验室1 小时前
宇宙生成信息编码:易经六十四卦的数学表述与生成论物理学阐释
人工智能·科技·神经网络·信息与通信·几何学