Giter VIP home page Giter VIP logo

solov2's Introduction

  • 👋 Hi, I’m Yuqing Wang, a PhD student in the University of Hong Kong.
  • 👀 I’m interested in computer vision and generative models.
  • 📫 How to reach me : [email protected].

solov2's People

Contributors

epiphqny avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

solov2's Issues

about test the result file

image
please help me ,when I run my dataset with the test_ins.py ,I got the disorderly code in segmentation,finally,I got the error:

Traceback (most recent call last):
File "tools/test_ins.py", line 257, in
main()
File "tools/test_ins.py", line 235, in main
coco_eval(result_files, eval_types, dataset.coco)
File "/home/JW/SOLOv2-bladder/mmdet/core/evaluation/coco_utils.py", line 49, in coco_eval
cocoEval.evaluate()
File "/home/software/anaconda3/envs/torch/lib/python3.7/site-packages/pycocotools/cocoeval.py", line 141, in evaluate
self._prepare()
File "/home/software/anaconda3/envs/torch/lib/python3.7/site-packages/pycocotools/cocoeval.py", line 106, in _prepare
_toMask(dts, self.cocoDt)
File "/home/software/anaconda3/envs/torch/lib/python3.7/site-packages/pycocotools/cocoeval.py", line 93, in _toMask
rle = coco.annToRLE(ann)
File "/home/software/anaconda3/envs/torch/lib/python3.7/site-packages/pycocotools/coco.py", line 430, in annToRLE
rles = maskUtils.frPyObjects(segm, h, w)
File "pycocotools/_mask.pyx", line 298, in pycocotools._mask.frPyObjects
File "pycocotools/_mask.pyx", line 278, in pycocotools._mask.frUncompressedRLE
ValueError: invalid literal for int() with base 10: 'm2S;W61M6L8H6I5L4K4M3L4M2N2N2N1O1O1O2N1O1O2N1O2O0O1O2N1O101N1O2O000O1O2N1O1O1O1O2N1O1O2N2O2M3M4L2N3N1N2O1O1N101N2O001N10001N101O1N1O2O1N2N2O1N1O2O0O2O1N101N2O0O2O1N1O2O0O100O101N10000O100O10000O10000

inference error

I use the pretrained weight to infer,but got the following error:

Traceback (most recent call last):
File "inference_demo.py", line 15, in
show_result(img, result, model.CLASSES, score_thr=0.25, out_file="demo_out.jpg")
File "/home/work/deep_learning/instance_segmentation/SOLOv2/mmdet/apis/inference.py", line 154, in show_result
for i, bbox in enumerate(bbox_result)
File "/home/work/deep_learning/instance_segmentation/SOLOv2/mmdet/apis/inference.py", line 154, in
for i, bbox in enumerate(bbox_result)
AttributeError: 'tuple' object has no attribute 'shape'

the inference code I use is modified from inference_demo.ipynb
pls,I can train normally.

Res50 result

Hi! thanks for your implementation, I tried to change the backbone to resnet50 with other settings not change, but only get 37.0 AP on val 2017 set, I'm wondering if you also encounter the problem, so only res101 model is released ?

Inference on CPU

After training, is it possible to do inference on CPU? How about the FPS? Thanks!

questions about testing my own data ?

Hi @Epiphqny , I have successfully trained the model on my own dataset which has 5 categories('1', '2', '3', '4', '5'), and the test_ins_vis.py is ok, but the test_ins.py reports an error as follows:

image

After I print dataset.cat_ids[label], it can't be greater than 1, so I directly change data['category_id'] as follows and it's ok:

image

but it reports an another error as follows:

image

Could you give me some advice? thanks.

how to test

I have trained a model with solov2, but how to run the inference model?

what is the problem

When I test my trained weights file,I got the message:

The model and loaded state dict do not match exactly

unexpected key in source state_dict: backbone.conv1.weight, backbone.bn1.weight, backbone.bn1.bias, backbone.bn1.running_mean, backbone.bn1.running_var, backbone.bn1.num_batches_tracked, backbone.layer1.0.conv1.weight, backbone.layer1.0.bn1.weight, backbone.layer1.0.bn1.bias, backbone.layer1.0.bn1.running_mean, backbone.layer1.0.bn1.running_var, backbone.layer1.0.bn1.num_batches_tracked, backbone.layer1.0.conv2.weight, backbone.layer1.0.bn2.weight, backbone.layer1.0.bn2.bias, backbone.layer1.0.bn2.running_mean, backbone.layer1.0.bn2.running_var, backbone.layer1.0.bn2.num_batches_tracked, backbone.layer1.0.conv3.weight, backbone.layer1.0.bn3.weight, backbone.layer1.0.bn3.bias, backbone.layer1.0.bn3.running_mean, backbone.layer1.0.bn3.running_var, backbone.layer1.0.bn3.num_batches_tracked, backbone.layer1.0.downsample.0.weight, backbone.layer1.0.downsample.1.weight, backbone.layer1.0.downsample.1.bias, backbone.layer1.0.downsample.1.running_mean, backbone.layer1.0.downsample.1.running_var, backbone.layer1.0.downsample.1.num_batches_tracked, backbone.layer1.1.conv1.weight, backbone.layer1.1.bn1.weight, backbone.layer1.1.bn1.bias, backbone.layer1.1.bn1.running_mean, backbone.layer1.1.bn1.running_var, backbone.layer1.1.bn1.num_batches_tracked, backbone.layer1.1.conv2.weight, backbone.layer1.1.bn2.weight, backbone.layer1.1.bn2.bias, backbone.layer1.1.bn2.running_mean, backbone.layer1.1.bn2.running_var, backbone.layer1.1.bn2.num_batches_tracked, backbone.layer1.1.conv3.weight, backbone.layer1.1.bn3.weight, backbone.layer1.1.bn3.bias, backbone.layer1.1.bn3.running_mean, backbone.layer1.1.bn3.running_var, backbone.layer1.1.bn3.num_batches_tracked, backbone.layer1.2.conv1.weight, backbone.layer1.2.bn1.weight, backbone.layer1.2.bn1.bias, backbone.layer1.2.bn1.running_mean, backbone.layer1.2.bn1.running_var, backbone.layer1.2.bn1.num_batches_tracked, backbone.layer1.2.conv2.weight, backbone.layer1.2.bn2.weight, backbone.layer1.2.bn2.bias, backbone.layer1.2.bn2.running_mean, backbone.layer1.2.bn2.running_var, backbone.layer1.2.bn2.num_batches_tracked, backbone.layer1.2.conv3.weight, backbone.layer1.2.bn3.weight, backbone.layer1.2.bn3.bias, backbone.layer1.2.bn3.running_mean, backbone.layer1.2.bn3.running_var, backbone.layer1.2.bn3.num_batches_tracked, backbone.layer2.0.conv1.weight, backbone.layer2.0.bn1.weight, backbone.layer2.0.bn1.bias, backbone.layer2.0.bn1.running_mean, backbone.layer2.0.bn1.running_var, backbone.layer2.0.bn1.num_batches_tracked, backbone.layer2.0.conv2.weight, backbone.layer2.0.bn2.weight, backbone.layer2.0.bn2.bias, backbone.layer2.0.bn2.running_mean, backbone.layer2.0.bn2.running_var, backbone.layer2.0.bn2.num_batches_tracked, backbone.layer2.0.conv3.weight, backbone.layer2.0.bn3.weight, backbone.layer2.0.bn3.bias, backbone.layer2.0.bn3.running_mean, backbone.layer2.0.bn3.running_var, backbone.layer2.0.bn3.num_batches_tracked, backbone.layer2.0.downsample.0.weight, backbone.layer2.0.downsample.1.weight, backbone.layer2.0.downsample.1.bias, backbone.layer2.0.downsample.1.running_mean, backbone.layer2.0.downsample.1.running_var, backbone.layer2.0.downsample.1.num_batches_tracked, backbone.layer2.1.conv1.weight, backbone.layer2.1.bn1.weight, backbone.layer2.1.bn1.bias, backbone.layer2.1.bn1.running_mean, backbone.layer2.1.bn1.running_var, backbone.layer2.1.bn1.num_batches_tracked, backbone.layer2.1.conv2.weight, backbone.layer2.1.bn2.weight, backbone.layer2.1.bn2.bias, backbone.layer2.1.bn2.running_mean, backbone.layer2.1.bn2.running_var, backbone.layer2.1.bn2.num_batches_tracked, backbone.layer2.1.conv3.weight, backbone.layer2.1.bn3.weight, backbone.layer2.1.bn3.bias, backbone.layer2.1.bn3.running_mean, backbone.layer2.1.bn3.running_var, backbone.layer2.1.bn3.num_batches_tracked, backbone.layer2.2.conv1.weight, backbone.layer2.2.bn1.weight, backbone.layer2.2.bn1.bias, backbone.layer2.2.bn1.running_mean, backbone.layer2.2.bn1.running_var, backbone.layer2.2.bn1.num_batches_tracked, backbone.layer2.2.conv2.weight, backbone.layer2.2.bn2.weight, backbone.layer2.2.bn2.bias, backbone.layer2.2.bn2.running_mean, backbone.layer2.2.bn2.running_var, backbone.layer2.2.bn2.num_batches_tracked, backbone.layer2.2.conv3.weight, backbone.layer2.2.bn3.weight, backbone.layer2.2.bn3.bias, backbone.layer2.2.bn3.running_mean, backbone.layer2.2.bn3.running_var, backbone.layer2.2.bn3.num_batches_tracked, backbone.layer2.3.conv1.weight, backbone.layer2.3.bn1.weight, backbone.layer2.3.bn1.bias, backbone.layer2.3.bn1.running_mean, backbone.layer2.3.bn1.running_var, backbone.layer2.3.bn1.num_batches_tracked, backbone.layer2.3.conv2.weight, backbone.layer2.3.bn2.weight, backbone.layer2.3.bn2.bias, backbone.layer2.3.bn2.running_mean, backbone.layer2.3.bn2.running_var, backbone.layer2.3.bn2.num_batches_tracked, backbone.layer2.3.conv3.weight, backbone.layer2.3.bn3.weight, backbone.layer2.3.bn3.bias, backbone.layer2.3.bn3.running_mean, backbone.layer2.3.bn3.running_var, backbone.layer2.3.bn3.num_batches_tracked, backbone.layer3.0.conv1.weight, backbone.layer3.0.bn1.weight, backbone.layer3.0.bn1.bias, backbone.layer3.0.bn1.running_mean, backbone.layer3.0.bn1.running_var, backbone.layer3.0.bn1.num_batches_tracked, backbone.layer3.0.conv2.weight, backbone.layer3.0.bn2.weight, backbone.layer3.0.bn2.bias, backbone.layer3.0.bn2.running_mean, backbone.layer3.0.bn2.running_var, backbone.layer3.0.bn2.num_batches_tracked, backbone.layer3.0.conv3.weight, backbone.layer3.0.bn3.weight, backbone.layer3.0.bn3.bias, backbone.layer3.0.bn3.running_mean, backbone.layer3.0.bn3.running_var, backbone.layer3.0.bn3.num_batches_tracked, backbone.layer3.0.downsample.0.weight, backbone.layer3.0.downsample.1.weight, backbone.layer3.0.downsample.1.bias, backbone.layer3.0.downsample.1.running_mean, backbone.layer3.0.downsample.1.running_var, backbone.layer3.0.downsample.1.num_batches_tracked, backbone.layer3.1.conv1.weight, backbone.layer3.1.bn1.weight, backbone.layer3.1.bn1.bias, backbone.layer3.1.bn1.running_mean, backbone.layer3.1.bn1.running_var, backbone.layer3.1.bn1.num_batches_tracked, backbone.layer3.1.conv2.weight, backbone.layer3.1.bn2.weight, backbone.layer3.1.bn2.bias, backbone.layer3.1.bn2.running_mean, backbone.layer3.1.bn2.running_var, backbone.layer3.1.bn2.num_batches_tracked, backbone.layer3.1.conv3.weight, backbone.layer3.1.bn3.weight, backbone.layer3.1.bn3.bias, backbone.layer3.1.bn3.running_mean, backbone.layer3.1.bn3.running_var, backbone.layer3.1.bn3.num_batches_tracked, backbone.layer3.2.conv1.weight, backbone.layer3.2.bn1.weight, backbone.layer3.2.bn1.bias, backbone.layer3.2.bn1.running_mean, backbone.layer3.2.bn1.running_var, backbone.layer3.2.bn1.num_batches_tracked, backbone.layer3.2.conv2.weight, backbone.layer3.2.bn2.weight, backbone.layer3.2.bn2.bias, backbone.layer3.2.bn2.running_mean, backbone.layer3.2.bn2.running_var, backbone.layer3.2.bn2.num_batches_tracked, backbone.layer3.2.conv3.weight, backbone.layer3.2.bn3.weight, backbone.layer3.2.bn3.bias, backbone.layer3.2.bn3.running_mean, backbone.layer3.2.bn3.running_var, backbone.layer3.2.bn3.num_batches_tracked, backbone.layer3.3.conv1.weight, backbone.layer3.3.bn1.weight, backbone.layer3.3.bn1.bias, backbone.layer3.3.bn1.running_mean, backbone.layer3.3.bn1.running_var, backbone.layer3.3.bn1.num_batches_tracked, backbone.layer3.3.conv2.weight, backbone.layer3.3.bn2.weight, backbone.layer3.3.bn2.bias, backbone.layer3.3.bn2.running_mean, backbone.layer3.3.bn2.running_var, backbone.layer3.3.bn2.num_batches_tracked, backbone.layer3.3.conv3.weight, backbone.layer3.3.bn3.weight, backbone.layer3.3.bn3.bias, backbone.layer3.3.bn3.running_mean, backbone.layer3.3.bn3.running_var, backbone.layer3.3.bn3.num_batches_tracked, backbone.layer3.4.conv1.weight, backbone.layer3.4.bn1.weight, backbone.layer3.4.bn1.bias, backbone.layer3.4.bn1.running_mean, backbone.layer3.4.bn1.running_var, backbone.layer3.4.bn1.num_batches_tracked, backbone.layer3.4.conv2.weight, backbone.layer3.4.bn2.weight, backbone.layer3.4.bn2.bias, backbone.layer3.4.bn2.running_mean, backbone.layer3.4.bn2.running_var, backbone.layer3.4.bn2.num_batches_tracked, backbone.layer3.4.conv3.weight, backbone.layer3.4.bn3.weight, backbone.layer3.4.bn3.bias, backbone.layer3.4.bn3.running_mean, backbone.layer3.4.bn3.running_var, backbone.layer3.4.bn3.num_batches_tracked, backbone.layer3.5.conv1.weight, backbone.layer3.5.bn1.weight, backbone.layer3.5.bn1.bias, backbone.layer3.5.bn1.running_mean, backbone.layer3.5.bn1.running_var, backbone.layer3.5.bn1.num_batches_tracked, backbone.layer3.5.conv2.weight, backbone.layer3.5.bn2.weight, backbone.layer3.5.bn2.bias, backbone.layer3.5.bn2.running_mean, backbone.layer3.5.bn2.running_var, backbone.layer3.5.bn2.num_batches_tracked, backbone.layer3.5.conv3.weight, backbone.layer3.5.bn3.weight, backbone.layer3.5.bn3.bias, backbone.layer3.5.bn3.running_mean, backbone.layer3.5.bn3.running_var, backbone.layer3.5.bn3.num_batches_tracked, backbone.layer4.0.conv1.weight, backbone.layer4.0.bn1.weight, backbone.layer4.0.bn1.bias, backbone.layer4.0.bn1.running_mean, backbone.layer4.0.bn1.running_var, backbone.layer4.0.bn1.num_batches_tracked, backbone.layer4.0.conv2.weight, backbone.layer4.0.bn2.weight, backbone.layer4.0.bn2.bias, backbone.layer4.0.bn2.running_mean, backbone.layer4.0.bn2.running_var, backbone.layer4.0.bn2.num_batches_tracked, backbone.layer4.0.conv3.weight, backbone.layer4.0.bn3.weight, backbone.layer4.0.bn3.bias, backbone.layer4.0.bn3.running_mean, backbone.layer4.0.bn3.running_var, backbone.layer4.0.bn3.num_batches_tracked, backbone.layer4.0.downsample.0.weight, backbone.layer4.0.downsample.1.weight, backbone.layer4.0.downsample.1.bias, backbone.layer4.0.downsample.1.running_mean, backbone.layer4.0.downsample.1.running_var, backbone.layer4.0.downsample.1.num_batches_tracked, backbone.layer4.1.conv1.weight, backbone.layer4.1.bn1.weight, backbone.layer4.1.bn1.bias, backbone.layer4.1.bn1.running_mean, backbone.layer4.1.bn1.running_var, backbone.layer4.1.bn1.num_batches_tracked, backbone.layer4.1.conv2.weight, backbone.layer4.1.bn2.weight, backbone.layer4.1.bn2.bias, backbone.layer4.1.bn2.running_mean, backbone.layer4.1.bn2.running_var, backbone.layer4.1.bn2.num_batches_tracked, backbone.layer4.1.conv3.weight, backbone.layer4.1.bn3.weight, backbone.layer4.1.bn3.bias, backbone.layer4.1.bn3.running_mean, backbone.layer4.1.bn3.running_var, backbone.layer4.1.bn3.num_batches_tracked, backbone.layer4.2.conv1.weight, backbone.layer4.2.bn1.weight, backbone.layer4.2.bn1.bias, backbone.layer4.2.bn1.running_mean, backbone.layer4.2.bn1.running_var, backbone.layer4.2.bn1.num_batches_tracked, backbone.layer4.2.conv2.weight, backbone.layer4.2.bn2.weight, backbone.layer4.2.bn2.bias, backbone.layer4.2.bn2.running_mean, backbone.layer4.2.bn2.running_var, backbone.layer4.2.bn2.num_batches_tracked, backbone.layer4.2.conv3.weight, backbone.layer4.2.bn3.weight, backbone.layer4.2.bn3.bias, backbone.layer4.2.bn3.running_mean, backbone.layer4.2.bn3.running_var, backbone.layer4.2.bn3.num_batches_tracked, neck.lateral_convs.0.conv.weight, neck.lateral_convs.0.conv.bias, neck.lateral_convs.1.conv.weight, neck.lateral_convs.1.conv.bias, neck.lateral_convs.2.conv.weight, neck.lateral_convs.2.conv.bias, neck.lateral_convs.3.conv.weight, neck.lateral_convs.3.conv.bias, neck.fpn_convs.0.conv.weight, neck.fpn_convs.0.conv.bias, neck.fpn_convs.1.conv.weight, neck.fpn_convs.1.conv.bias, neck.fpn_convs.2.conv.weight, neck.fpn_convs.2.conv.bias, neck.fpn_convs.3.conv.weight, neck.fpn_convs.3.conv.bias, bbox_head.feature_convs.0.conv0.conv.weight, bbox_head.feature_convs.1.conv0.conv.weight, bbox_head.feature_convs.2.conv0.conv.weight, bbox_head.feature_convs.2.conv1.conv.weight, bbox_head.feature_convs.3.conv0.conv.weight, bbox_head.feature_convs.3.conv1.conv.weight, bbox_head.feature_convs.3.conv2.conv.weight, bbox_head.kernel_convs.0.conv.weight, bbox_head.kernel_convs.0.gn.weight, bbox_head.kernel_convs.0.gn.bias, bbox_head.kernel_convs.1.conv.weight, bbox_head.kernel_convs.1.gn.weight, bbox_head.kernel_convs.1.gn.bias, bbox_head.kernel_convs.2.conv.weight, bbox_head.kernel_convs.2.gn.weight, bbox_head.kernel_convs.2.gn.bias, bbox_head.kernel_convs.3.conv.weight, bbox_head.kernel_convs.3.gn.weight, bbox_head.kernel_convs.3.gn.bias, bbox_head.kernel_convs.4.conv.weight, bbox_head.kernel_convs.4.gn.weight, bbox_head.kernel_convs.4.gn.bias, bbox_head.kernel_convs.5.conv.weight, bbox_head.kernel_convs.5.gn.weight, bbox_head.kernel_convs.5.gn.bias, bbox_head.kernel_convs.6.conv.weight, bbox_head.kernel_convs.6.gn.weight, bbox_head.kernel_convs.6.gn.bias, bbox_head.cate_convs.0.conv.weight, bbox_head.cate_convs.0.gn.weight, bbox_head.cate_convs.0.gn.bias, bbox_head.cate_convs.1.conv.weight, bbox_head.cate_convs.1.gn.weight, bbox_head.cate_convs.1.gn.bias, bbox_head.cate_convs.2.conv.weight, bbox_head.cate_convs.2.gn.weight, bbox_head.cate_convs.2.gn.bias, bbox_head.cate_convs.3.conv.weight, bbox_head.cate_convs.3.gn.weight, bbox_head.cate_convs.3.gn.bias, bbox_head.cate_convs.4.conv.weight, bbox_head.cate_convs.4.gn.weight, bbox_head.cate_convs.4.gn.bias, bbox_head.cate_convs.5.conv.weight, bbox_head.cate_convs.5.gn.weight, bbox_head.cate_convs.5.gn.bias, bbox_head.cate_convs.6.conv.weight, bbox_head.cate_convs.6.gn.weight, bbox_head.cate_convs.6.gn.bias, bbox_head.solo_kernel.weight, bbox_head.solo_kernel.bias, bbox_head.solo_cate.weight, bbox_head.solo_cate.bias, bbox_head.solo_mask.conv.weight, bbox_head.solo_mask.gn.weight, bbox_head.solo_mask.gn.bias

missing keys in source state_dict: module.module.module.module.backbone.conv1.weight, module.module.module.module.backbone.bn1.weight, module.module.module.module.backbone.bn1.bias, module.module.module.module.backbone.bn1.running_mean, module.module.module.module.backbone.bn1.running_var, module.module.module.module.backbone.layer1.0.conv1.weight, module.module.module.module.backbone.layer1.0.bn1.weight, module.module.module.module.backbone.layer1.0.bn1.bias, module.module.module.module.backbone.layer1.0.bn1.running_mean, module.module.module.module.backbone.layer1.0.bn1.running_var, module.module.module.module.backbone.layer1.0.conv2.weight, module.module.module.module.backbone.layer1.0.bn2.weight, module.module.module.module.backbone.layer1.0.bn2.bias, module.module.module.module.backbone.layer1.0.bn2.running_mean, module.module.module.module.backbone.layer1.0.bn2.running_var, module.module.module.module.backbone.layer1.0.conv3.weight, module.module.module.module.backbone.layer1.0.bn3.weight, module.module.module.module.backbone.layer1.0.bn3.bias, module.module.module.module.backbone.layer1.0.bn3.running_mean, module.module.module.module.backbone.layer1.0.bn3.running_var, module.module.module.module.backbone.layer1.0.downsample.0.weight, module.module.module.module.backbone.layer1.0.downsample.1.weight, module.module.module.module.backbone.layer1.0.downsample.1.bias, module.module.module.module.backbone.layer1.0.downsample.1.running_mean, module.module.module.module.backbone.layer1.0.downsample.1.running_var, module.module.module.module.backbone.layer1.1.conv1.weight, module.module.module.module.backbone.layer1.1.bn1.weight, module.module.module.module.backbone.layer1.1.bn1.bias, module.module.module.module.backbone.layer1.1.bn1.running_mean, module.module.module.module.backbone.layer1.1.bn1.running_var, module.module.module.module.backbone.layer1.1.conv2.weight, module.module.module.module.backbone.layer1.1.bn2.weight, module.module.module.module.backbone.layer1.1.bn2.bias, module.module.module.module.backbone.layer1.1.bn2.running_mean, module.module.module.module.backbone.layer1.1.bn2.running_var, module.module.module.module.backbone.layer1.1.conv3.weight, module.module.module.module.backbone.layer1.1.bn3.weight, module.module.module.module.backbone.layer1.1.bn3.bias, module.module.module.module.backbone.layer1.1.bn3.running_mean, module.module.module.module.backbone.layer1.1.bn3.running_var, module.module.module.module.backbone.layer1.2.conv1.weight, module.module.module.module.backbone.layer1.2.bn1.weight, module.module.module.module.backbone.layer1.2.bn1.bias, module.module.module.module.backbone.layer1.2.bn1.running_mean, module.module.module.module.backbone.layer1.2.bn1.running_var, module.module.module.module.backbone.layer1.2.conv2.weight, module.module.module.module.backbone.layer1.2.bn2.weight, module.module.module.module.backbone.layer1.2.bn2.bias, module.module.module.module.backbone.layer1.2.bn2.running_mean, module.module.module.module.backbone.layer1.2.bn2.running_var, module.module.module.module.backbone.layer1.2.conv3.weight, module.module.module.module.backbone.layer1.2.bn3.weight, module.module.module.module.backbone.layer1.2.bn3.bias, module.module.module.module.backbone.layer1.2.bn3.running_mean, module.module.module.module.backbone.layer1.2.bn3.running_var, module.module.module.module.backbone.layer2.0.conv1.weight, module.module.module.module.backbone.layer2.0.bn1.weight, module.module.module.module.backbone.layer2.0.bn1.bias, module.module.module.module.backbone.layer2.0.bn1.running_mean, module.module.module.module.backbone.layer2.0.bn1.running_var, module.module.module.module.backbone.layer2.0.conv2.weight, module.module.module.module.backbone.layer2.0.bn2.weight, module.module.module.module.backbone.layer2.0.bn2.bias, module.module.module.module.backbone.layer2.0.bn2.running_mean, module.module.module.module.backbone.layer2.0.bn2.running_var, module.module.module.module.backbone.layer2.0.conv3.weight, module.module.module.module.backbone.layer2.0.bn3.weight, module.module.module.module.backbone.layer2.0.bn3.bias, module.module.module.module.backbone.layer2.0.bn3.running_mean, module.module.module.module.backbone.layer2.0.bn3.running_var, module.module.module.module.backbone.layer2.0.downsample.0.weight, module.module.module.module.backbone.layer2.0.downsample.1.weight, module.module.module.module.backbone.layer2.0.downsample.1.bias, module.module.module.module.backbone.layer2.0.downsample.1.running_mean, module.module.module.module.backbone.layer2.0.downsample.1.running_var, module.module.module.module.backbone.layer2.1.conv1.weight, module.module.module.module.backbone.layer2.1.bn1.weight, module.module.module.module.backbone.layer2.1.bn1.bias, module.module.module.module.backbone.layer2.1.bn1.running_mean, module.module.module.module.backbone.layer2.1.bn1.running_var, module.module.module.module.backbone.layer2.1.conv2.weight, module.module.module.module.backbone.layer2.1.bn2.weight, module.module.module.module.backbone.layer2.1.bn2.bias, module.module.module.module.backbone.layer2.1.bn2.running_mean, module.module.module.module.backbone.layer2.1.bn2.running_var, module.module.module.module.backbone.layer2.1.conv3.weight, module.module.module.module.backbone.layer2.1.bn3.weight, module.module.module.module.backbone.layer2.1.bn3.bias, module.module.module.module.backbone.layer2.1.bn3.running_mean, module.module.module.module.backbone.layer2.1.bn3.running_var, module.module.module.module.backbone.layer2.2.conv1.weight, module.module.module.module.backbone.layer2.2.bn1.weight, module.module.module.module.backbone.layer2.2.bn1.bias, module.module.module.module.backbone.layer2.2.bn1.running_mean, module.module.module.module.backbone.layer2.2.bn1.running_var, module.module.module.module.backbone.layer2.2.conv2.weight, module.module.module.module.backbone.layer2.2.bn2.weight, module.module.module.module.backbone.layer2.2.bn2.bias, module.module.module.module.backbone.layer2.2.bn2.running_mean, module.module.module.module.backbone.layer2.2.bn2.running_var, module.module.module.module.backbone.layer2.2.conv3.weight, module.module.module.module.backbone.layer2.2.bn3.weight, module.module.module.module.backbone.layer2.2.bn3.bias, module.module.module.module.backbone.layer2.2.bn3.running_mean, module.module.module.module.backbone.layer2.2.bn3.running_var, module.module.module.module.backbone.layer2.3.conv1.weight, module.module.module.module.backbone.layer2.3.bn1.weight, module.module.module.module.backbone.layer2.3.bn1.bias, module.module.module.module.backbone.layer2.3.bn1.running_mean, module.module.module.module.backbone.layer2.3.bn1.running_var, module.module.module.module.backbone.layer2.3.conv2.weight, module.module.module.module.backbone.layer2.3.bn2.weight, module.module.module.module.backbone.layer2.3.bn2.bias, module.module.module.module.backbone.layer2.3.bn2.running_mean, module.module.module.module.backbone.layer2.3.bn2.running_var, module.module.module.module.backbone.layer2.3.conv3.weight, module.module.module.module.backbone.layer2.3.bn3.weight, module.module.module.module.backbone.layer2.3.bn3.bias, module.module.module.module.backbone.layer2.3.bn3.running_mean, module.module.module.module.backbone.layer2.3.bn3.running_var, module.module.module.module.backbone.layer3.0.conv1.weight, module.module.module.module.backbone.layer3.0.bn1.weight, module.module.module.module.backbone.layer3.0.bn1.bias, module.module.module.module.backbone.layer3.0.bn1.running_mean, module.module.module.module.backbone.layer3.0.bn1.running_var, module.module.module.module.backbone.layer3.0.conv2.weight, module.module.module.module.backbone.layer3.0.bn2.weight, module.module.module.module.backbone.layer3.0.bn2.bias, module.module.module.module.backbone.layer3.0.bn2.running_mean, module.module.module.module.backbone.layer3.0.bn2.running_var, module.module.module.module.backbone.layer3.0.conv3.weight, module.module.module.module.backbone.layer3.0.bn3.weight, module.module.module.module.backbone.layer3.0.bn3.bias, module.module.module.module.backbone.layer3.0.bn3.running_mean, module.module.module.module.backbone.layer3.0.bn3.running_var, module.module.module.module.backbone.layer3.0.downsample.0.weight, module.module.module.module.backbone.layer3.0.downsample.1.weight, module.module.module.module.backbone.layer3.0.downsample.1.bias, module.module.module.module.backbone.layer3.0.downsample.1.running_mean, module.module.module.module.backbone.layer3.0.downsample.1.running_var, module.module.module.module.backbone.layer3.1.conv1.weight, module.module.module.module.backbone.layer3.1.bn1.weight, module.module.module.module.backbone.layer3.1.bn1.bias, module.module.module.module.backbone.layer3.1.bn1.running_mean, module.module.module.module.backbone.layer3.1.bn1.running_var, module.module.module.module.backbone.layer3.1.conv2.weight, module.module.module.module.backbone.layer3.1.bn2.weight, module.module.module.module.backbone.layer3.1.bn2.bias, module.module.module.module.backbone.layer3.1.bn2.running_mean, module.module.module.module.backbone.layer3.1.bn2.running_var, module.module.module.module.backbone.layer3.1.conv3.weight, module.module.module.module.backbone.layer3.1.bn3.weight, module.module.module.module.backbone.layer3.1.bn3.bias, module.module.module.module.backbone.layer3.1.bn3.running_mean, module.module.module.module.backbone.layer3.1.bn3.running_var, module.module.module.module.backbone.layer3.2.conv1.weight, module.module.module.module.backbone.layer3.2.bn1.weight, module.module.module.module.backbone.layer3.2.bn1.bias, module.module.module.module.backbone.layer3.2.bn1.running_mean, module.module.module.module.backbone.layer3.2.bn1.running_var, module.module.module.module.backbone.layer3.2.conv2.weight, module.module.module.module.backbone.layer3.2.bn2.weight, module.module.module.module.backbone.layer3.2.bn2.bias, module.module.module.module.backbone.layer3.2.bn2.running_mean, module.module.module.module.backbone.layer3.2.bn2.running_var, module.module.module.module.backbone.layer3.2.conv3.weight, module.module.module.module.backbone.layer3.2.bn3.weight, module.module.module.module.backbone.layer3.2.bn3.bias, module.module.module.module.backbone.layer3.2.bn3.running_mean, module.module.module.module.backbone.layer3.2.bn3.running_var, module.module.module.module.backbone.layer3.3.conv1.weight, module.module.module.module.backbone.layer3.3.bn1.weight, module.module.module.module.backbone.layer3.3.bn1.bias, module.module.module.module.backbone.layer3.3.bn1.running_mean, module.module.module.module.backbone.layer3.3.bn1.running_var, module.module.module.module.backbone.layer3.3.conv2.weight, module.module.module.module.backbone.layer3.3.bn2.weight, module.module.module.module.backbone.layer3.3.bn2.bias, module.module.module.module.backbone.layer3.3.bn2.running_mean, module.module.module.module.backbone.layer3.3.bn2.running_var, module.module.module.module.backbone.layer3.3.conv3.weight, module.module.module.module.backbone.layer3.3.bn3.weight, module.module.module.module.backbone.layer3.3.bn3.bias, module.module.module.module.backbone.layer3.3.bn3.running_mean, module.module.module.module.backbone.layer3.3.bn3.running_var, module.module.module.module.backbone.layer3.4.conv1.weight, module.module.module.module.backbone.layer3.4.bn1.weight, module.module.module.module.backbone.layer3.4.bn1.bias, module.module.module.module.backbone.layer3.4.bn1.running_mean, module.module.module.module.backbone.layer3.4.bn1.running_var, module.module.module.module.backbone.layer3.4.conv2.weight, module.module.module.module.backbone.layer3.4.bn2.weight, module.module.module.module.backbone.layer3.4.bn2.bias, module.module.module.module.backbone.layer3.4.bn2.running_mean, module.module.module.module.backbone.layer3.4.bn2.running_var, module.module.module.module.backbone.layer3.4.conv3.weight, module.module.module.module.backbone.layer3.4.bn3.weight, module.module.module.module.backbone.layer3.4.bn3.bias, module.module.module.module.backbone.layer3.4.bn3.running_mean, module.module.module.module.backbone.layer3.4.bn3.running_var, module.module.module.module.backbone.layer3.5.conv1.weight, module.module.module.module.backbone.layer3.5.bn1.weight, module.module.module.module.backbone.layer3.5.bn1.bias, module.module.module.module.backbone.layer3.5.bn1.running_mean, module.module.module.module.backbone.layer3.5.bn1.running_var, module.module.module.module.backbone.layer3.5.conv2.weight, module.module.module.module.backbone.layer3.5.bn2.weight, module.module.module.module.backbone.layer3.5.bn2.bias, module.module.module.module.backbone.layer3.5.bn2.running_mean, module.module.module.module.backbone.layer3.5.bn2.running_var, module.module.module.module.backbone.layer3.5.conv3.weight, module.module.module.module.backbone.layer3.5.bn3.weight, module.module.module.module.backbone.layer3.5.bn3.bias, module.module.module.module.backbone.layer3.5.bn3.running_mean, module.module.module.module.backbone.layer3.5.bn3.running_var, module.module.module.module.backbone.layer4.0.conv1.weight, module.module.module.module.backbone.layer4.0.bn1.weight, module.module.module.module.backbone.layer4.0.bn1.bias, module.module.module.module.backbone.layer4.0.bn1.running_mean, module.module.module.module.backbone.layer4.0.bn1.running_var, module.module.module.module.backbone.layer4.0.conv2.weight, module.module.module.module.backbone.layer4.0.bn2.weight, module.module.module.module.backbone.layer4.0.bn2.bias, module.module.module.module.backbone.layer4.0.bn2.running_mean, module.module.module.module.backbone.layer4.0.bn2.running_var, module.module.module.module.backbone.layer4.0.conv3.weight, module.module.module.module.backbone.layer4.0.bn3.weight, module.module.module.module.backbone.layer4.0.bn3.bias, module.module.module.module.backbone.layer4.0.bn3.running_mean, module.module.module.module.backbone.layer4.0.bn3.running_var, module.module.module.module.backbone.layer4.0.downsample.0.weight, module.module.module.module.backbone.layer4.0.downsample.1.weight, module.module.module.module.backbone.layer4.0.downsample.1.bias, module.module.module.module.backbone.layer4.0.downsample.1.running_mean, module.module.module.module.backbone.layer4.0.downsample.1.running_var, module.module.module.module.backbone.layer4.1.conv1.weight, module.module.module.module.backbone.layer4.1.bn1.weight, module.module.module.module.backbone.layer4.1.bn1.bias, module.module.module.module.backbone.layer4.1.bn1.running_mean, module.module.module.module.backbone.layer4.1.bn1.running_var, module.module.module.module.backbone.layer4.1.conv2.weight, module.module.module.module.backbone.layer4.1.bn2.weight, module.module.module.module.backbone.layer4.1.bn2.bias, module.module.module.module.backbone.layer4.1.bn2.running_mean, module.module.module.module.backbone.layer4.1.bn2.running_var, module.module.module.module.backbone.layer4.1.conv3.weight, module.module.module.module.backbone.layer4.1.bn3.weight, module.module.module.module.backbone.layer4.1.bn3.bias, module.module.module.module.backbone.layer4.1.bn3.running_mean, module.module.module.module.backbone.layer4.1.bn3.running_var, module.module.module.module.backbone.layer4.2.conv1.weight, module.module.module.module.backbone.layer4.2.bn1.weight, module.module.module.module.backbone.layer4.2.bn1.bias, module.module.module.module.backbone.layer4.2.bn1.running_mean, module.module.module.module.backbone.layer4.2.bn1.running_var, module.module.module.module.backbone.layer4.2.conv2.weight, module.module.module.module.backbone.layer4.2.bn2.weight, module.module.module.module.backbone.layer4.2.bn2.bias, module.module.module.module.backbone.layer4.2.bn2.running_mean, module.module.module.module.backbone.layer4.2.bn2.running_var, module.module.module.module.backbone.layer4.2.conv3.weight, module.module.module.module.backbone.layer4.2.bn3.weight, module.module.module.module.backbone.layer4.2.bn3.bias, module.module.module.module.backbone.layer4.2.bn3.running_mean, module.module.module.module.backbone.layer4.2.bn3.running_var, module.module.module.module.neck.lateral_convs.0.conv.weight, module.module.module.module.neck.lateral_convs.0.conv.bias, module.module.module.module.neck.lateral_convs.1.conv.weight, module.module.module.module.neck.lateral_convs.1.conv.bias, module.module.module.module.neck.lateral_convs.2.conv.weight, module.module.module.module.neck.lateral_convs.2.conv.bias, module.module.module.module.neck.lateral_convs.3.conv.weight, module.module.module.module.neck.lateral_convs.3.conv.bias, module.module.module.module.neck.fpn_convs.0.conv.weight, module.module.module.module.neck.fpn_convs.0.conv.bias, module.module.module.module.neck.fpn_convs.1.conv.weight, module.module.module.module.neck.fpn_convs.1.conv.bias, module.module.module.module.neck.fpn_convs.2.conv.weight, module.module.module.module.neck.fpn_convs.2.conv.bias, module.module.module.module.neck.fpn_convs.3.conv.weight, module.module.module.module.neck.fpn_convs.3.conv.bias, module.module.module.module.bbox_head.feature_convs.0.conv0.conv.weight, module.module.module.module.bbox_head.feature_convs.1.conv0.conv.weight, module.module.module.module.bbox_head.feature_convs.2.conv0.conv.weight, module.module.module.module.bbox_head.feature_convs.2.conv1.conv.weight, module.module.module.module.bbox_head.feature_convs.3.conv0.conv.weight, module.module.module.module.bbox_head.feature_convs.3.conv1.conv.weight, module.module.module.module.bbox_head.feature_convs.3.conv2.conv.weight, module.module.module.module.bbox_head.kernel_convs.0.conv.weight, module.module.module.module.bbox_head.kernel_convs.0.gn.weight, module.module.module.module.bbox_head.kernel_convs.0.gn.bias, module.module.module.module.bbox_head.kernel_convs.1.conv.weight, module.module.module.module.bbox_head.kernel_convs.1.gn.weight, module.module.module.module.bbox_head.kernel_convs.1.gn.bias, module.module.module.module.bbox_head.kernel_convs.2.conv.weight, module.module.module.module.bbox_head.kernel_convs.2.gn.weight, module.module.module.module.bbox_head.kernel_convs.2.gn.bias, module.module.module.module.bbox_head.kernel_convs.3.conv.weight, module.module.module.module.bbox_head.kernel_convs.3.gn.weight, module.module.module.module.bbox_head.kernel_convs.3.gn.bias, module.module.module.module.bbox_head.kernel_convs.4.conv.weight, module.module.module.module.bbox_head.kernel_convs.4.gn.weight, module.module.module.module.bbox_head.kernel_convs.4.gn.bias, module.module.module.module.bbox_head.kernel_convs.5.conv.weight, module.module.module.module.bbox_head.kernel_convs.5.gn.weight, module.module.module.module.bbox_head.kernel_convs.5.gn.bias, module.module.module.module.bbox_head.kernel_convs.6.conv.weight, module.module.module.module.bbox_head.kernel_convs.6.gn.weight, module.module.module.module.bbox_head.kernel_convs.6.gn.bias, module.module.module.module.bbox_head.cate_convs.0.conv.weight, module.module.module.module.bbox_head.cate_convs.0.gn.weight, module.module.module.module.bbox_head.cate_convs.0.gn.bias, module.module.module.module.bbox_head.cate_convs.1.conv.weight, module.module.module.module.bbox_head.cate_convs.1.gn.weight, module.module.module.module.bbox_head.cate_convs.1.gn.bias, module.module.module.module.bbox_head.cate_convs.2.conv.weight, module.module.module.module.bbox_head.cate_convs.2.gn.weight, module.module.module.module.bbox_head.cate_convs.2.gn.bias, module.module.module.module.bbox_head.cate_convs.3.conv.weight, module.module.module.module.bbox_head.cate_convs.3.gn.weight, module.module.module.module.bbox_head.cate_convs.3.gn.bias, module.module.module.module.bbox_head.cate_convs.4.conv.weight, module.module.module.module.bbox_head.cate_convs.4.gn.weight, module.module.module.module.bbox_head.cate_convs.4.gn.bias, module.module.module.module.bbox_head.cate_convs.5.conv.weight, module.module.module.module.bbox_head.cate_convs.5.gn.weight, module.module.module.module.bbox_head.cate_convs.5.gn.bias, module.module.module.module.bbox_head.cate_convs.6.conv.weight, module.module.module.module.bbox_head.cate_convs.6.gn.weight, module.module.module.module.bbox_head.cate_convs.6.gn.bias, module.module.module.module.bbox_head.solo_kernel.weight, module.module.module.module.bbox_head.solo_kernel.bias, module.module.module.module.bbox_head.solo_cate.weight, module.module.module.module.bbox_head.solo_cate.bias, module.module.module.module.bbox_head.solo_mask.conv.weight, module.module.module.module.bbox_head.solo_mask.gn.weight, module.module.module.module.bbox_head.solo_mask.gn.bias
I don't know how to fix it .please help me

about gt label

in 'mmdet/models/anchor_heads/solov2_head.py', function 'solov2_target_single' generate ground truth label, but I find that,
when initial cate_label, the value is 0:
cate_label = torch.zeros([num_grid, num_grid], dtype=torch.int64, device=device)
and then update cate_label, if center in that grid:
cate_label[top:(down+1), left:(right+1)] = gt_label
but the class label is initialized with 0th class, this will product a lot of 0th class label.
I quite confused. Could anyone help me? Thx

Polt the figure of mask feature behavior.

Thanks for the great work!
I want to know how to get the figure of mask feature behavior in the paper? Can you tell the detailed information for the code implementation?
Thanks a lot.

training batch size

Hi, here the config uses batch size 4 for training, so in total 32 for 8-gpu machine, but batch size in solov2 paper is 16, I'm wondering if bs=16 has lower performance, or similar with bs=32 and you just want to training faster? Thanks !

Problems about Init Weights

I find there is a different weight_init manner:

        for m in self.feature_convs:
            s=len(m)
            for i in range(s):
                if i%2 == 0:
                    normal_init(m[i].conv, std=0.01)

Could you tell me what's the reason for this manner?

License is incorrect

I'm not the author, but this descends from then original mmdet based SOLO code that is BSD licensed with an academic only clause.

fps testing

Hi, thanks for sharing the implementation! I'm wondering if the fps is reproducible compared to the paper?

Setup instruction does not work with training instruction

I have installed the following versions according to
SOLO installation instructions
using the settings from Dockerfile
requesting
pytorch 1.3
cuda 10.1
in an Anaconda environment:

According to torchvision setup
I have used pytorch 1.3.1 along with torchvision 0.4.2

Then I have mapped MS COCO (2017) into data/coco

According to the training instruction
I start training with
python tools/train.py configs/solov2/solov2_r101_3x.py
which results in the following
ERROR1: ModuleNotFoundError: No module named 'mmcv.cnn.weight_init'

(solo-pt131-cu101) dig_ccm@digs113:~/projects/solov2$ python tools/train.py configs/solov2/solov2_r101_3x.py             
Traceback (most recent call last):
  File "tools/train.py", line 13, in <module>
    from mmdet.apis import set_random_seed, train_detector
  File "/home/dig_ccm/projects/solov2/mmdet/apis/__init__.py", line 1, in <module>
    from .inference import (async_inference_detector, inference_detector,
  File "/home/dig_ccm/projects/solov2/mmdet/apis/inference.py", line 13, in <module>
    from mmdet.models import build_detector
  File "/home/dig_ccm/projects/solov2/mmdet/models/__init__.py", line 3, in <module>
    from .bbox_heads import *  # noqa: F401,F403
  File "/home/dig_ccm/projects/solov2/mmdet/models/bbox_heads/__init__.py", line 3, in <module>
    from .double_bbox_head import DoubleConvFCBBoxHead
  File "/home/dig_ccm/projects/solov2/mmdet/models/bbox_heads/double_bbox_head.py", line 2, in <module>
    from mmcv.cnn.weight_init import normal_init, xavier_init
ModuleNotFoundError: No module named 'mmcv.cnn.weight_init'

For a quick fix I have changed mmcv.cnn.weight_init to mmcv.cnn
in
double_bbox_head.py
and
hrfpn.py

Starting training again with
python tools/train.py configs/solov2/solov2_r101_3x.py

which comes up with a warning:
unexpected key in source state_dict: fc.weight, fc.bias

and then fails with
TypeError: impad() takes 1 positional argument but 2 positional arguments (and 1 keyword-only argument) were given
Segmentation fault

Can someone please give me a hint, what's wrong here?

question about test-dev result

Hi Yuqing, I upload the result of the pertained model to test-dev of 2019 server (https://competitions.codalab.org/competitions/20796#participate), but only got 39.3
Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.393
Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.606
Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.423
Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.168
Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.425
Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.569
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.324
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.503
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.526
Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.282
Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.583
Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.727

I'm wondering if you can share the server you used for test-dev evaluation? because I cannot find test-dev 2017 version server

TypeError: object of type 'int' has no len()

我将COCO数据集的相关输入更改为了自己的训练集的相关参数,会有如下报错:
`2020-04-15 15:25:19,647 - mmdet - INFO - Distributed training: False
2020-04-15 15:25:19,647 - mmdet - INFO - MMDetection Version: 1.0.0+unknown
2020-04-15 15:25:19,647 - mmdet - INFO - Config:

model settings

model = dict(
type='SOLO',
pretrained='torchvision://resnet50',
backbone=dict(
type='ResNet',
depth=50,
num_stages=4,
out_indices=(0, 1, 2, 3), # C2, C3, C4, C5
frozen_stages=1,
style='pytorch'),
neck=dict(
type='FPN',
in_channels=[256, 512, 1024, 2048],
out_channels=256,
start_level=0,
num_outs=5),
bbox_head=dict(
type='SOLOV2Head',
# 绫诲埆
num_classes=35,
in_channels=256,
stacked_convs=7,
seg_feat_channels=256,
strides=[8, 8, 16, 32, 32],
scale_ranges=((1, 96), (48, 192), (96, 384), (192, 768), (384, 2048)),
sigma=0.2,
num_grids=[40, 36, 24, 16, 12],
cate_down_pos=0,
with_deform=False,
loss_ins=dict(
type='DiceLoss',
use_sigmoid=True,
loss_weight=3.0),
loss_cate=dict(
type='FocalLoss',
use_sigmoid=True,
gamma=2.0,
alpha=0.25,
loss_weight=1.0),
))

training and testing settings

train_cfg = dict()
test_cfg = dict(
nms_pre=500,
score_thr=0.1,
mask_thr=0.5,
update_thr=0.05,
kernel='gaussian', # gaussian/linear
sigma=2.0,
max_per_img=100)

dataset settings

dataset_type = 'CocoDataset'
custom_data = 'D:\Dataset\bladder\bladder_20200402\'
img_norm_cfg = dict(
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)
train_pipeline = [
dict(type='LoadImageFromFile'),
dict(type='LoadAnnotations', with_bbox=True, with_mask=True),
dict(type='Resize',
img_scale=[(1333, 800), (1333, 768), (1333, 736),
(1333, 704), (1333, 672), (1333, 640)],

     multiscale_mode='value',
     keep_ratio=True),
dict(type='RandomFlip', flip_ratio=0.5),
dict(type='Normalize', **img_norm_cfg),
dict(type='Pad', size_divisor=32),
dict(type='DefaultFormatBundle'),
dict(type='Collect', keys=['img', 'gt_bboxes', 'gt_labels', 'gt_masks']),

]
test_pipeline = [
dict(type='LoadImageFromFile'),
dict(
type='MultiScaleFlipAug',
img_scale=(1333, 800),

    flip=False,
    transforms=[
        dict(type='Resize', keep_ratio=True),
        dict(type='RandomFlip'),
        dict(type='Normalize', **img_norm_cfg),
        dict(type='Pad', size_divisor=32),
        dict(type='ImageToTensor', keys=['img']),
        dict(type='Collect', keys=['img']),
    ])

]

data = dict(
imgs_per_gpu=2,
workers_per_gpu=2,
train=dict(
type=dataset_type,
ann_file=custom_data + 'annotations\train.json',
img_prefix=custom_data + 'image\',
pipeline=train_pipeline),
val=dict(
type=dataset_type,
ann_file=custom_data + 'annotations\val.json',
img_prefix=custom_data + 'image\',
pipeline=test_pipeline),
test=dict(
type=dataset_type,
ann_file=custom_data + 'annotations\val.json',
img_prefix=custom_data + 'image\',
pipeline=test_pipeline))

optimizer

optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)
optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2))

learning policy

lr_config = dict(
policy='step',
warmup='linear',
warmup_iters=500,
warmup_ratio=1.0 / 3,
step=[27, 33])
checkpoint_config = dict(interval=1)

yapf:disable

log_config = dict(
interval=50,
hooks=[
dict(type='TextLoggerHook'),
# dict(type='TensorboardLoggerHook')
])

yapf:enable

runtime settings

total_epochs = 36
device_ids = range(8)
dist_params = dict(backend='nccl')
log_level = 'INFO'
work_dir = './work_dirs/solo_r50_3x'
load_from = None
resume_from = None
workflow = [('train', 1)]

2020-04-15 15:25:20,054 - mmdet - INFO - load model from: torchvision://resnet50
2020-04-15 15:25:20,316 - mmdet - WARNING - The model and loaded state dict do not match exactly

unexpected key in source state_dict: fc.weight, fc.bias

loading annotations into memory...
Done (t=0.30s)
creating index...
index created!
2020-04-15 15:25:22,619 - mmdet - INFO - Start running, host: Administrator@SC-202003270809, work_dir: D:\workspace\SOLO\SOLOv2-master\tools\work_dirs\solo_r50_3x
2020-04-15 15:25:22,619 - mmdet - INFO - workflow: [('train', 1)], max: 36 epochs
Traceback (most recent call last):
File "D:/workspace/SOLO/SOLOv2-master/tools/train.py", line 125, in
main()
File "D:/workspace/SOLO/SOLOv2-master/tools/train.py", line 121, in main
timestamp=timestamp)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\apis\train.py", line 111, in train_detector
timestamp=timestamp)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\apis\train.py", line 297, in _non_dist_train
runner.run(data_loaders, cfg.workflow, cfg.total_epochs)
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\mmcv\runner\runner.py", line 364, in run
epoch_runner(data_loaders[i], **kwargs)
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\mmcv\runner\runner.py", line 264, in train
for i, data_batch in enumerate(data_loader):
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data\dataloader.py", line 345, in next
data = self._next_data()
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data\dataloader.py", line 856, in _next_data
return self._process_data(data)
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data\dataloader.py", line 881, in _process_data
data.reraise()
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch_utils.py", line 394, in reraise
raise self.exc_type(msg)
TypeError: Caught TypeError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data_utils\worker.py", line 178, in _worker_loop
data = fetcher.fetch(index)
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data_utils\fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "C:\ProgramData\Anaconda3\envs\torch\lib\site-packages\torch\utils\data_utils\fetch.py", line 44, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\custom.py", line 131, in getitem
data = self.prepare_train_img(idx)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\custom.py", line 144, in prepare_train_img
return self.pipeline(results)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\pipelines\compose.py", line 24, in call
data = t(data)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\pipelines\loading.py", line 106, in call
results = self._load_masks(results)
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\pipelines\loading.py", line 86, in _load_masks
gt_masks = [self._poly2mask(mask, h, w) for mask in gt_masks]
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\pipelines\loading.py", line 86, in
gt_masks = [self._poly2mask(mask, h, w) for mask in gt_masks]
File "D:\workspace\SOLO\SOLOv2-master\mmdet\datasets\pipelines\loading.py", line 71, in _poly2mask
rles = maskUtils.frPyObjects(mask_ann, img_h, img_w)
File "pycocotools_mask.pyx", line 292, in pycocotools._mask.frPyObjects
TypeError: object of type 'int' has no len()`

我自己的数据集是按照COCO数据集标准来的,可以读取图片和对应MASK,请问您遇到过这样的情况吗,这个项目适用于训练自己的数据集吗,谢谢!

Training my data

When I used the Solov2 Training my data ,i got the error:
Screenshot from 2020-06-04 09-30-28
Screenshot from 2020-06-04 09-32-15
please help me , I don't know where is wrong. I didn't change the code ,only change the config file.

Training time

Could you please tell me how long it takes for you to train the model for 36 epochs? I ran on 2 gpus and batch size of per gpu is 8.

Training resnet50 backbone on 2 GPUs

what's your loss will to be? I trained all loss to 1.0 but the result is totally wrong:

image

Also the category seems totally miss classified. Do u know which problem could be?

I test your model and only get 0.385 mAP.

python tools/test_ins.py configs/solov2/solov2_r101_3x.py solov2.pth --show --out results_solo.pkl --eval segm

loading annotations into memory...
Done (t=0.51s)
creating index...
index created!
[                                                  ] 0/5000, elapsed: 0s, ETA:/home/user/miniconda/envs/pytorch1.3/lib/python3.7/site-packages/torch/nn/functional.py:2494: UserWarning: Default ups
ampling behavior when mode=bilinear is changed to align_corners=False since 0.4.0. Please specify align_corners=True if the old behavior is desired. See the documentation of nn.Upsample for detail
s.
  "See the documentation of nn.Upsample for details.".format(mode))
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] 5000/5000, 6.9 task/s, elapsed: 722s, ETA:     0s
writing results to results_solo.pkl
Starting evaluate segm
Loading and preparing results...
DONE (t=5.71s)
creating index...
index created!
Running per image evaluation...
Evaluate annotation type *segm*
DONE (t=49.41s).
Accumulating evaluation results...
DONE (t=5.83s).
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.385
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=100 ] = 0.596
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=100 ] = 0.416
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.163
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.430
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.579
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=  1 ] = 0.317
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets= 10 ] = 0.494
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.517
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.275
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.576
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.722
sys.platform: linux
Python: 3.7.7 (default, Mar 26 2020, 15:48:22) [GCC 7.3.0]
CUDA available: True
CUDA_HOME: /usr/local/cuda
NVCC: Cuda compilation tools, release 10.1, V10.1.168
GPU 0: TITAN Xp COLLECTORS EDITION
GPU 1,2,3: TITAN Xp
GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
PyTorch: 1.3.1
PyTorch compiling details: PyTorch built with:
  - GCC 7.3
  - Intel(R) Math Kernel Library Version 2019.0.4 Product Build 20190411 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v0.20.5 (Git Hash 0125f28c61c1f822fd48570b4c1066f96fcb9b2e)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - NNPACK is enabled
  - CUDA Runtime 10.1
  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_61,code=sm_61;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_37,code=compute_37
  - CuDNN 7.6.3
  - Magma 2.5.1
  - Build settings: BLAS=MKL, BUILD_NAMEDTENSOR=OFF, BUILD_TYPE=Release, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -fopenmp -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -O2 -fPIC
-Wno-narrowing -Wall -Wextra -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Wno-stringop-overflow, DISABLE_NUMA=1, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, USE_CUDA=True, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, USE_STATIC_DISPATCH=OFF,

TorchVision: 0.4.2
OpenCV: 4.2.0
MMCV: 0.5.1
MMDetection: 1.0.0+2fbf5e2
MMDetection Compiler: GCC 7.5
MMDetection CUDA Compiler: 10.1

Question about mask loss

Thanks for your work!

https://github.com/Epiphqny/SOLOv2/blob/master/mmdet/models/anchor_heads/solov2_head.py#L373
https://github.com/Epiphqny/SOLOv2/blob/master/mmdet/models/anchor_heads/solov2_head.py#L200
I have noticed that, in training, the gt masks and mask predictions are downsampled to smaller scales(1/4, 1/4, 1/8, 1/16, 1/16 from p2~p6). And these downsampled masks are used to compute loss.

However, solov2 can predict masks on 1/4 scale directly, so my question is, why not compute loss with gt masks on 1/4 scale like yolact? Thank you.
(为什么这里不像yolact那样,直接用1/4大小的gt mask去计算损失?)

whenever i install solo through the source activate solo && pip install pip install -v -e .[all], it gives me following error

Using pip 20.2.2 from /usr/local/envs/solo/lib/python3.7/site-packages/pip (python 3.7)
Non-user install because site-packages writeable
Created temporary directory: /tmp/pip-ephem-wheel-cache-4n_xqxkl
Created temporary directory: /tmp/pip-req-tracker-5595pj5z
Initialized build tracking at /tmp/pip-req-tracker-5595pj5z
Created build tracker: /tmp/pip-req-tracker-5595pj5z
Entered build tracker: /tmp/pip-req-tracker-5595pj5z
Created temporary directory: /tmp/pip-install-ctibzecr
Obtaining file:///content/SOLO
Added file:///content/SOLO to build tracker '/tmp/pip-req-tracker-5595pj5z'
Running setup.py (path:/content/SOLO/setup.py) egg_info for package from file:///content/SOLO
Created temporary directory: /tmp/pip-pip-egg-info-sq35uuzc
Source in /content/SOLO has version 1.0.0+5c4dfd0, which satisfies requirement mmdet==1.0.0+5c4dfd0 from file:///content/SOLO
Removed mmdet==1.0.0+5c4dfd0 from file:///content/SOLO from build tracker '/tmp/pip-req-tracker-5595pj5z'
Installing extra requirements: 'all'
Requirement already satisfied: pip in /usr/local/envs/solo/lib/python3.7/site-packages (20.2.2)
Requirement already satisfied: install in /usr/local/envs/solo/lib/python3.7/site-packages (1.3.3)
Requirement already satisfied: matplotlib in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (3.3.1)
Requirement already satisfied: mmcv==0.2.16 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.2.16)
Requirement already satisfied: numpy in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (1.19.1)
Requirement already satisfied: scipy in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (1.5.2)
Requirement already satisfied: Pillow<=6.2.2 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (6.2.2)
Requirement already satisfied: six in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (1.15.0)
Requirement already satisfied: terminaltables in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (3.1.0)
Requirement already satisfied: torch>=1.1 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (1.6.0)
Requirement already satisfied: torchvision in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.7.0)
Requirement already satisfied: albumentations>=0.3.2 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.4.6)
Requirement already satisfied: imagecorruptions in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (1.1.0)
Requirement already satisfied: asynctest in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.13.0)
Requirement already satisfied: codecov in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (2.1.9)
Requirement already satisfied: flake8 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (3.8.3)
Requirement already satisfied: isort in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (4.3.21)
Requirement already satisfied: pytest in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (6.0.1)
Requirement already satisfied: pytest-cov in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (2.10.1)
Requirement already satisfied: pytest-runner in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (5.2)
Requirement already satisfied: xdoctest>=0.10.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.14.0)
Requirement already satisfied: yapf in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.30.0)
Requirement already satisfied: kwarray in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.5.9)
Requirement already satisfied: cython in /usr/local/envs/solo/lib/python3.7/site-packages (from mmdet==1.0.0+5c4dfd0) (0.29.21)
Requirement already satisfied: python-dateutil>=2.1 in /usr/local/envs/solo/lib/python3.7/site-packages (from matplotlib->mmdet==1.0.0+5c4dfd0) (2.8.1)
Requirement already satisfied: cycler>=0.10 in /usr/local/envs/solo/lib/python3.7/site-packages (from matplotlib->mmdet==1.0.0+5c4dfd0) (0.10.0)
Requirement already satisfied: certifi>=2020.06.20 in /usr/local/envs/solo/lib/python3.7/site-packages (from matplotlib->mmdet==1.0.0+5c4dfd0) (2020.6.20)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.3 in /usr/local/envs/solo/lib/python3.7/site-packages (from matplotlib->mmdet==1.0.0+5c4dfd0) (2.4.7)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/envs/solo/lib/python3.7/site-packages (from matplotlib->mmdet==1.0.0+5c4dfd0) (1.2.0)
Requirement already satisfied: requests in /usr/local/envs/solo/lib/python3.7/site-packages (from mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (2.24.0)
Requirement already satisfied: pyyaml in /usr/local/envs/solo/lib/python3.7/site-packages (from mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (5.3.1)
Requirement already satisfied: opencv-python>=3 in /usr/local/envs/solo/lib/python3.7/site-packages (from mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (4.4.0.42)
Requirement already satisfied: addict in /usr/local/envs/solo/lib/python3.7/site-packages (from mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (2.2.1)
Requirement already satisfied: future in /usr/local/envs/solo/lib/python3.7/site-packages (from torch>=1.1->mmdet==1.0.0+5c4dfd0) (0.18.2)
Requirement already satisfied: imgaug>=0.4.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from albumentations>=0.3.2->mmdet==1.0.0+5c4dfd0) (0.4.0)
Requirement already satisfied: scikit-image>=0.15 in /usr/local/envs/solo/lib/python3.7/site-packages (from imagecorruptions->mmdet==1.0.0+5c4dfd0) (0.17.2)
Requirement already satisfied: coverage in /usr/local/envs/solo/lib/python3.7/site-packages (from codecov->mmdet==1.0.0+5c4dfd0) (5.2.1)
Requirement already satisfied: mccabe<0.7.0,>=0.6.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from flake8->mmdet==1.0.0+5c4dfd0) (0.6.1)
Requirement already satisfied: pyflakes<2.3.0,>=2.2.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from flake8->mmdet==1.0.0+5c4dfd0) (2.2.0)
Requirement already satisfied: importlib-metadata; python_version < "3.8" in /usr/local/envs/solo/lib/python3.7/site-packages (from flake8->mmdet==1.0.0+5c4dfd0) (1.7.0)
Requirement already satisfied: pycodestyle<2.7.0,>=2.6.0a1 in /usr/local/envs/solo/lib/python3.7/site-packages (from flake8->mmdet==1.0.0+5c4dfd0) (2.6.0)
Requirement already satisfied: attrs>=17.4.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (20.2.0)
Requirement already satisfied: toml in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (0.10.1)
Requirement already satisfied: py>=1.8.2 in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (1.9.0)
Requirement already satisfied: pluggy<1.0,>=0.12 in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (0.13.1)
Requirement already satisfied: iniconfig in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (1.0.1)
Requirement already satisfied: packaging in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (20.4)
Requirement already satisfied: more-itertools>=4.0.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from pytest->mmdet==1.0.0+5c4dfd0) (8.5.0)
Requirement already satisfied: ubelt in /usr/local/envs/solo/lib/python3.7/site-packages (from kwarray->mmdet==1.0.0+5c4dfd0) (0.9.2)
Requirement already satisfied: pandas in /usr/local/envs/solo/lib/python3.7/site-packages (from kwarray->mmdet==1.0.0+5c4dfd0) (1.1.2)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/envs/solo/lib/python3.7/site-packages (from requests->mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (1.25.10)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/envs/solo/lib/python3.7/site-packages (from requests->mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (3.0.4)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/envs/solo/lib/python3.7/site-packages (from requests->mmcv==0.2.16->mmdet==1.0.0+5c4dfd0) (2.10)
Requirement already satisfied: Shapely in /usr/local/envs/solo/lib/python3.7/site-packages (from imgaug>=0.4.0->albumentations>=0.3.2->mmdet==1.0.0+5c4dfd0) (1.7.1)
Requirement already satisfied: imageio in /usr/local/envs/solo/lib/python3.7/site-packages (from imgaug>=0.4.0->albumentations>=0.3.2->mmdet==1.0.0+5c4dfd0) (2.9.0)
Requirement already satisfied: PyWavelets>=1.1.1 in /usr/local/envs/solo/lib/python3.7/site-packages (from scikit-image>=0.15->imagecorruptions->mmdet==1.0.0+5c4dfd0) (1.1.1)
Requirement already satisfied: networkx>=2.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from scikit-image>=0.15->imagecorruptions->mmdet==1.0.0+5c4dfd0) (2.5)
Requirement already satisfied: tifffile>=2019.7.26 in /usr/local/envs/solo/lib/python3.7/site-packages (from scikit-image>=0.15->imagecorruptions->mmdet==1.0.0+5c4dfd0) (2020.9.3)
Requirement already satisfied: zipp>=0.5 in /usr/local/envs/solo/lib/python3.7/site-packages (from importlib-metadata; python_version < "3.8"->flake8->mmdet==1.0.0+5c4dfd0) (3.1.0)
Requirement already satisfied: ordered-set in /usr/local/envs/solo/lib/python3.7/site-packages (from ubelt->kwarray->mmdet==1.0.0+5c4dfd0) (4.0.2)
Requirement already satisfied: pytz>=2017.2 in /usr/local/envs/solo/lib/python3.7/site-packages (from pandas->kwarray->mmdet==1.0.0+5c4dfd0) (2020.1)
Requirement already satisfied: decorator>=4.3.0 in /usr/local/envs/solo/lib/python3.7/site-packages (from networkx>=2.0->scikit-image>=0.15->imagecorruptions->mmdet==1.0.0+5c4dfd0) (4.4.2)
Installing collected packages: mmdet
Attempting uninstall: mmdet
Found existing installation: mmdet 2.4.0
Uninstalling mmdet-2.4.0:
Created temporary directory: /tmp/pip-uninstall-zppp9nvf
Removing file or directory /usr/local/envs/solo/lib/python3.7/site-packages/mmdet.egg-link
Removing pth entries from /usr/local/envs/solo/lib/python3.7/site-packages/easy-install.pth:
Removing entry: /content/mmdetection
Successfully uninstalled mmdet-2.4.0
Running setup.py develop for mmdet
Rolling back uninstall of mmdet
Moving to /usr/local/envs/solo/lib/python3.7/site-packages/mmdet.egg-link
from /tmp/pip-uninstall-zppp9nvf/mmdet.egg-link
Replacing /usr/local/envs/solo/lib/python3.7/site-packages/mmdet.egg-link from /tmp/pip-uninstall-zppp9nvf/mmdet.egg-link
Rolling /usr/local/envs/solo/lib/python3.7/site-packages/easy-install.pth back to previous state
Exception information:
Traceback (most recent call last):
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 216, in _main
status = self.run(options, args)
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 182, in wrapper
return func(self, options, args)
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 421, in run
pycompile=options.compile,
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/req/init.py", line 90, in install_given_reqs
pycompile=pycompile,
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/req/req_install.py", line 799, in install
unpacked_source_directory=self.unpacked_source_directory,
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/operations/install/editable_legacy.py", line 51, in install_editable
cwd=unpacked_source_directory,
File "/usr/local/envs/solo/lib/python3.7/site-packages/pip/_internal/utils/subprocess.py", line 242, in call_subprocess
raise InstallationError(exc_msg)
pip._internal.exceptions.InstallationError: Command errored out with exit status 1: /usr/local/envs/solo/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/content/SOLO/setup.py'"'"'; file='"'"'/content/SOLO/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' develop --no-deps Check the logs for full command output.
Removed build tracker: '/tmp/pip-req-tracker-5595pj5z'
Running command python setup.py egg_info
running egg_info
creating /tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info
writing /tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/PKG-INFO
writing dependency_links to /tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/dependency_links.txt
writing requirements to /tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/requires.txt
writing top-level names to /tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/top_level.txt
writing manifest file '/tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/SOURCES.txt'
reading manifest file '/tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/SOURCES.txt'
writing manifest file '/tmp/pip-pip-egg-info-sq35uuzc/mmdet.egg-info/SOURCES.txt'
Running command /usr/local/envs/solo/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/content/SOLO/setup.py'"'"'; file='"'"'/content/SOLO/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' develop --no-deps
running develop
running egg_info
writing mmdet.egg-info/PKG-INFO
writing dependency_links to mmdet.egg-info/dependency_links.txt
writing requirements to mmdet.egg-info/requires.txt
writing top-level names to mmdet.egg-info/top_level.txt
reading manifest file 'mmdet.egg-info/SOURCES.txt'
writing manifest file 'mmdet.egg-info/SOURCES.txt'
running build_ext
building 'mmdet.ops.utils.compiling_info' extension
Emitting ninja build file /content/SOLO/build/temp.linux-x86_64-3.7/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
ninja: no work to do.
g++ -pthread -shared -B /usr/local/envs/solo/compiler_compat -L/usr/local/envs/solo/lib -Wl,-rpath=/usr/local/envs/solo/lib -Wl,--no-as-needed -Wl,--sysroot=/ /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/utils/src/compiling_info.o -L/usr/local/envs/solo/lib/python3.7/site-packages/torch/lib -L/usr/local/cuda-10.1/lib64 -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda -o build/lib.linux-x86_64-3.7/mmdet/ops/utils/compiling_info.cpython-37m-x86_64-linux-gnu.so
building 'mmdet.ops.nms.soft_nms_cpu' extension
Emitting ninja build file /content/SOLO/build/temp.linux-x86_64-3.7/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
ninja: no work to do.
g++ -pthread -shared -B /usr/local/envs/solo/compiler_compat -L/usr/local/envs/solo/lib -Wl,-rpath=/usr/local/envs/solo/lib -Wl,--no-as-needed -Wl,--sysroot=/ /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/soft_nms_cpu.o -o build/lib.linux-x86_64-3.7/mmdet/ops/nms/soft_nms_cpu.cpython-37m-x86_64-linux-gnu.so
building 'mmdet.ops.nms.nms_cpu' extension
Emitting ninja build file /content/SOLO/build/temp.linux-x86_64-3.7/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
ninja: no work to do.
g++ -pthread -shared -B /usr/local/envs/solo/compiler_compat -L/usr/local/envs/solo/lib -Wl,-rpath=/usr/local/envs/solo/lib -Wl,--no-as-needed -Wl,--sysroot=/ /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cpu.o -L/usr/local/envs/solo/lib/python3.7/site-packages/torch/lib -L/usr/local/cuda-10.1/lib64 -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda -o build/lib.linux-x86_64-3.7/mmdet/ops/nms/nms_cpu.cpython-37m-x86_64-linux-gnu.so
building 'mmdet.ops.nms.nms_cuda' extension
Emitting ninja build file /content/SOLO/build/temp.linux-x86_64-3.7/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/1] c++ -MMD -MF /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cuda.o.d -pthread -B /usr/local/envs/solo/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DWITH_CUDA -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/TH -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda-10.1/include -I/usr/local/envs/solo/include/python3.7m -c -c /content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp -o /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cuda.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=nms_cuda -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++14
FAILED: /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cuda.o
c++ -MMD -MF /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cuda.o.d -pthread -B /usr/local/envs/solo/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DWITH_CUDA -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/TH -I/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/THC -I/usr/local/cuda-10.1/include -I/usr/local/envs/solo/include/python3.7m -c -c /content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp -o /content/SOLO/build/temp.linux-x86_64-3.7/mmdet/ops/nms/src/nms_cuda.o -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=nms_cuda -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++14
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
In file included from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/Parallel.h:149:0,
from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/utils.h:3,
from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/nn/cloneable.h:5,
from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/nn.h:3,
from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/all.h:7,
from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/extension.h:4,
from /content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:2:
/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/ParallelOpenMP.h:84:0: warning: ignoring #pragma omp parallel [-Wunknown-pragmas]
#pragma omp parallel for if ((end - begin) >= grain_size)

/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp: In function ‘at::Tensor nms(const at::Tensor&, float)’:
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:4:39: warning: ‘at::DeprecatedTypeProperties& at::Tensor::type() const’ is deprecated: Tensor.type() is deprecated. Instead use Tensor.options(), which in many cases (e.g. in a constructor) is a drop-in replacement. If you were using data from type(), that is now available from Tensor itself, so instead of tensor.type().scalar_type(), use tensor.scalar_type() instead and instead of tensor.type().backend() use tensor.device(). [-Wdeprecated-declarations]
 #define CHECK_CUDA(x) AT_CHECK(x.type().is_cuda(), #x, " must be a CUDAtensor ")
                                       ^
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:9:3: note: in expansion of macro ‘CHECK_CUDA’
   CHECK_CUDA(dets);
   ^~~~~~~~~~
In file included from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/Tensor.h:3:0,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/Context.h:4,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/ATen.h:5,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/types.h:3,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader_options.h:4,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/base.h:3,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h:3,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader.h:3,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data.h:3,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/all.h:4,
                 from /usr/local/envs/solo/lib/python3.7/site-packages/torch/include/torch/extension.h:4,
                 from /content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:2:
/usr/local/envs/solo/lib/python3.7/site-packages/torch/include/ATen/core/TensorBody.h:268:30: note: declared here
   DeprecatedTypeProperties & type() const {
                              ^~~~
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:4:23: error: ‘AT_CHECK’ was not declared in this scope
 #define CHECK_CUDA(x) AT_CHECK(x.type().is_cuda(), #x, " must be a CUDAtensor ")
                       ^
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:9:3: note: in expansion of macro ‘CHECK_CUDA’
   CHECK_CUDA(dets);
   ^~~~~~~~~~
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:4:23: note: suggested alternative: ‘DCHECK’
 #define CHECK_CUDA(x) AT_CHECK(x.type().is_cuda(), #x, " must be a CUDAtensor ")
                       ^
/content/SOLO/mmdet/ops/nms/src/nms_cuda.cpp:9:3: note: in expansion of macro ‘CHECK_CUDA’
   CHECK_CUDA(dets);
   ^~~~~~~~~~
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/usr/local/envs/solo/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1515, in _run_ninja_build
    env=env)
  File "/usr/local/envs/solo/lib/python3.7/subprocess.py", line 512, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/content/SOLO/setup.py", line 301, in <module>
    zip_safe=False)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/setuptools/__init__.py", line 163, in setup
    return distutils.core.setup(**attrs)
  File "/usr/local/envs/solo/lib/python3.7/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/local/envs/solo/lib/python3.7/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/usr/local/envs/solo/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/usr/local/envs/solo/lib/python3.7/site-packages/setuptools/command/develop.py", line 38, in run
    self.install_for_development()
  File "/usr/local/envs/solo/lib/python3.7/site-packages/setuptools/command/develop.py", line 140, in install_for_development
    self.run_command('build_ext')
  File "/usr/local/envs/solo/lib/python3.7/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/local/envs/solo/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/usr/local/envs/solo/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 87, in run
    _build_ext.run(self)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
    _build_ext.build_ext.run(self)
  File "/usr/local/envs/solo/lib/python3.7/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "/usr/local/envs/solo/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 649, in build_extensions
    build_ext.build_extensions(self)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
    _build_ext.build_ext.build_extensions(self)
  File "/usr/local/envs/solo/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions
    self._build_extensions_serial()
  File "/usr/local/envs/solo/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial
    self.build_extension(ext)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 208, in build_extension
    _build_ext.build_extension(self, ext)
  File "/usr/local/envs/solo/lib/python3.7/distutils/command/build_ext.py", line 534, in build_extension
    depends=ext.depends)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 478, in unix_wrap_ninja_compile
    with_cuda=with_cuda)
  File "/usr/local/envs/solo/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1233, in _write_ninja_file_and_compile_objects
    error_prefix='Error compiling objects for extension')
  File "/usr/local/envs/solo/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1529, in _run_ninja_build
    raise RuntimeError(message)
RuntimeError: Error compiling objects for extension

ERROR: Command errored out with exit status 1: /usr/local/envs/solo/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/content/SOLO/setup.py'"'"'; file='"'"'/content/SOLO/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' develop --no-deps Check the logs for full command output.
,
however, iif i nstall simple mmdetection, it gets install fine, can you suggest any solution

How can I train with --validate?

I want train my data with validation.so I use the --validate.I got the error:
bboxes.shape[0] is 'tuple',has no attribute ‘shape’, how can I improve the code to train with validate?please help me

Nice work

No big deal. Just wanna say it is a nice reproduction.

model

可以提供一个百度网盘的模型下载链接么?google的下载不了。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.