toandaominh1997 / EfficientDet.Pytorch

Implementation EfficientDet: Scalable and Efficient Object Detection in PyTorch
MIT License
1.44k stars 306 forks source link

No boxes to NMS!!!!!!!!!!!!!!!!!!! #80

Open WIKI2020 opened 4 years ago

WIKI2020 commented 4 years ago

The code can not be used at all. It can be trained and tested. However, demo.py prompt:"no boxes to NMS", and eval. Py prompt:"AVG map: 0.0"

WIKI2020 commented 4 years ago

All parameters are set correctly

lgl603 commented 4 years ago

Me too!

Jasper-Bai commented 4 years ago

same issue

trulyjupiter commented 4 years ago

+1

y78h11b09 commented 4 years ago

yeah, there are some problems, run demo.py, still happen no boxes to NMS, but can got mAP 0.5439399966. and training, the CPU cost is very hight, even over 85%

midasklr commented 4 years ago

yeah, there are some problems, run demo.py, still happen no boxes to NMS, but can got mAP 0.5439399966. and training, the CPU cost is very hight, even over 85%

hi,can u infer an image correctly?

hawl666 commented 4 years ago

@toandaominh1997 can u fix this problem?

huwanpeng commented 4 years ago

Has anyone solved it?

wanglaotou commented 4 years ago

same issue.

wongtou commented 4 years ago

I had solved this problem by downgrading the version of torchvision from 0.4.2 to 0.4.0

wanglaotou commented 4 years ago

in the readme.md, it says like that: PyTorch 1.3+ Torchvision 0.4.0+ (We need high version because Torchvision support nms now.) while the torchvision==0.4.0 should match torch==1.2.0, so which version of you torch?

wongtou commented 4 years ago

in the readme.md, it says like that: PyTorch 1.3+ Torchvision 0.4.0+ (We need high version because Torchvision support nms now.) while the torchvision==0.4.0 should match torch==1.2.0, so which version of you torch?

pytorch will downgrade to 1.2.0 meanwhile, but it still work.

WIKI2020 commented 4 years ago

This EfficientDet Less effective than yolov3. I have verified!

wanglaotou commented 4 years ago

in the readme.md, it says like that: PyTorch 1.3+ Torchvision 0.4.0+ (We need high version because Torchvision support nms now.) while the torchvision==0.4.0 should match torch==1.2.0, so which version of you torch?

pytorch will downgrade to 1.2.0 meanwhile, but it still work. I changed my torch=1.2.0 and torchvision=0.4.0, after trained 10 epoch, its ap is still 0.0 and no boxes to nms, do you have any ideas?

xiaow1998 commented 4 years ago

in the readme.md, it says like that: PyTorch 1.3+ Torchvision 0.4.0+ (We need high version because Torchvision support nms now.) while the torchvision==0.4.0 should match torch==1.2.0, so which version of you torch?

pytorch will downgrade to 1.2.0 meanwhile, but it still work. I changed my torch=1.2.0 and torchvision=0.4.0, after trained 10 epoch, its ap is still 0.0 and no boxes to nms, do you have any ideas?

I wrote a blog: https://www.cnblogs.com/xiaoyh/p/12201934.html, I hope to help you.

wanglaotou commented 4 years ago

thanks, just like the blog you wrote, change this line parser.add_argument('--network', default='efficientdet-d0', type=str, help='efficientdet-[d0, d1, ..]') to: parser.add_argument('--network', default='efficientdet-d1', type=str, help='efficientdet-[d0, d1, ..]') am i right? btw, i trained my own datasets from scratch.

xiaow1998 commented 4 years ago

Yes, I train my own data set too

WIKI2020 commented 4 years ago

只有D1网络可以的话,有毛用

CraigWang1 commented 4 years ago

Same issue here; I tried downgrading torchvision to 0.4.0 and using efficientdet-d1, but it still shows "No boxes to NMS"

Edit: After further inspection, it seems that during validation, the model actually can predict the boxes, but only a portion of the time. So, at least on my part, it just has to do with training the model more and cleaning up my dataset so that the model can predict better.

Edit2: The model didn't improve even after 150 epochs, so I switched to a different implentation (see below)

quangtn266 commented 4 years ago

Same issue here; I tried downgrading torchvision to 0.4.0 and using efficientdet-d1, but it still shows "No boxes to NMS"

Edit: After further inspection, it seems that during validation, the model actually can predict the boxes, but only a portion of the time. So, at least on my part, it just has to do with training the model more and cleaning up my dataset so that the model can predict better.

Have you any updated for your result? because I'm also training on d1 model and getting low results for map.

CraigWang1 commented 4 years ago

@quangtn266 Yes so I tried training more, but even after 150 epochs there was still no improvement. So, I moved over to this different implementation: https://github.com/signatrix/efficientdet

No offense intended for toandaominh, but the one I switched to works insanely well and is much more effective; I didn't have any issues with the other implementation.

Hope this helps

tangsipeng commented 4 years ago

pytroch 1.1 and torchvision 0.3.0 . only d0 cant train normaly ,

quangtn266 commented 4 years ago

pytroch 1.1 and torchvision 0.3.0 . only d0 cant train normaly ,

you mean that model from d1 to d7 can train normally and only d0 meets the problem, right?

tangsipeng commented 4 years ago

@quangtn266 i mean only d0 don't meets the problem .

tangsipeng commented 4 years ago

i can train normal now , see the code of 'class EfficientDet' . maybe do test after 10 or more epochs can work well , but at the same time , i found that this Implementation have lots of difference from the paper.

BaiqiangGit commented 4 years ago

Same issue when training d5 for 160 epoches on COCO.

CraigWang1 commented 4 years ago

The official implementation is out! https://github.com/google/automl/tree/master/efficientdet