ReDet icon indicating copy to clipboard operation
ReDet copied to clipboard

ReDet with Dota 1 multiscale OBB - only able to achieve 79.2% so far

Open ManuelM95 opened this issue 3 years ago • 5 comments

Hello,

thanks for the code. I'm trying to archive the 80.1% mAP on the Dota 1 dataset. I noticed when comparing the logs - that I got a different maximum amount of iterations compared to you - 5848 compared to 8650.

I just used the prepare_dota1_v2.py script creating 101611 images in trainval and 52460 images in test. Is that correct or did I miss something? I'm also training on 4 GPU's with imgs_per_gpu = 2.

Any other ideas where I could have lost the 0.9% mAP - the only thing I changed was the THREADS_PER_BLOCK in riroi_align_kernel.cu from 1024 to 512.

ManuelM95 avatar May 24 '22 09:05 ManuelM95

Maybe we use empty images for training. I'm not sure. Try to change the difficult key to difficult=-1. https://github.com/csuhan/ReDet/blob/f4a8e7dadec990f8a92437024416f0fb07a868db/DOTA_devkit/prepare_dota1_v2.py#L139

The multiscale result is not very stable since we use random rotation augmentation.

csuhan avatar May 25 '22 12:05 csuhan

Thanks for the fast reply. I will try that and report back.

ManuelM95 avatar May 25 '22 16:05 ManuelM95

With difficult = -1 the amount of images goes down(from 101611 to 69018) and thus also the maximum amount of iterations goes down to 4135. I also get a lower mAP in the end.

I also want to train on custom data and wanted to use --validate with distributed training but it doesn't seem to be supported? Then the easiest way to check the results is just parsing the results.pkl data to .json and use cocoeval with the json annotations of the test data?

ManuelM95 avatar Jun 02 '22 09:06 ManuelM95

Our code does not support online validation: --validate. You can convert your data to DOTA's txt format, then you can train and test your model as DOTA.

csuhan avatar Jun 02 '22 12:06 csuhan

Hello,

thanks for the code. I'm trying to archive the 80.1% mAP on the Dota 1 dataset. I noticed when comparing the logs - that I got a different maximum amount of iterations compared to you - 5848 compared to 8650.

I just used the prepare_dota1_v2.py script creating 101611 images in trainval and 52460 images in test. Is that correct or did I miss something? I'm also training on 4 GPU's with imgs_per_gpu = 2.

Any other ideas where I could have lost the 0.9% mAP - the only thing I changed was the THREADS_PER_BLOCK in riroi_align_kernel.cu from 1024 to 512

你好,想问一下使用DOTA 数据集进行训练的时候是将train和val放在了一起,最后想得到评价指标是用的trainval.json还是test.json

是运行的python tools/test.py .......--eval bbox ?

Hello,

thanks for the code. I'm trying to archive the 80.1% mAP on the Dota 1 dataset. I noticed when comparing the logs - that I got a different maximum amount of iterations compared to you - 5848 compared to 8650.

I just used the prepare_dota1_v2.py script creating 101611 images in trainval and 52460 images in test. Is that correct or did I miss something? I'm also training on 4 GPU's with imgs_per_gpu = 2.

Any other ideas where I could have lost the 0.9% mAP - the only thing I changed was the THREADS_PER_BLOCK in riroi_align_kernel.cu from 1024 to 512.

Hello, I would like to ask whether train and val are put together when using DOTA data set for training. Finally, I want to know whether trainval.json or test.json is used as the evaluation indicator It is the python tools/test run py .......--eval bbox ?

LeiaJ520 avatar Oct 26 '22 02:10 LeiaJ520