-
-
Notifications
You must be signed in to change notification settings - Fork 76
Open
Description
Hi, Thanks for the great deepdive!
Btw, Could I ask you two questions:
- The first 4955 output of supercombo's onnx model contains 5 lane plans, but what is the sequence of it? FYI, I've tried to follow this REFERENCE, but the sequence of the output seems to be a bit off, could you help to CMIIW?
- Is the way to get best lane lines similar to the demo.py file? FYI, I've tried to reproduce it, but It seems that in the demo.py, the pred_trajectory seems to already have xyz separated before output, and you also have put "sinh" and "exp" in here.
What I tried to get the xyz (cmiiw again):
- Get the first 4955 output, and reshape it into 5x991.
- Try to separate the hypothesis probs. I've learned from the ref. above that the last shape should be 2x33x15 (990). If I take the last value, I get a very high score (43.xx). So, I guess it should be the last one (cmiiw), then put softmax on it.
- The cls/hypothesis probs size: 5x1 (HP), the other values (B) will be reshape to 5x2x33x5x3.
- Get the highest HP's output (HL). (argmax, out size will be 1)
- Filter B with HL # the out size will be 2x33x5x3
- Takes the second output (since it will be the current lane, cmiiw). the out size will be 33x5x3.
- Takes the xyz position out of 5 outputs, the out size will be 33x3.
- Put "sinh" & "exp" on the first two outputs.
- Then, do you know what else should I do to get the correct left & right lanes on the frame ? Does it related to the ref below? Or could you give me a little guide? thanks in advance
https://github.com/OpenDriveLab/Openpilot-Deepdive/blob/main/demo.py#L86
https://github.com/OpenDriveLab/Openpilot-Deepdive/blob/main/utils.py#L151-L157
res = (array of 1 x 6742) # (output of supercombo.onnx)
lanes_plan_ = res[0,:4995].reshape(5, 991)
lanes_cls = ss_softmax(lanes_plan_[:,0])
lanes_plan = lanes_plan_[:,1:].reshape(5,2,33,5,3)[np.argmax(lanes_cls)]
lanes_plan_xyz = lanes_plan[1,:,0,:]
lanes_plan_xyz[...,0] = np.exp(lanes_plan_xyz[...,0])
lanes_plan_xyz[...,1] = np.sinh(lanes_plan_xyz[...,1])
Metadata
Metadata
Assignees
Labels
No labels