Welcome! Log In Create A New Profile

Advanced

Questions about binocular tracking

Posted by xiaoxu1107 
Questions about binocular tracking
January 27, 2023 09:18AM
Hi, Jaewon

I am using binocular tracking for the first time and I have some questions about using it.

1. Do I need to do calibration for both eyes separately? The Eye cal #1, Eye cal #2 in the calibration panel? (As in Fig1)
2. Can I save the raw voltage data of eye movement in the ML data, in addition to the calibrated data?
3. I have been confused according to what to adjust the parameters in Fig2. I have been adjusting these parameters randomly until I see the ‘red dot’ representing eye movement show up on the screen.
4. If I use binocular tracking, should I make sure that the center of the screen is right in the center of the monkey's eyes?

Thanks in advance!
Attachments:
open | download - Fig1.png (48.2 KB)
open | download - Fig2.png (24.2 KB)
Re: Questions about binocular tracking
January 27, 2023 10:38AM
1. Yes. Binocular tracking can be one eye each from two subjects who are looking at different screens.
2. No, if you are using TCP/IP. There is no need, since voltage values can be calculated back. I do not think it is explained in the manual, though.
3. You use them if the range of the eye tracker input is not -10 to 10. See [General setup] of this manual page.
4. No, but it can be recommended if you are calibrating two eyes of one subject.
Re: Questions about binocular tracking
January 29, 2023 10:23AM
Thanks for your reply. In response to your third answer, I remember the eye movement signal as an analog input, usually between -5V and 5V. It's already between -10 and 10, so why do I need to adjust the gain and offset here? I think I must have misunderstood something. Looking forward to your answer.
Re: Questions about binocular tracking
January 29, 2023 12:27PM
The numbers that eye trackers send out through TCP/IP are not the same as their voltage output.
Re: Questions about binocular tracking
February 14, 2023 09:41AM
Hi, Jaewon

After using binocular tracking for a while, I have the following problems.

1. In the random fixation task, it seems that as long as one of the eyes falls within the range of the target point, the trial is judged to be correct, even though the other eye drops outside the range.
2. Because one eye often fell outside the range of the target points, I set 100% auto drift correction to make the MonkeyLogic correct the difference automatically, but it seems to have no effect.
3. In the manual, a calibration matrix can be directly loaded into another task to save time in calibrating. But I found that, after loading, I opened the eye calibration interface in this task to verify the accuracy of the calibration. The actual position of the eye and the target point is still quite different. How is this?

I really appreciate any help you can provide.

Best,
Xiao
Re: Questions about binocular tracking
February 14, 2023 09:59AM
Please show me your task code and explain how you loaded the calibration matrix in a new task.
smileys with beerRe: Questions about binocular tracking
February 15, 2023 07:14AM
In response to the first question I mentioned, I found that my code only wrote eyejoytrack for one of the eyes, and after adding eyejoytrack('acquirefix2',...) for the second eye, it works.

I've attached some screenshots for the third question to try to make myself clear. randomfix is the task that has done 2D spatial transformation eye calibration, and freeforage is the task that has not done eye calibration. So after I load the freeforage task, 1) click 'Import Eye Cal' from the eye calibration panel in the main interface. 2) select the cfg2 file of the randomfix task from the pop-up dialog. 3) select import Eye#1. Then repeat steps 1-3 to import the calibration matrix of eye2. Is this process correct? (Please see the attachments)

In addition to the above questions, I saw this post 2D spatial transformation calibration, and I had the same problem. I boosted the gain of my eye tracker input according to your answer. Is my projection map ok? The red circles in the map are almost separated (Please see the attachment eye2DCal). Do I need to increase the gain value further? Even if I increase the gain value, I have to make sure the final values are between -10 and 10, right?

In addition to the X & Y values from the eye tracker being in a range of -10 to 10, other eye tracker inputs, such as pupil size, do not need to be converted to between -10 and 10, right?

Last question, are the values in each trial AnalogData.Eye in the bhv2 file recorded from the time of eventcode9 to the time of eventcode18?
Attachments:
open | download - ImportEyeCal1.png (241.7 KB)
open | download - ImportEyeCal2.png (14.3 KB)
open | download - ImportEyeCal3.png (228.8 KB)
open | download - ImportEyeCal4.png (239.7 KB)
open | download - eye2DCal.png (90.3 KB)
Re: smileys with beerRe: Questions about binocular tracking
February 15, 2023 01:10PM
[Import Eye Cal] copies the calibration matrix only for the currently selected eye and method. If Eye#1 and 2-D Transform are selected in the freeforage task when you hit [import], for example, only Eye#1 and 2-D transform of the freeforage task are overwritten with the values from the randomfix task. You can import from either Eye#1 or Eye#2 of the randomfix task, though, depending on what you choose subsequently.

If you are not sure whether the calibration matrix is copied or not, [Reset] the calibration first so that the next button becomes 'Calibrate Eye' and then [Import]. Once the matrix is copied, the button will be changed to 'Re-calibrate'.

I do not know what problem you are referring to in that post. The red circles in your figure are not spread out as much as the cyan circles. You can increase the gain 2-3 times more, if the current gain is not sufficient. The range does not have to be [-10 10] and can be larger.

No, they don't. The gain and offset are mostly for the X & Y.

No, they are not. The data acquisition begins at Time 0 and that is also the trial start time. The time of Event 9 is just the time when it was stamped and usually later than 0. Likewise, Event 18 is stamped before the end of a trial, not exactly at the trial end. See the following link.
https://monkeylogic.nimh.nih.gov/docs_GettingStarted.html#AlignTimestampsAndAnalogData
The 9 and 18 are there for a historical reason. You can totally ignore them.
Re: smileys with beerRe: Questions about binocular tracking
February 16, 2023 09:49AM
Thanks for your suggestions, based on your answers, I've solved all my problems, and today's experiment went well!
And another thing I want to ask is, in bhv2 file, I found the length of each trial's AnalogData.Eye data is closer to the timestamp value of Event18 than the difference of AbsoluteTrialStartTime between two adjacent trials. Is it because this difference contains inter-trial interval? And the eye movement data for this period is not recorded in bhv2?
Attachments:
open | download - size of Eye data.png (8.6 KB)
open | download - AbsoluteTrialStartTime.png (3.7 KB)
Re: smileys with beerRe: Questions about binocular tracking
February 16, 2023 10:22AM
The input signals during ITI are not recorded, unless you turn on the ITI recording option.
Re: smileys with beerRe: Questions about binocular tracking
February 22, 2023 09:32AM
I found that every time I import the calibration matrixes of both eyes by [Import Eye Cal] and then click [Re-calibrate] to enter the calibration interface, the calibration interfaces of both eyes do become the same as those of the random fix task (please see the attached screenshots). But when I check the bhv2 data, I find the values of origin, gain, rotation ... in MLConfig.EyeTransform of freeforage task are not same with those in MLConfig.EyeTransform of random fix task(please see the attached MLConfigEyeTransform), am I setting something wrong?
Attachments:
open | download - random fix_eye1.png (93.1 KB)
open | download - freeforage_eye1.png (89.4 KB)
open | download - freeforage_MLConfigEyeTransform.png (25.5 KB)
open | download - randomfix_MLConfigEyeTransform.png (17.4 KB)
Re: smileys with beerRe: Questions about binocular tracking
February 22, 2023 10:54AM
There is no way that MLConfig saved in the datafile can differ from the settings on the menu. So I guess you loaded another task or subject profile after importing the calibration but before starting the task.
Re: smileys with beerRe: Questions about binocular tracking
February 22, 2023 11:27AM
I think I know what the problem is. Maybe the transformation matrix of 2D spatial calibration is saved in MLConfig.EyeTransform{1,3} and EyeTransform{2,3}?
Re: smileys with beerRe: Questions about binocular tracking
February 22, 2023 02:58PM
What you captured is not the calibration matrices of the 2-D Spatial Transformation. Are you sure what you are talking about?
Re: smileys with beerRe: Questions about binocular tracking
February 26, 2023 08:25AM
Sorry to bother you again. I drew the values of the monkey's eye movements (AnalogData.Eye) and most of them are normal, falling between -30 and 30 degrees. But some values are particularly large, even reaching several hundred or thousand degrees. Do you know what is going on?
Attachments:
open | download - Eye Positions.png (25.3 KB)
Re: smileys with beerRe: Questions about binocular tracking
February 26, 2023 10:03AM
Of course, I do. But you took enough of my time to make me answer for trivial things and your mistakes, so I want you to do some homework on your own. Do you read other people's postings?

The National Institute of Mental Health (NIMH) is part of the National Institutes of Health (NIH), a component of the U.S. Department of Health and Human Services.