faster rcnn keras版本train.py运行记录

前言:

原代码:https://github.com/yhenon/keras-frcnn 已经失效,本次采用的代码来自
https://github.com/kbardool/keras-frcnn
下载后可以看到,代码与原代码基本一致。
推荐博文:https://segmentfault.com/a/1190000017398753

一、运行环境要求

tensorflow
h5py
Keras==2.0.3
numpy
opencv-python
sklearn
注意:tensorflow和keras版本不要太高,尤其是keras版本,尽可能的靠近2.03版本,否则容易报错。

二、数据准备

在keras-frcnn-master/keras_frcnn/pascal_voc_parser.py中的get_data显示两个数据集(VOC2007,VOC2012)。但是实际训练时只需要一个数据集即可。本次采用的是VOC2012,所以将VOC2007删除

def get_data(input_path):
	all_imgs = []

	classes_count = {}

	class_mapping = {}

	visualise = False

	data_paths = [os.path.join(input_path,s) for s in ['VOC2012']]
	

	print('Parsing annotation files')

voc2012下载地址:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
下载结束后在下载文件目录下进行解压(尽量用命令解压,直接右击鼠标解压容易破坏文件属性,导致部分文件无法生成)
命令:tar -xvf VOCtrainval_11-May-2012.tar
解压后会生成VOCdevkit文件夹,将该文件夹复制到faster rcnn根目录下,如图
在这里插入图片描述

三、运行train_frcnn.py

在faster rcnn根目录下,使用命令:python train_frcnn.py -p /path/to/pascalvoc/
注意: 1./path/to/pascalvoc/要替换为自己的路径,修改到keras-frcnn-master下VOCdevkit即可运行
2.运行此代码是,需要运行2000轮,需要大量的时间,如果不需要这么多轮训练,可以在train_frcnn.py的第32行自行修改。

training. (Default=false).", action="store_true", default=False)
parser.add_option("--vf", dest="vertical_flips", help="Augment with vertical flips in training. (Default=false).", action="store_true", default=False)
parser.add_option("--rot", "--rot_90", dest="rot_90", help="Augment with 90 degree rotations in training. (Default=false).",
				  action="store_true", default=False)
parser.add_option("--num_epochs", type="int", dest="num_epochs", help="Number of epochs.", default=2000)

每轮训练1000张图片,需要RPN网络分别作分类(区别前景还是背景)和回归(画推荐框)同时还有faster rcnn作最后的分类(区分物体类别)和回归(画框)。
train.py运行后将会生成.hdf5文件。
同时还需要下载.h5文件(已经训练好的权重信息)链接如下:
h5文件(resnet50----tensorflow版本)

keras版本的faster rcnn 版本的train.py训练到此结束。可用生成的模型对自己的目标进行检测。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小俊俊的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值