AP landscape
Opened this issue · 2 comments
Exciting and excellent work! We are really interested in your AP landscape. Will you released the code or pseudo-code for testing AP landscape?
I can't access the server which has this part of code for the time being, but it will be released once I can. But I can provide some modification suggestions here.
First, you must modify tools/test.py
so as to load two detectors. The relevant files are tools/test.py
, the function multi_gpu_test()
of mmdet/apis/test.py
and the function simple_test()
of mmdet/models/detectors/single_stage.py
.
Then, if I remenber correctly, the main modifications are in the function simple_test()
of mmdet/models/detectors/single_stage.py
. And the most important part is line 112-113.
In L112, the variable x
contains the 5 FPN output feature maps. And then x
will be feed into the head networks in L113.
Suppose you have loaded two detectors here, you get x1
and x2
of two detectors. One should note that x
is a tuple, it cannot be modified directly. So, you can transform x1, x2
to numpy arrays. And for each FPN level, i.e., x[0], x[1], ..., x[4]
(totally 5 levels), you can do math transformation to get a new feature map x[i] = a*x1[i] + b*x2[i]
, where a,b\in[-0.5,1.5]
in the paper. And then transform the numpy array x
to a tuple so that it can be feed into L113 outs = self.bbox_head(x)
to inference as usual.
Finally, wait the inferece and the evaluation process, you will get the evaluation measures and don't forget to save them.
As a reminder, the 2D AP landscape in the paper evaluates 400 times. It is time-consuming.
@JwFbupt updated, you can see readme. For any further question or bugs, please post here.