Fast rcnn 训练自己的数据库问题小结
2015-06-18 09:28
253 查看
fast rcnn 提供了两个预训练的模型,拿CaffeNet做例子,有CaffeNet.v2.caffemodel 和 caffenet_fast_rcnn_iter_40000.caffemodel两种。前者是imagenet上训练的模型,后者是imagenet上训练过又在voc上finetune后的模型,故使用第一个用fast rcnn自带的配置文件train.prototxt没有问题,但是用第二个模型训练自己的数据库,由于类别数目不一致会导致启动caffe后报错:
Check failed: ShapeEquals(proto) shape mismatch(reshape noe set)
这个时候只要将train里面的cls_score和bbox_pred重新命名即可
训练中出现出现boxes[:,2] >= boxes[:,0] 的assert 错误,跟踪进去发现报错的boxes[0,0]=65535,说明出现了越界错误,此时检查上面两句boxes[:,0] = widths[i] - oldx2 -1 … 可以将-1去掉解决该问题
不要使用caffe的snapshot,即保持solver里面 snapshot一直为0,fast rcnn已经做了snapshot的设置,在lib/fast-rcnn/下面config.py里面__C.TRAIN.SNAPSHOT_ITER可以设置,保存地址也在此文件的get_output_dir函数里
matlab fast_rcnn_demo.m中可能box的坐标与SS生成的不一致,需要做一个x与y的交换例如:
box = boxes;
boxes(:,1) = box(:,2);
boxes(:,2) = box(:,1);
boxes(:,3) = box(:,4);
boxes(:,4) = box(:,3);
python 的demo.py也有同样的问题,这也是网上很多网友发现无法复现作者的效果的原因之一
Check failed: ShapeEquals(proto) shape mismatch(reshape noe set)
这个时候只要将train里面的cls_score和bbox_pred重新命名即可
训练中出现出现boxes[:,2] >= boxes[:,0] 的assert 错误,跟踪进去发现报错的boxes[0,0]=65535,说明出现了越界错误,此时检查上面两句boxes[:,0] = widths[i] - oldx2 -1 … 可以将-1去掉解决该问题
不要使用caffe的snapshot,即保持solver里面 snapshot一直为0,fast rcnn已经做了snapshot的设置,在lib/fast-rcnn/下面config.py里面__C.TRAIN.SNAPSHOT_ITER可以设置,保存地址也在此文件的get_output_dir函数里
matlab fast_rcnn_demo.m中可能box的坐标与SS生成的不一致,需要做一个x与y的交换例如:
box = boxes;
boxes(:,1) = box(:,2);
boxes(:,2) = box(:,1);
boxes(:,3) = box(:,4);
boxes(:,4) = box(:,3);
python 的demo.py也有同样的问题,这也是网上很多网友发现无法复现作者的效果的原因之一
相关文章推荐
- sql语法:inner join on, left join on, right join on详细使用方法
- oracle T-SQL
- Oracle中Clob类型处理解析
- 码农心目中的高富帅甲骨文公司在走下坡路
- 数据库课设所感
- 【Oracle学习笔记-3】关于Oracle 10g中各种服务解析
- Oracle client 下载地址 这个地址太难找了所以记录下来
- oracle的in里面的 参数不能超过1000个,解决方法,拆成 in () or in()
- MSSQL日期格式化
- mysql忘记root密码或报错:ERROR 1044 (42000): Access denied for user ”@’localhost’ to database ‘xx‘
- oracle 在操作blob该字段是否会产生很多redo
- MySQL修改配置 区分大小写
- Oracle数据库之FORALL与BULK COLLECT语句
- 常见excel导入到SQL Server 问题解决方案
- mysql性能监控指标及分析
- oracle 常用视图和表
- mysql导入出现MySQL Error 1153 - Got a packet bigger than 'max_allowed_packet' bytes
- SQL SERVER 使用T-SQL还原Bak数据库到指定位置
- MySQL基金会-基本数据库操作
- 将Oracle中的表结构导出到word