Faster-RCNN碰到的坑
代码github地址: https://github.com/jwyang/faster-rcnn.pytorch/tree/pytorch-1.0
Segmentation fault
问题描述:在训练的时候直接Segmentation fault然后崩出
解决方案:
- gcc升级。conda默认4.8.5,然而faster-rcnn不支持。
- 查看版本兼容,重新装conda 环境,下面是我自己的环境:
- torch 1.0.0
- scipy 1.2(1.4经常出问题,不建议装)
- torchvision 0.2
- python 3.6.10
RPN loss变为nan
问题描述:RPN loss在训练了几个epoch之后变为nan
解决方案:
-
修改 lib/dataset/pascal_voc.py:
x1 = float(bbox.find('xmin').text) - 1
改为:
x1 = float(bbox.find('xmin').text)
x1,y1,x2,y2都把‘-1’去掉。因为VOC数据是1-based(没考证过)。自己的训练集是0based,所以原来的代码会有负数,计算的时候就会出错
-
然后记得删除data/cache中的pkl文件,这样避免模型直接从cache中读取文件