Federica Posted February 15, 2021 Share Posted February 15, 2021 Hi, I'm using the SRanipal SDK in Unity to get eye tracking data from the HTC Vive Pro Eye headset. I have a question regarding the pos_sensor_Lx, pos_sensor_Ly, pos_sensor_Rx, pos_sensor_Ry variables (normalized by default in [0,1]). It is generically said that they rapresent the pupil position. I tried to follow with the Vive Pro Eye a square figure and then overlay the plot of the pupil position for each eye as in the picture attached below (where the image in the background represents the left and right eye view as seen in the Unity game view). However the result obtained does not convince me, I expected to have the plot overlayed on the red square. So my question is: what do (pos_sensor_Lx, pos_sensor_Ly), (pos_sensor_Rx, pos_sensor_Ry) represent? Are them the position of the pupil on the telecamera or do they indicate where the user is watching on the headset screen? Are the variables I have to consider to get the gaze coordinates or I have to consider something else? Thank you! Link to comment Share on other sites More sharing options...
Corvus Posted February 16, 2021 Share Posted February 16, 2021 @Federica Pupil position in sensor area is mostly used for calibration. It sounds like you are trying to measure gaze positions which can be done with gaze vectors. Link to comment Share on other sites More sharing options...
Federica Posted February 17, 2021 Author Share Posted February 17, 2021 (edited) Thank you for your answer. Anyway can you please tell me what pupil position is? Is it the position of the pupil on the telecamera or does it indicate where the user is watching on the headset screen? Another question. I have plotted the (x,y) gaze directions for the left and the right eye normalized respect to the z gaze direction obtaining the result in the picture attached. Why is there that offset between the plot and the red squares? I expected the plot overlayed on the squares. I've read that the origin of the HTC Vive headset is located 15 mm "behind" the eye tracker's origin. Can be the offset observed caused by this fact? Is there a way to solve it so that the plot is over the red squares? Thank you Edited February 17, 2021 by Federica Link to comment Share on other sites More sharing options...
Tony PH Lin Posted March 10, 2021 Share Posted March 10, 2021 Hi @Federica, We think you're using the pupil_position_in_sensor_area and it means the pupil position in the eye image that’s captured by eye tracking camera. If you want to get the gaze coordinates you may consider to use gaze_origin_mm and gaze_direction_normalized and do some coding in Unity 3D space. ViveSR.anipal.Eye.SingleEyeData Struct Reference Public Member Functions bool GetValidity (SingleEyeDataValidity validity) Public Attributes System.UInt64 eye_data_validata_bit_mask Vector3 gaze_origin_mm Vector3 gaze_direction_normalized float pupil_diameter_mm float eye_openness Vector2 pupil_position_in_sensor_area Link to comment Share on other sites More sharing options...
Federica Posted March 19, 2021 Author Share Posted March 19, 2021 Thank you for your answer, I'll do as you have suggested Link to comment Share on other sites More sharing options...
xuemeizhou Posted November 2, 2022 Share Posted November 2, 2022 On 2/17/2021 at 9:47 AM, Federica said: So what's the eye image? Is the lens of the headset? Can not understand the eye image by the eye tracking camera, does they use another coordinate syetem. I know the gaze origin and gaze direction is based on HMD coordinate system. I have a question which is can we get the gaze origin based on the pupil position in sensor area? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now