Closed imzhaoruijie closed 1 year ago
I have not provided a pre-trained model without the DCN. If you need to remove the DCN, you will need to train the model from scratch.
if I use mmcv instead,can I use your pre-trained model? An error occured: "KeyError: 'dla.dla_up.ida_0.proj_1.conv.conv_offset.weight'
Yes it can. I have tested it before with no problems. Please list your changes so that I can find out what is causing your problem.
Thanks for your reply! I tried to train the model on cityscape and it worked well, but some problem occured when I trained on my data. I changed the info.py and changed configs/coco.py ,set model.heads['ct_hm'] = 4, which is the class num of my data. the code run successfully, but the test result is 0. The output information are as follows:
loading annotations into memory...
Done (t=0.00s)
creating index...
index created!
WARNING: NO MODEL LOADED !!!
......
eta: 0:00:04 epoch: 4 step: 39 ct_loss: 7.3781 init_py_loss: 133.9993 coarse_py_loss: 68.5959 py_loss_0: 68.5285 py_loss_1: 68.4910 end_set_loss: 0.0000 loss: 73.3108 data: 1.9157 b
atch: 4.1253 lr: 0.000100 max_mem: 18490
eta: 0:00:04 epoch: 4 step: 39 ct_loss: 6.9518 init_py_loss: 130.4168 coarse_py_loss: 71.7408 py_loss_0: 71.7066 py_loss_1: 71.6976 end_set_loss: 0.0000 loss: 74.9690 data: 1.7036 b
atch: 4.1342 lr: 0.000100 max_mem: 18491
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 54/54 [03:54<00:00, 4.34s/it]
Loading and preparing results...
DONE (t=0.20s)
creating index...
index created!
Running per image evaluation...
Evaluate annotation type segm
DONE (t=0.31s).
Accumulating evaluation results...
DONE (t=0.04s).
Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.000
Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.000
Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.000
Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = -1.000
Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.000
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.000
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.000
Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = -1.000
Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.000
Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.000
I have visulized my data, and there is no problem with my data.
if I use mmcv instead,can I use your pre-trained model? An error occured: "KeyError: 'dla.dla_up.ida_0.proj_1.conv.conv_offset.weight'
yes, I had the same problem.
Maybe I need to retrain?
Since the dcn implement of mmcv and the author is different, you may use below codes to fix the issue.
for key in net_weight.keys():
key1=key
key2=key
if key[-18:]=="conv_offset.weight" :
key1=key[:-18]+"conv_offset.weight"
key2=key[:-18]+"conv_offset_mask.weight"
if key[-16:]=="conv_offset.bias" :
key1=key[:-16]+"conv_offset.bias"
key2=key[:-16]+"conv_offset_mask.bias"
net_weight.update({key1: pretrained_model[key2]})
I set use_dcn = False,dowload the pretrained model and the dataset to test .The code run successfully, but the result is 0.