【目标检测】RetinaNet基于VOC的训练与测试-tf版

RetinaNet用的是这个代码:https://github.com/fizyr/keras-retinanet

一、配置环境

下载VOC比较慢,用的是上一篇文章中提到的镜像网站。配置环境比较简单:

pip install numpy
pip install .
python setup.py build_ext --inplace

二、训练模型

retinanet-train pascal ./VOCdevkit/VOC2007

训练的时候报了“TypeError: type object got multiple values for keyword argument 'training'”检查后发现是keras_resnet里面的文件出错,意识到可能是keras版本不匹配的问题。在查看了keras与tensorflow-gpu的版本关系后,降低了keras的版本到2.3.1。之后成功开始训练。

 

三、测试模型

参考examples/ResNet50RetinaNet.py,修改model_path和labels_to_name。报错ValueError: not enough values to unpack (expected 3, got 2),查询后需要将训练的模型转换为inference模型:

参考:https://blog.csdn.net/qq_33083551/article/details/103885590

retinanet-convert-model ./snapshots/resnet50_pascal_13.h5 
./model.h5keras_retinanet/bin/convert_model.py ./snapshots/resnet50_pascal_13.h5 ./model.h5
model_path = os.path.join('..', 'model.h5')
class_name=['diningtable', 'person', 'bottle', 'boat', 'train', 'bird', 'dog', 'cat', 'tvmonitor', 'cow', 'car', 'sofa', 'horse', 'chair', 'pottedplant', 'bicycle', 'motorbike', 'aeroplane', 'sheep', 'bus']
class_name=sorted(class_name)
labels_to_names=dict(zip(range(len(class_name)),class_name))

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值