Faster-RCNN 训练与测试指南
前言
今天我们要来实现一个经典的目标检测模型:Faster-Rcnn。我们使用DAMODEL云平台来实现,这是个很强大的云端平台,功能众多,你可以投你所好去进行你想做的事情。
1. 环境与工具准备
1.1 远程连接工具:Mobaxterm
首先,你需要通过 Mobaxterm 来远程连接服务器,这是一个简单而功能强大的SSH远程连接工具。
安装步骤:
-
点击上方链接,下载并安装 Mobaxterm。
速度可能会比较慢,我们稍微等待。
-
安装完成后,可以用它来登录云服务器。
1.2 获取源码
下载本文所用到的源码,并准备好以便后续操作。
点击此处下载源码:https://s3.damodel.com/damodel-openfile/mmdetection-3.3.0.zip
2. 配置 Faster-RCNN 环境并进行训练
2.1 云服务器平台设置
第一步:创建实例
- 在云服务器平台创建 GPU 实例,推荐使用 4090 显卡,确保有充足的计算能力。
- 下载并保存私钥文件,它将用于免密登录。
第二步:登录服务器
- 服务器创建成功后,复制 SSH 连接地址。
- 打开 Mobaxterm,选择 SSH 远程登录,并使用下载的私钥进行免密登录。
ssh -p 39763 root@cn-north-b.ssh.damodel.com
成功登录后,你将进入服务器的命令行界面。
输入root再按回车即可登录。
2.2 配置 Faster-RCNN 环境
第一步:上传与解压代码
- 将下载的源码文件上传至服务器的
/root/workspace/
目录。 - 使用如下命令解压文件:
unzip mmdetection-3.3.0.zip
第二步:安装依赖库
接下来,安装 Faster-RCNN 的所需环境。你需要依次运行以下命令:
# 安装mmcv包
pip install mmcv==2.1.0 -f https://download.openmmlab.com/mmcv/dist/cu121/torch2.1/index.html -i https://mirrors.aliyun.com/pypi/simple/
# 安装mmdetection
cd mmdetection-3.3.0
pip install -r requirements/build.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install -v -e ./ -i https://pypi.tuna.tsinghua.edu.cn/simple/
# 安装必要包
pip install numpy==1.24.4 setuptools==69.5.1 instaboostfast -i https://pypi.tuna.tsinghua.edu.cn/simple/
# 安装全景分割依赖
cd panopticapi
pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple/
cd ..
# 安装LVIS数据集依赖
cd lvis-api
pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple/
cd ..
# 安装albumentations依赖
pip install -r requirements/albu.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install mmengine -i https://pypi.tuna.tsinghua.edu.cn/simple/
第三步:验证安装是否成功
运行测试脚本,确保所有环境安装完毕:
python 1.py
2.3 数据集简介
COCOmini 数据集是一种常用于目标检测、实例分割、关键点检测等计算机视觉任务的数据集。它包含以下特点:
- 多标签分类:每个图像包含多个对象类别,非常适合多对象环境的研究。
- 多样化场景:涵盖室内外、城市和自然等不同场景,提供丰富的视觉样本。
- 详尽的注释:每个对象实例都包含精确的边界框、分割掩码和关键点注释。
你可以使用 COCO 数据集进行训练,模型将从中学习多样化的物体特征。
2.4 开始训练
Faster-RCNN 的代码已经调试完成,你只需运行以下命令,即可开始训练模型:
python ./tools/train.py ./checkpoints/faster-rcnn_r50_fpn_1x_coco.py
# 他会自动下载权重,并开始训练,耐心等待即可。
该命令会自动下载预训练权重,开始模型训练。请耐心等待,训练时间视硬件配置而定。
2.5 测试模型并保存结果
经过训练后,你可以使用训练好的模型权重进行数据集预测,以下是测试步骤:
python tools/test.py ./checkpoints/faster-rcnn_r50_fpn_1x_coco.py ./checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth --show-dir /root/workspace/mmdetection-3.3.0/result/
测试结果将会保存在指定目录中,包含原始物体位置和模型预测的对比。
2.6 保存实验数据与下载
为了保存训练环境和结果数据,你可以创建一个镜像,这样下次使用时不需要重新配置环境。具体步骤如下:
- 前往控制台,选择GPU云实例。
- 点击保存镜像,保存当前的实验环境和数据。
以上就是 Faster-RCNN 训练与测试的完整流程。通过上述步骤,你可以顺利完成云端训练环境的搭建、模型训练与测试,并保存实验结果方便后续使用。