Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Comparing with ExtremeNet and CornerNet #269

Open
vinbhaskara opened this issue Aug 14, 2019 · 11 comments
Open

Comparing with ExtremeNet and CornerNet #269

vinbhaskara opened this issue Aug 14, 2019 · 11 comments

Comments

@vinbhaskara
Copy link

vinbhaskara commented Aug 14, 2019

Since COCO hourglass starts with pretrained ExtremeNet weights which was in turn pretrained on CornerNet weights, is it fair to compare CenterNet to those models? Because effectively, CenterNet is trained for a lot more epochs when you include the epochs that went into the pretraining.

Also, can you point me to the pretrained weights that you used for training the hourglass model on COCO? Thanks.

@vinbhaskara
Copy link
Author

vinbhaskara commented Aug 15, 2019

One more query: Were the pretrained ExtremeNet weights (which you used to initialize Hourglass for COCO) trained originally with channels in RGB order (like other pytorch pretrained models) or BGR? Thanks.

@rafikg
Copy link

rafikg commented Aug 15, 2019

@bsvineethiitg did you check also this L1loss

loss = F.l1_loss(pred * mask, target * mask, reduction='elementwise_mean')
.
Here they average on the all pixels (128^2) but in the paper, they average on the non-zeros pixels (which is the true raisoning)!

@xingyizhou
Copy link
Owner

Thanks for the question. This turns out to be the major reason for this work being rejected. CenterNet training from scratch (100epochs) gives 38.9/ 40.6/ 43.0 for N.A./ flip/ multi scale. It is not all better than ExtremeNet (100epochs) 35.8/ 40.2/ 43.7.
In another perspective, finetuning ExtremeNet from the ExtremeNet (100epochs) pretraining improves ExtremeNet to 36.9/ 41.1/ 44.6, it also does worse than CenterNet in the same setting 40.9 / 42.8/ 45.7.
The CenterNet in the paper (40.3 / 42.2 / 45.1) is finetuned from ExtremeNet (50epochs) + CornerNet (~200epochs). We later observed that directly finetuning from ExtremeNet (100epochs) is better than that (40.9 / 42.8/ 45.7).
The ExtremeNet (100epochs) is in our model zoo.
The models are all trained in BGR.

@vinbhaskara
Copy link
Author

vinbhaskara commented Sep 24, 2019

Thanks for the question. This turns out to be the major reason for this work being rejected. CenterNet training from scratch (100epochs) gives 38.9/ 40.6/ 43.0 for N.A./ flip/ multi scale. It is not all better than ExtremeNet (100epochs) 35.8/ 40.2/ 43.7.

By "scratch" you mean ImageNet or MPII weights for Hourglass, right?

@chenyuntc
Copy link

Centernet is my favourite detector. It's ridiculous to reject it for this reason.

@xingyizhou
Copy link
Owner

Thanks @chenyuntc ! This means a lot to us.

@xingyizhou
Copy link
Owner

@bsvineethiitg "scratch" means using random initialization.

@vinbhaskara
Copy link
Author

vinbhaskara commented Oct 1, 2019

Hi @xingyizhou . Quick clarification please.

So, the model for COCO-HG you reported on the paper (40.3 / 42.2 / 45.1), you said that was finetuned from ExtremeNet (50epochs) + CornerNet (~200epochs).

I want to reproduce that.

Which pretrained model should I use for this? Is it "ExtremeNet_500000.pth"? I'm confused because you referred to that as the 100 epoch ExtremeNet model in your above comment.

Is ExtremeNet_500000.pth in your Drive link the 100 epoch ExtremeNet model or (50 epoch ExtremeNet starting from CornerNet 200 epoch) model?

@vinbhaskara vinbhaskara reopened this Oct 1, 2019
@xingyizhou
Copy link
Owner

You are correct. ExtremeNet_500000.pth is the 100epoch model. The 50-epoch model ExtremeNet_250000.pth is in the ExtremeNet repo.

@vinbhaskara
Copy link
Author

If you have trained your model on the 100 epoch ExtremeNet using the following command (with the same LR and #gpus and batch sizes):

python main.py ctdet --exp_id coco_hg --arch hourglass --batch_size 24 --master_batch 4 --lr 2.5e-4 --load_model ../models/ExtremeNet_500000.pth --gpus 0,1,2,3,4 --num_epochs 50 --lr_step 40

could you please share it in the google drive please? Also, I'd be glad if you can confirm if you trained that exactly with above command.

@vinbhaskara vinbhaskara reopened this Oct 1, 2019
@wxiaoning
Copy link

If you have trained your model on the 100 epoch ExtremeNet using the following command (with the same LR and #gpus and batch sizes):

python main.py ctdet --exp_id coco_hg --arch hourglass --batch_size 24 --master_batch 4 --lr 2.5e-4 --load_model ../models/ExtremeNet_500000.pth --gpus 0,1,2,3,4 --num_epochs 50 --lr_step 40

could you please share it in the google drive please? Also, I'd be glad if you can confirm if you trained that exactly with above command.

Hello bsvineethiitg, have you tried this command? And can you reproduce the result?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants