一. 环境准备
本文介绍如何通过 Mask-RCNN 来实现行人检测,假设你已经对 SSD、YOLO、Faster RCNN 等框架有所了解。
1. 准备 TensorFlow 环境
Tensorflow (>= 1.0.0)
Numpy
2. Gtihub 代码
代码下载:【Github】
3. 下载CoCo数据
下载地址:http://mscoco.org/dataset/#download
Web下载比较慢,可以从我的网盘下载:【百度网盘】
4. 下载 ReNet50
解压得到 resnet_v1_50.ckpt
二. 代码编译运行
代码编译可以参考 Github 说明,这里也给出如下流程:
1. make coco工具
2. 将下载的 COCO 数据放到 ./data 目录下,将数据转换成 tf 所需格式;
按照说明文件:
a)在 data下建一个 coco 文件夹,将指定的5个文件 copy到该目录;
b)将zip文件解压缩;
c)在根目录下建立 output/mask_rcnn 文件夹,用于存放 log;
d)执行格式转换脚本(大概会花一小时);
可能会提示Python某些库错误,没关系,安装一下就好了,可以将pip源换成国内的,pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pil
3. 提前训练好的 Resnet模型
在data下新建 pretrained_models 目录,将 resnet_v1_50.ckpt 放到目录下。
4. Make编译
5. 训练数据
当你观察到Loss的时候,说明训练过程已经成功开始了,不要着急,等着Loss慢慢减少吧,原作者训练 8-GPU 花了32个小时。
三. 训练效果
根据训练生成的 Log文件,存放在 output里面:
设置 TensorBoard 的logdir,来看一下训练效果:
可以看到整个的 loss 的变化情况,还是很有成就感的,需要说明一下,在训练过程中可能 loss 会有震荡的情况,没有关系,等到逐渐下降就好了。
看一下生成的 Graphs:
四. Demo 运行
Github 上未给出 Demo 运行方法,需要我们自己找脚本来实现。
可以参考上一篇 demo.py 自己来写,这里作者就不给出具体 code 了,请自行发挥。
1712

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



