R-CNN:训练和测试 Faster R-CNN 模型中遇到的问题

简介: 使用自己标注的数据集用 Faster R-CNN 训练了两个模型:VGG16 和 ResNet-50 ,在训练和测试的时候还是踩了很多坑,把遇到的问题及解决方法总结了一下,以供以后回顾。

最近使用自己标注的数据集用 Faster R-CNN 训练了两个模型:VGG16 和 ResNet-50 ,在训练和测试的时候还是踩了很多坑,把遇到的问题及解决方法总结了一下,以供以后回顾。


一、训练

1. 错误:./tools/train_faster_rcnn_end2end.py is not found

执行文件的位置不正确,注意所有的命令最好都在 faster rcnn 的根目录中执行。

2. 错误:'module' object has no attribute 'text_format'

./lib/fast_rcnn/train.py 文件里添加 import google.protobuf.text_format

3. 错误:TypeError: ‘numpy.float64’ object cannot be interpreted as an index

这个错误有人说可以降低 numpy 的版本来解决,本人试了,但还会报其他的错误,所以并不能算解决。

因为新版的 numpy 不能使用 float 类型来进行索引了,解决方法:转换类型

1./py-faster-rcnn/lib/roi_data_layer/minibatch.py

# 在第26行:
    fg_rois_per_image = np.round(cfg.TRAIN.FG_FRACTION * rois_per_image)
# 修改为:
    fg_rois_per_image = np.round(cfg.TRAIN.FG_FRACTION * rois_per_image).astype(np.int)

2./py-faster-rcnn/lib/datasets/ds_utils.py

# 在第12行:
    hashes = np.round(boxes * scale).dot(v)
# 修改为:
    hashes = np.round(boxes * scale).dot(v).astype(np.int)

3./py-faster-rcnn/lib/fast_rcnn/test.py

# 在129行:
        hashes = np.round(blobs['rois'] * cfg.DEDUP_BOXES).dot(v)
# 修改为:
        hashes = np.round(blobs['rois'] * cfg.DEDUP_BOXES).dot(v).astype(np.int)

4./py-faster-rcnn/lib/rpn/proposal_target_layer.py

# 在60行:
        fg_rois_per_image = np.round(cfg.TRAIN.FG_FRACTION * rois_per_image)
# 修改为:
        fg_rois_per_image = np.round(cfg.TRAIN.FG_FRACTION * rois_per_image).astype(np.int)
# 在123行起:
    for ind in inds:
        cls = clss[ind]
        start = 4 * cls
        end = start + 4
# 修改为:
    for ind in inds:
        ind = int(ind)
        cls = clss[ind]
        start = int(4 * cls)
        end = int(start + 4)
目录
相关文章
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
637 8
|
2月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
330 2
|
3月前
|
机器学习/深度学习 数据采集 运维
基于WOA-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、WOA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN6模型单变量时序预测一键对比研究
基于WOA-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、WOA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN6模型单变量时序预测一键对比研究
188 7
|
2月前
|
机器学习/深度学习 计算机视觉
基于CNN和大气散射模型的图像去雾
基于CNN和大气散射模型的图像去雾
|
3月前
|
机器学习/深度学习 算法 物联网
基于WOA-CNN-LSTM-Attention、CNN-LSTM-Attention、WOA-CNN-LSTM、CNN-LSTM、LSTM、CNN6模型多变量时序预测一键对比研究(Matlab代码)
基于WOA-CNN-LSTM-Attention、CNN-LSTM-Attention、WOA-CNN-LSTM、CNN-LSTM、LSTM、CNN6模型多变量时序预测一键对比研究(Matlab代码)
140 0
|
3月前
|
机器学习/深度学习 存储 分布式计算
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证(211)
本文探讨了Java大数据与机器学习模型在金融风险压力测试中的创新应用。通过多源数据采集、模型构建与优化,结合随机森林、LSTM等算法,实现信用风险动态评估、市场极端场景模拟与操作风险预警。案例分析展示了花旗银行与蚂蚁集团的智能风控实践,验证了技术在提升风险识别效率与降低金融风险损失方面的显著成效。
|
9月前
|
存储 人工智能 测试技术
小鱼深度评测 | 通义灵码2.0,不仅可跨语言编码,自动生成单元测试,更炸裂的是集成DeepSeek模型且免费使用,太炸裂了。
小鱼深度评测 | 通义灵码2.0,不仅可跨语言编码,自动生成单元测试,更炸裂的是集成DeepSeek模型且免费使用,太炸裂了。
141596 29
小鱼深度评测 | 通义灵码2.0,不仅可跨语言编码,自动生成单元测试,更炸裂的是集成DeepSeek模型且免费使用,太炸裂了。
|
9月前
|
机器学习/深度学习 自然语言处理 API
阿里云零门槛、轻松部署您的专属 DeepSeek模型体验测试
DeepSeek R1是基于Transformer架构的先进大规模深度学习模型,2025年1月20日发布并开源,遵循MIT License。它在自然语言处理等任务上表现出色,高效提取特征,缩短训练时间。阿里云推出的满血版方案解决了服务器压力问题,提供100万免费token,云端部署降低成本,用户可快速启动体验。虽然回答速度有待提升,但整体表现优异,备受关注。
357 8
|
9月前
|
人工智能 IDE 测试技术
用户说 | 通义灵码2.0,跨语言编码+自动生成单元测试+集成DeepSeek模型且免费使用
通义灵码, 作为国内首个 AI 程序员,从最开始的内测到公测,再到通义灵码正式发布第一时间使用,再到后来使用企业定制版的通义灵码,再再再到现在通义灵码2.0,我可以说“用着”通义灵码成长的为数不多的程序员之一了吧。咱闲言少叙,直奔主题!今天,我会聊一聊通义灵码的新功能和通义灵码2.0与1.0的体验感。
|
9月前
|
人工智能 IDE 测试技术
用户说 | 通义灵码2.0,跨语言编码+自动生成单元测试+集成DeepSeek模型且免费使用
用户说 | 通义灵码2.0,跨语言编码+自动生成单元测试+集成DeepSeek模型且免费使用

热门文章

最新文章

下一篇
oss云网关配置