问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
if cfg.POOLING_MODE == 'align':
pooled_feat = self.RCNN_roi_align(base_feat, rois.view(-1, 5))
elif cfg.POOLING_MODE == 'pool':
pooled_feat = self.RCNN_roi_pool(base_feat, rois.view(-1, 5))
# feed pooled features to top model
pooled_feat = self._head_to_tail(pooled_feat)
# compute bbox offset
bbox_pred = self.RCNN_bbox_pred(pooled_feat)
if self.training and not self.class_agnostic:
# select the corresponding columns according to roi labels
bbox_pred_view = bbox_pred.view(bbox_pred.size(0), int(bbox_pred.size(1) / 4), 4)
bbox_pred_select = torch.gather(bbox_pred_view, 1, rois_label.view(rois_label.size(0), 1, 1).expand(rois_label.size(0), 1, 4))
bbox_pred = bbox_pred_select.squeeze(1)
# compute object classification probability
cls_score = self.RCNN_cls_score(pooled_feat)
cls_prob = F.softmax(cls_score, 1)
运行结果及报错内容
Traceback (most recent call last):
File "/home/jsj/faster-rcnn.pytorch-pytorch-1.0/trainval_net.py", line 323, in <module>
rois_label = fasterRCNN(im_data, im_info, gt_boxes, num_boxes)
File "/home/jsj/anaconda3/envs/faster-rcnn/lib/python3.6/site-packages/torch/nn/modules/module.py", line 489, in __call__
result = self.forward(*input, **kwargs)
File "/home/jsj/faster-rcnn.pytorch-pytorch-1.0/lib/model/faster_rcnn/faster_rcnn.py", line 83, in forward
pooled_feat = self._head_to_tail(pooled_feat)
**UnboundLocalError: local variable 'pooled_feat' referenced before assignment**
我的解答思路和尝试过的方法
试过在if前pooled_feat=0,但是后续在vgg16文件中会报错'int' object has no attribute 'view'