Matterport版Mask RCNN——训练自己的数据集——踩坑小记
前言
最近基于一台新机器,配置了深度学习工作站,并跑起了matterport版的Detectron。中间各种坑,现在记录如下,有后来者看到诸坑,按照我说的方案解决即可。
一、基本配置
系统配置
操作系统:Ubuntu 16.04
CUDA:Version 9.0.176
CUDNN:7.0.5
Anaconda: 3.6
查看自己电脑的CUDA和CUDNN版本的命令:
cuda 版本
cat /usr/local/cuda/version.txt
cudnn 版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Matterport环境配置
Conda 虚拟环境
这里主要指的是:基于Anaconda为Mask RCNN创造一个conda的虚拟环境。
方法大体可参照:
https://blog.csdn.net/wc781708249/article/details/79438972
使用Keras和Tensorflow设置和安装Mask RCNN
注意:一定要为Mask RCNN单独创造一个虚拟环境,因为后续调试要用到Pycharm,Pycharm直接加载这个环境就可以运行程序了。
Pycharm的安装和使用上述环境
为何要使用Pycharm,因为相比于matterport提供的ipynb格式的代码,这个更方便调试。
安装大体可以参考:
https://blog.csdn.net/anjingshen/article/details/80038316
Pycharm 2018.1.1 使用anaconda 3中已创建的环境
略有不同的是,最后一步,
按照里面的步骤从pycharm链接虚拟环境中的python3.exe。
(因为我用的是anaconda3.6,对应python3)
请注意上文以及下文的“大体可参考”中的“大体”表示:
我当初不是依靠着这篇博文解决的问题,但是我暂时没从历史记录里找到当时的网页,因此我临时给大家找了另一篇但是和我方法相同的博文(如果有时间我会再寻找)
二、制作自己的数据集
这一块,网上诸多大神都搞出来了自己的版本,我也是博览群雄,然后实现出来了。因此,下面,我不打算做重复的黏贴工作,我会把我用到的链接贴过来(也是尊者每个作者的辛劳),然后把我遇到的问题写出来,你可以避免这个坑。
实现默认程序测试结果
首先,ipynb转py这个用jupyter来另存为转化的流程也不多说了,网上都有教程。
也就是你会获得:
/Mask_RCNN/samples/demo.py
/Mask_RCNN/samples/shapes/train_shape.py
两个函数,首先要跑通这两个函数,表示matterport程序安装、运行成功。
额外说一句,稳妥起见,你可以刚装好matterport之后,直接在官方默认的jupyter notebook下测试上述两个文件,即demo.ipynb和train_shape.ipynb,如果有问题能早发现。毕竟,更好的调