Hello, thanks for the great work!
I found a possible issue in TopoLogicHead.get_lanes().
The learned decoder parameters:
# P = self.transformer.decoder.P.cpu()
# w = self.transformer.decoder.w.cpu()
# lamda_1 = float(self.transformer.decoder.lamda_1.cpu())
# lamda_2 = float(self.transformer.decoder.lamda_2.cpu())
are commented out and replaced with fixed constants:
P = 2
w = 11.5275
lamda_1 = 1
lamda_2 = 1
This means the trained values are never used during inference, causing a train–test mismatch and making training of these parameters ineffective.
Question:
Is this intentional? If not, should get_lanes() use the learned values instead of overriding them?
Thanks!