sanghoon / pva-faster-rcnn

Demo code for PVANet
https://arxiv.org/abs/1611.08588
Other
651 stars 241 forks source link

Does it need fixed image size with 640x1056 #17

Open samuel1208 opened 7 years ago

samuel1208 commented 7 years ago

I test it with my own data with 640x1000. It give following error:

I1020 22:34:11.216954 7221 net.cpp:91] Creating Layer conv4_1/incep I1020 22:34:11.216960 7221 net.cpp:425] conv4_1/incep <- conv4_1/incep/0 I1020 22:34:11.216967 7221 net.cpp:425] conv4_1/incep <- conv4_1/incep/1_0 I1020 22:34:11.216974 7221 net.cpp:425] conv4_1/incep <- conv4_1/incep/2_1 I1020 22:34:11.216979 7221 net.cpp:425] conv4_1/incep <- conv4_1/incep/poolproj I1020 22:34:11.216986 7221 net.cpp:399] conv4_1/incep -> conv4_1/incep F1020 22:34:11.217005 7221 concat_layer.cpp:42] Check failed: top_shape[j] == bottom[i]->shape(j) (63 vs. 62) All inputs must \ have the same shape, except at concat_axis. * Check failure stack trace: * Aborted

The conv4_1/incep/poolproj use max Pooling layer, The feature map size is round with floor get 40x62. Other convolution layers with ceil mode get 40x63.

So Is the image size must resize to 640x1056

dereyly commented 7 years ago

@samuel1208 It is standard faster-rcnn pipeline, and if you run from python it will reshape model to cfg.TEST.SCALES = (640,) size. For my tests it runs with different sizes.

zimenglan-sysu-512 commented 7 years ago

hi @samuel1208 yes,or you can modify your concat layer so that it can deal with different size of feature map.

ghost commented 7 years ago

@zimenglan-sysu-512 Could you please give me some tips about how to modify concat layer, thanks!

lvchigo commented 7 years ago

@dereyly I test it with my own data. It give following error: I1208 11:14:37.816094 22900 net.cpp:270] This network produces output scores I1208 11:14:37.816184 22900 net.cpp:283] Network initialization done. Loaded network models/pvanet/lite/test.model F1208 11:14:44.444921 22900 concat_layer.cpp:42] Check failed: top_shape[j] == bottom[i]->shape(j) (37 vs. 38) All inputs must have the same shape, except at concat_axis.

I also changed cfg.TEST.SCALES = (600,) to (640,).

chengshuai commented 7 years ago

Hi @dereyly

I try train the example_train_384 in pvanet_obsolete(pva9.0) for pascal_voc 2007(trian:2007+2012,test:2007), the mAP is so low 13.1%,however, the mAP is 82.8% when i use sanghoon's model. Why the result is different? Is there other change or trick during your training?

The below is the script:

Training for 100k iterations

tools/train_net.py --gpu 0 --solver models/pvanet_obsolete/example_train_384/solver.prototxt --weights models/pvanet_obsolete/imagenet/original.model --iters 100000 --cfg models/pvanet_obsolete/cfgs/train.yml --imdb voc_2007_trainval Testing

tools/test_net.py --gpu 0 --def models/pvanet_obsolete/example_train_384/test.prototxt --net output/faster_rcnn_pvanet/voc_2007_trainval/pvanet_frcnn_384_iter_100000.caffemodel --cfg models/pvanet_obsolete/cfgs/submit_160715.yml

Do you retrain the model , and what is the mAP? Why the mAP is so low?

Thanks.