Forum
Register Calendar Latest Topics
 
 
 


Reply
  Author   Comment   Page 5 of 5     «   Prev   2   3   4   5
EXP.2086

Junior Member
Registered:
Posts: 6
Reply with quote  #101 
Hi Jaewon,
 
I don't know whether it's common, but the Jan-5-2017 version on my Win7 with MatLab R2016b doesn't show real time wave when test I/O. And when I change back to version Dec-1-2016, MonkeyLogic just don't work 
at all.


0
Wing

Junior Member
Registered:
Posts: 16
Reply with quote  #102 
Thank you Jaewon!

    The automatic eye drift corrections work well!
0
EXP.2086

Junior Member
Registered:
Posts: 6
Reply with quote  #103 
Hi Jaewon,
I don't know whether it's common, but the Jan-5-2017 version on my Win7 with MatLab R2016b doesn't show real time wave when test I/O. And when I change back to version Dec-1-2016, MonkeyLogic just don't work at all.
0
stremblay

Member
Registered:
Posts: 65
Reply with quote  #104 
Hi Jaewon,

We are inputting Raw eye data from our eye tracker (Eyelink) into NIMH ML (jan 5). The calibration is done in the Eyelink software before the data is sent to NIMH.

Problem is, when we look at the live eye data plotted on the control screen during the task execution, its gain and offset is way off. Also, the Y-axis is inverted.

We would like to change the gain and offset of the data plotted on the control screen, without changing the gain and offset of the eye data recorded in the BHV file.

Would that be possible?

Thanks!
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #105 
I am not familiar with how EyeLink's calibration works, but, if the eye position on the control screen is way off in terms of both gain and offset, what makes you think EyeLink's output is calibrated?

The eye trace is plotted based on the same numbers that are recorded in the data file and there is no separate gain or offset just for the display purpose. If what you want is not to deform the space that EyeLink's calibration procedure created, you can switch to the "Origin and Gain" method and do just one point calibration for the center, (0,0). It will translate EyeLink's calibration space to MonkeyLogic's center. Then you can make the Y gain -1 to invert the Y-axis.
0
stremblay

Member
Registered:
Posts: 65
Reply with quote  #106 
Thanks for your reply Jaewon.

We can ascertain the accuracy of Eyelink's calibration in two ways: 1) The eyelink PC displays the x and y values recorded live during the task and 2) I have my Neural recording system displaying a digital oscilloscope showing a copy of the x and y voltages sent to NIMH ML. In both cases, the calibration is fine: 0V,0V is represents the center fixation point, and saccades are mapped with the correct gain in voltage, with limits -5V to +5V.

When we look at what is recorded in the BHV.AnalogData.EyeSignal structure, we find that the data truly represents the one seen in 1) and 2). It's just on the control screen, during task execution, that the displaying is off. 

What is the basic voltage dynamic range accepted on the control screen when Raw data is inputted? is it -5V to 5V with 0V representing the center? 

To me it seems like its a simple display issue on the control screen.

Thanks,
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #107 
Okay. It answered many of my questions. Thanks.

There is no limit in the voltage range that the control screen can display. The only limit is the limit of the raw data.

Calibrated raw signals are supposed to correspond to XY visual angles of the gaze, like 1V for 1 deg and 2V for 2 deg. Then my ML simply multiplies the pixels per degree (PPD) and adds the center coordinates of the screen, to convert them into screen coordinates. If your PPD setting is not right, it may appear that the gain is off, but, even so the offset should be okay. So I don't understand why both offset and gain look way off but your saved data is still (0V,0V) for the center.

As I suggested, try the "Origin and Gain" calibration. As long as you set the gain to either 1 or -1, it does not distort the original signals. Also your EyeLink increases the Y signal as the fixation point moves toward the bottom of the screen. If it doesn't provide a way to flip the Y axis direction, the easiest way to do it in ML is to set the gain as -1 in the Origin and Gain method.
0
stremblay

Member
Registered:
Posts: 65
Reply with quote  #108 
Hi Jaewon,

Thanks for your answer.

I must correct one thing I said: the offset is not off, it's OK. When Eyelink inputs 0V,0V into ML, the fixation point appears at the center of the control screen.

It's only the gain that is too small. When Eyelink inputs voltages into ML, the range goes from -5V to 5 V. However, in Eyelink, one volt does not necessarily corresponds to one degree of visual angle. Otherwise, it would limit the tracking to only 10 degrees of visual angle. 1 Volt can represent several degrees of visual angle, depending on the gain I set in Eyelink.

I'm interested in increasing the gain of the signal that ML uses for plotting the eye traces on the control screen. Would there be a way to do that? 
Essentially, multiplying the coordinates used for plotting (not for saving) by a scalar would be fine for me. Can you please tell me where I can find those coordinates?

Thanks!
0
stremblay

Member
Registered:
Posts: 65
Reply with quote  #109 
On another subject, I noticed that modifying the height and width of a jpeg picture using the "pic" function in the condition file has no effect on the size of the displayed picture. The only way to change the size of a displayed picture is to alter the resolution of the jpeg manually in Paint.

Am I right or is there something I didn't get?

Thanks!
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #110 
Now it makes much more sense. However, what you are asking is basically the same question asked in this post.

http://forums.monkeylogic.org/post/eye-position-ignored-in-ml-7828514?pid=1294482532

If one volt does not correspond to one degree, that is what we call "uncalibrated" and you cannot use "Raw Signal". You may be able to calculate the visual angle that one volt represents later yourself, but it is useless for ML. ML needs that information during the task, to map stimulus positions on the subject's visual space. Otherwise, eyejoytrack() cannot work.

Use the "Origin and Gain" calibration. That's what you need. Since the offset is correct, you just need to change the gain.

-----

Yes, you are right. I didn't put the resizing code, but will do in the next version.
0
eKnudsen

Junior Member
Registered:
Posts: 6
Reply with quote  #111 
I've been running the latest ML version (Jan 5) and have noticed that user_text seems to act a bit different than I'm used to. Basically I've got my task set up to provide info about the ongoing trial (which pictures are available, which are rewarded, what was the outcome, etc) that is all decided by the logic in the timing file. 

Previously this just worked, but after the upgrade there seems to be pretty inconsistent updating of the user text box in the task window, to the point where it mostly updates at the end of the trial all at once but this makes interpretation of what's going on in the task difficult. Is this a bug or has something about the user_text function changed to cause this?

I saw this in the update notes: "MATLAB UI controls in the control screen now display the information of the current trial, not the previous trial. (Thanks to Joshua Aman)" but if this is what is going on, I'm not sure it's working for me.

Not the end of the world I suppose as I can throw the same info to the command window, but it's pretty useful to have there . Thanks!
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #112 
Updating UI controls and printing texts on the command window take time more than you think and can affect the performance of MonkeyLogic. So I intended to update them only at the end of each trial. If you want messages to be displayed timely, I think user_warning() is a better way, at least in NIMH ML. I also made new texts added at the bottom of the box, but found that some of new texts are being occluded by the frame. Maybe the size of the text control was not precise. I am working on UI renewal and will try to find a solution for your need.
0
eKnudsen

Junior Member
Registered:
Posts: 6
Reply with quote  #113 
Thanks for the info, I'll look into user_warning. Looking forward to see what you come up with!
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #114 
# Changes in NIMH MonkeyLogic, Jan 30, 2017

  + Improved detection of Visual Studio Redistributable and DirectX
 
  + embedtimingfile.m minifies runtime files better.

  + faster response when the control screen is dragged during calibration
 

0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #115 
# Changes in NIMH MonkeyLogic, Feb 6, 2017

  ~ Fixed that the transparent color key was hard-coded as black.
   (Thanks to neo3dot1415 from the ML forum)
 
  ~ VC++ 2013 Redistributable is now correctly detected in the 32-bit MATLAB.


0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #116 
# Changes in NIMH MonkeyLogic, Feb 10, 2017

  + All time records are now stored as floating-point numbers in BHV.

0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #117 
# Changes in NIMH MonkeyLogic, Feb 17, 2017

  + Version up due to the daqtoolbox update

0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #118 
# Changes in NIMH MonkeyLogic, Feb 17, 2017 sp1

  + Fixed the problem that the joystick calibration could not be run when a USB
  joystick was selected.
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #119 

# Changes in NIMH MonkeyLogic, Feb 17, 2017 sp2

  + Fixed the problem that the simulation mode did not work with Stimulation
  and TTL. In NIMH ML 1, you have to clear all the signal settings in the Input
  / Output panel, to make the simulation mode work without a DAQ board.
  NIMH ML 2 does not require to do so.
 
How to do the eye/joystick calibration with NIMH ML is posted here.

0
yoyo00xx

Junior Member
Registered:
Posts: 2
Reply with quote  #120 
I have a problem with the eye calibration. I'm using NIMH monkeylogic 2017, when I calibrate eye signal use origin & gain, even if I put the gain x and gain y to the maximal (10), it is still not enough. When the monkey look the point(5,0), the eye position in the control window is at about (3,0), how to set the maximal value of the gain a little bigger?
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #121 
To change the gain range, open 'xycalibrate_gain.m' and change Line 74 like the following.

From:
gain_range = [-10 10];

To:
gain_range = [-30 30];  % or any other value you want.

However, it is possible that you need a big gain because your eye tracker does not utilize the full range of its output. Check whether your eye tracker has any option that helps with it.
0
yoyo00xx

Junior Member
Registered:
Posts: 2
Reply with quote  #122 
thank you very much.
I already set eye tracer's output voltage range to the maximal(-10 to 10 mV), and the gain is not enough. Another range(data range) could not be set too small since the image of eye is not at the same position everyday, it should robust to the change of head position. So I need to enlarge the ML gain range.
0
polaris

Junior Member
Registered:
Posts: 1
Reply with quote  #123 
Hello, I am new to ML. The version of matlab I use is R2011b,32 bit; version of ML I use is NIMH ML 2(May25,2017); the I/O includes a touchscreen(ELO E863464) via an USB port and a NI board. The cursor could move across the control screen and display screen when moving the mouse, but could only move in the control screen when using the touchscreen. When loading the task of moving cursor, the cursour moves normally when moving the mouse, but the cursor is stuck to the left edge of  display screen, which means the x value of cursor is always 0, while the y value is correct when using the touchscreen. 
Do you have any suggestions?
0
Jaewon

Administrator
Registered:
Posts: 424
Reply with quote  #124 
NIMH ML1 is discontinued. Please see the following post to get the information of the latest version (NIMH ML2).

http://forums.monkeylogic.org/post/nimh-monkeylogic-2-8444337
0
Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.