faster-rcnn.pytorch问题汇总和解决

https://github.com/jwyang/faster-rcnn.pytorch/tree/pytorch-1.0

1、问题:ImportError: cannot import name '_mask' from 'pycocotools' (/faster-rcnn.pytorch/lib/pycocotools/__init__.py)

解决:https://github.com/jwyang/faster-rcnn.pytorch/issues/611

2、问题: from scipy.misc import imread
ImportError: cannot import name 'imread' from 'scipy.misc' (/home/admin/anaconda3/lib/python3.7/site-packages/scipy/misc/__init__.py)

解决:#from scipy.misc import imread
from imageio import imread

3、问题:faster-rcnn.pytorch/lib/model/roi_layers/roi_align.py", line 41, in backward
    sampling_ratio,
RuntimeError: Not implemented on the CPU (ROIAlign_backward at /faster-rcnn.pytorch/lib/model/csrc/ROIAlign.h:44)

解决:python trainval_net.py --cuda

CUDA_VISIBLE_DEVICES=$GPU_ID python trainval_net.py \
                   --dataset pascal_voc --net vgg16 \
                   --bs $BATCH_SIZE --nw $WORKER_NUMBER \
                   --lr $LEARNING_RATE --lr_decay_step $DECAY_STEP \
                   --cuda

4、问题:

[session 1][epoch  9][iter  300/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 26.321015
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan
save model: models/vgg16/pascal_voc/faster_rcnn_1_9_301.pth
[session 1][epoch 10][iter    0/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 0.186927
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan
[session 1][epoch 10][iter  100/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 30.308010
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan
[session 1][epoch 10][iter  200/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 26.225091
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan
[session 1][epoch 10][iter  300/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 25.555755
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan
save model: models/vgg16/pascal_voc/faster_rcnn_1_10_301.pth
[session 1][epoch 11][iter    0/ 302] loss: nan, lr: 1.00e-04
            fg/bg=(256/0), time cost: 1.063025
            rpn_cls: nan, rpn_box: nan, rcnn_cls: nan, rcnn_box nan

解决:  lib/datasets/imdb.py修改如下

def append_flipped_images(self):
    num_images = self.num_images
    widths = self._get_widths()
    for i in range(num_images):
      boxes = self.roidb[i]['boxes'].copy()
      oldx1 = boxes[:, 0].copy()
      oldx2 = boxes[:, 2].copy()
      boxes[:, 0] = widths[i] - oldx2 - 1
      boxes[:, 2] = widths[i] - oldx1 - 1
      for b in range(len(boxes)):
        if boxes[b][2]< boxes[b][0]:
          boxes[b][0] = 0

pascal_voc.py

        # Load object bounding boxes into a data frame.
        for ix, obj in enumerate(objs):
            bbox = obj.find('bndbox')
            # Make pixel indexes 0-based
            x1 = float(bbox.find('xmin').text)
            y1 = float(bbox.find('ymin').text)
            x2 = float(bbox.find('xmax').text)
            y2 = float(bbox.find('ymax').text)

训练中:

[session 1][epoch  1][iter 1400/10022] loss: 0.9442, lr: 1.00e-03
            fg/bg=(64/192), time cost: 34.894407
            rpn_cls: 0.1092, rpn_box: 0.0959, rcnn_cls: 0.7647, rcnn_box 0.5711
[session 1][epoch  1][iter 1500/10022] loss: 0.8075, lr: 1.00e-03
            fg/bg=(40/216), time cost: 34.486090
            rpn_cls: 0.1273, rpn_box: 0.1090, rcnn_cls: 0.2956, rcnn_box 0.3665
[session 1][epoch  1][iter 1600/10022] loss: 0.9427, lr: 1.00e-03
            fg/bg=(59/197), time cost: 34.548775
            rpn_cls: 0.2252, rpn_box: 0.1195, rcnn_cls: 0.4307, rcnn_box 0.6220
[session 1][epoch  1][iter 1700/10022] loss: 0.8819, lr: 1.00e-03
            fg/bg=(14/242), time cost: 34.917199
            rpn_cls: 0.2402, rpn_box: 0.1786, rcnn_cls: 0.2142, rcnn_box 0.1220
[session 1][epoch  1][iter 1800/10022] loss: 0.8147, lr: 1.00e-03
            fg/bg=(22/234), time cost: 34.602410
            rpn_cls: 0.0794, rpn_box: 0.0630, rcnn_cls: 0.1504, rcnn_box 0.2089

继续调优:

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值