刚开始用MMDetection框架,希望使用自己的模型和训练数据集,因此粗略看了官方教程和网上的一些资料。然而,这些资料大多数都需要修改MMDetection安装目录下的文件,这显然不是一种很好的做法。下面以目标检测为例,我通过自己摸索了一种非侵入式的模型和MMDetection数据配置方法,简要总结如下。
1、安装和配置MMDetection
通过源码安装MMDetection,具体安装方式参考官网GET STARTED — MMDetection 3.0.0 documentation。
为方便在项目中引用,我们创建一个软链接,将mmdetection的根目录映射为当前我们项目工作目录下的一个子目录,假设为“mm/mmdetection/‘。
这里安装的时mmdet 3.0.0版本。
2、准备自定义数据集
官方推荐COCO数据集,但我发现COCO的描述文件将不同的图片耦合到了一起,且当图片比较多的时候,这个文件很大,不利于调试和修改。因此我改用VOC格式,每个图片使用一个描述文件。假设数据目录为’data‘。
假设目标有7种类型:'Car', 'Bus', 'Truck', 'Motor', 'Bike', 'Rider', 'Person'
本地项目的目录结构如下:
├─data
│ ├─readme.txt
│ └─VOC2007
│ ├─Annotations
│ ├─ImageSets
│ │ └─Main
│ └─JPEGImages
├─mm
│ ├─config
│ ├─mmdetection
│ └─models
3、创建数据集配置文件"mm/config/da_dataset.py"
_base_ = ['../mmdetection/configs/_base_/datasets/voc0712.py']
batch_size = 8
num_

本文介绍了如何在不修改MMDetection源代码的情况下,配置自己的模型和数据集进行目标检测训练。作者选择了VOC格式的数据集,创建了数据集配置文件,并编写了自定义模型类。整个过程包括安装MMDetection、准备数据、创建配置文件、训练模型等步骤,并解决了MMDetection中VOC评估数据的类别显示问题。
最低0.47元/天 解锁文章
4355

被折叠的 条评论
为什么被折叠?



