-
Notifications
You must be signed in to change notification settings - Fork 91
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
How to get/set the ground truth for gates sizes? #28
Comments
See discussion here and here allow us to get back wrt changing gate dimensions |
Thank you for quick reply madratman, however I think I missed something. Don't the gate poses only contain their orientation and position ? |
ah, sorry. I misread your question. We'll get back with an answer soon. |
(By the way for my gate-passing detector I am trying to understand how AirSim uses quaternions for object orientation and the get_gate_facing_vector_from_quaternion() function in the baseline sounds quite strange to me. You might want to try this instead: def get_gate_facing_vector_from_quaternion_with_multiplication(quat): Also I think you might have a small bug here because it returns a 4x4 identity numpy array instead of a 3x1 Vector3r when n < eps.) |
Ah, yeah, that's a bug for sure, I should be returning Vector3r(0,1,0) in the edge case. Thanks for pointing it out. |
ah, we forgot to add the nominal sizes of the gates |
Is this normal then? I can use the reset/start track API with not too many issues but I get this error with the simGetObjectScale() function. |
uh, I just noticed simSet/GetObjectScale is missing in the linux and windows binaries both, coz of some errors on our side. Will update in v0.2.1 |
Did I understand that in Teir 3 you are allowed to get the ground truth sizes of gates? |
I don't think so, but I need that for training purpose. |
@yannbouteiller Also, I just removed the pass-through light bulb triggers from the linux release environments and fixed some lighting issues in the B99 environment, so it might be worth redownloading the environment paks as well. |
my previous answer was wrong. see edited: with scale 1: the gate dimensions are :
You can use the return of simGetObjectScale() and multiply that with these numbers and change them with simSetObjectScale() Now, in soccer_field_easy, for example, the gates are scaled with (1.5, 1.0, 1.5) in width , thickness, height, leading to a corresponding gate inner as (2.4m x 0.2 m x 2.4 m) and gate outer dimensions as (3.2m x 0.2m x 3.2m). see pics below here's a snippet import airsimneurips
c = airsimneurips.MultirotorClient()
c.confirmConnection()
c.simLoadLevel('Soccer_Field_Easy')
gate_obj_list = c.simListSceneObjects("Gate.*")
# returns ['Gate00', 'Gate01', 'Gate02', 'Gate03', 'Gate04', 'Gate05', 'Gate06', 'Gate07', 'Gate08', 'Gate09', 'Gate10_21', 'Gate11_23']
c.simGetObjectScale(gate_obj_list[0])
# returns <Vector3r> { 'x_val': 1.5, 'y_val': 1.0, 'z_val': 1.5}
# corresponding to dimensions in pic above
c.simSetObjectScale(gate_obj_list[0], Vector3r(2.0, 1.0, 3.0)) |
Hello everyone,
According to the competition guidelines, for difficulties medium and hard, the sizes of the gates will not be constant. How do we get the ground truth for these, please? I am basically simply trying to detect when the drone passes through a gate.
Also, is it possible to change these dimensions algorithmically?
Thanks,
Yann.
The text was updated successfully, but these errors were encountered: