METHOD, SYSTEM AND COMPUTER PROGRAM PRODUCT FOR MAPPING A VISUAL FIELD
20230022601 · 2023-01-26
Inventors
- Alessandro GRILLINI (Amersfoort, NL)
- Alejandro HERNÁNDEZ GARCIA (Montreal, CA)
- Remco Jan RENKEN (Haren, NL)
Cpc classification
G06F3/015
PHYSICS
A61B3/024
HUMAN NECESSITIES
A61B3/0025
HUMAN NECESSITIES
International classification
Abstract
For measuring quality of view over a visual field of view of an eye, during a measuring period, deviations between gaze positions and associated stimulus positions where the stimulus to be followed was displayed when the gaze position was detected and magnitudes of the registered deviations arte determined. For each field portion of a map of a visual field of view, quality of view is determined in accordance with a quality of view estimates of associated ones of the registered deviations of which the associated stimulus positions are located relative to the gaze position so that the associated stimulus positions are in that field portion. For each of the associated ones of the registered deviations, the quality of view is estimated in accordance with the magnitude of that associated one of the registered deviations and with magnitudes of at least preceding or succeeding ones of the registered deviations.
Claims
1. A method of measuring a quality of view over a visual field of view of an eye, the method comprising, during a measuring period: displaying a stimulus to be followed in a stimulus position in a direction of view relative to an eye, moving the stimulus to be followed in a field of view of the eye in varying directions and registering the stimulus positions over time, detecting and registering gaze positions in directions of view of the eye following said stimulus to be followed over time, determining and registering deviations between the gaze positions and associated ones of the stimulus positions where the stimulus to be followed was displayed when the gaze position was detected and magnitudes of the registered deviations, and determining a visual field map of field portions, wherein, for each of said field portions, quality of view is determined in accordance with quality of view estimates of associated ones of the registered deviations of which the associated stimulus positions are located relative to the gaze position so that the associated stimulus positions are in that field portion, and, for each of said associated ones of the registered deviations, the quality of view is estimated in accordance with the magnitude of that associated one of the registered deviations and with magnitudes of at least preceding or succeeding ones of the registered deviations.
2. The method according to claim 1, wherein the stimulus to be followed is moved with varying velocities.
3. The method according to claim 1, wherein gaze positions measured while the gaze position moves with a velocity over a threshold value, stops and moves again with a velocity over the threshold value, are replaced by interpolated gaze positions.
4. The method according to claim 3, wherein positions in a predetermined range of time or sample number prior to and after gaze positions measured while the gaze position moves with a velocity over the threshold value, stops and moves again with a velocity over the threshold value are replaced by interpolated gaze positions.
5. The method according to claim 1, in which the stimulus to be followed is the only moving stimulus being displayed.
6. The method according to claim 1, including the use of a recursive neural network trained using gaze positions obtained by measurements of gaze positions of a healthy eye following a displayed stimulus to be followed.
7. The method according to claim 6, wherein indications for types of visual dysfunctions of the visual field as a whole are determined from registered gaze positions and stimulus positions using the neural network.
8. The method according to claim 7, wherein visual view defects are simulated by suppressing the displaying of the stimulus to be followed in predetermined field portions.
9. The method according to claim 6, wherein data inputted into the recursive neural network during training and during use of the trained recursive neural network include at least one of the following categories of data: a maximum value of a correlation between gaze position velocity and stimulus position velocity; temporal offset (lag) between gaze position and stimulus position; temporal precision of gaze position relative to stimulus position; variance explained by a Gaussian model fitted to a correlogram of gaze positions velocities and stimulus position velocities against time delay. number of occurrences of a most likely deviation of the gaze position from the stimulus position; average spatial offset (bias) between the gaze position and the stimulus position; average deviation of the gaze position from the stimulus position; and variance of the deviation of the gaze position from the stimulus position explained by a Gaussian model fitted to a graph of occurrences of deviations in a plurality of ranges.
10. The method according to claim 1, wherein the stimulus position is moved continuously during the measurement period.
11. The method according to claim 1, wherein the determination of the quality of view for each associated one of the registered deviations is carried out by integration over a series of the registered deviations, said series: starting from a starting one of said series of the registered deviations having a magnitude at or below a minimum threshold magnitude h.sub.0; including a first succession of the registered deviations having magnitudes increasing up to a magnitude h of said associated one of the registered deviations; including said associated one of the registered deviations; and including a second succession of the registered deviations having magnitudes decreasing from said magnitude h of said associated one of the registered deviations to a closing one of said series of the registered deviations, having a magnitude at or below the minimum threshold magnitude h.sub.0; and forming an uninterrupted succession of the registered deviations of which, except for said starting one of said series of the registered deviations and said closing one of said series of the registered deviations, the magnitudes are larger than the minimum threshold magnitude h.sub.0.
12. The method according to claim 11, wherein, prior to the integration over the series of the registered deviations, the magnitudes of the series of the registered deviations that are larger than h are reduced to a capping value in accordance with the magnitude h.
13. The method according to claim 1, wherein the determination of the quality of view for each field portion is carried out using a recursive neural network trained to obtain a recurrent neural model with: training input comprising a series of training time points each including a stimulus position, being the position of the stimulus to be followed, and a gaze position of a healthy eye following the stimulus to be followed, and an indication for each training time point, whether the stimulus position relative to the gaze position is in a field portion where displaying of the stimulus to be followed was suppressed, and training output comprising a map of field portions where displaying of the stimulus to be followed was suppressed during a measurement session for obtaining the training input.
14. The method according to claim 13 wherein, in operation, the method comprises: inputting a series of time points each including a stimulus position, being the position of the stimulus to be followed, and a gaze position of an eye to be examined following the stimulus to be followed; the trained recursive neural network classifying the visual qualities of the series of time points into scotoma time points at locations in the field of vision where vision is classified to be functional and non-scotoma time points at locations in the field of vision where vision is classified to be dysfunctional; determining for each of the field portions which time points have a deviation such that the stimulus position relative to the gaze position is in that field portion; and generating a visual field map indicating, for each of the field portions, an aggregated vision quality value in accordance with the estimated visual qualities of the time points having a stimulus position determined to be in that field portion.
15. The method according to claim 13, wherein the recursive neural network includes fully connected layers in which all output units are connected to all input units and vice versa and at least one gated recurrent unit that processes sequential information in a recurrent way with long short-term memory capabilities to capture time dependencies.
16. The method according to claim 15, further comprising: capturing and inputting luminance and pursuit data during the measurement period; at least two fully connected layers processing the luminance and pursuit data into categorical data indicating types of scotoma; inputting a combination of the time points from the gated recurrent unit and the categorical data into a softmax classifier of the recurrent neural network; and the softmax classifier predicting for each time point whether, the stimulus position of that time point is in a location in the visual field, which is over a scotoma.
17. A system for measuring quality of view over a visual field of view of an eye, the system comprising: a display; an eye-tracker for tracking gaze positions in a direction of view of an eye on the display; a data processor system including a video display controller, connected to the display for controlling the display for displaying a visual stimulus to be followed in a stimulus position moving over the display and connected to the eye tracker for receiving data representing the gaze positions from the eye tracker, the data processor system being programmed for, during a measuring period: causing the display to display the stimulus to be followed to be displayed in the stimulus positions, receiving data representing the gaze positions from the eye-tracker, causing the display to move the stimulus to be followed over the display in varying directions and registering the stimulus positions over time, registering the received gaze positions over time, determining and registering deviations between the gaze positions and associated ones of the stimulus positions where the stimulus to be followed was displayed when the gaze position was detected and magnitudes of the deviations, and determining a visual field map of field portions, wherein, for each of said field portions, quality of view is determined in accordance with the quality of view estimates of associated ones of the registered deviations of which the associated stimulus positions are located relative to the gaze position so that the associated stimulus positions are in that field portion, and, for each of said associated ones of the registered deviations, the quality of view is estimated in accordance with the magnitude of that associated one of the registered deviations and with magnitudes of at least preceding or succeeding ones of the registered deviations.
18. A computer program product stored in a computer readable form, the computer program, when executed on a computer causes the computer to: control a display for displaying a stimulus to be followed in stimulus positions, receive data representing gaze positions on the display, control the display for moving the stimulus to be followed over the display in varying directions and registering the stimulus positions over time, register the received gaze positions over time, determine and register deviations between the gaze positions and associated ones of the stimulus positions where the stimulus to be followed was displayed when the gaze position was detected and magnitudes of the deviations, and determine a visual field map of field portions, wherein, for each of said field portions, quality of view is determined in accordance with the quality of view of associated ones of the registered deviations of which the associated stimulus positions are located relative to the gaze position so that the associated stimulus positions are in that field portion, and, for each of said associated ones of the registered deviations, the quality of view is estimated in accordance with the magnitude of that associated one of the registered deviations and with magnitudes of at least preceding or succeeding ones of the registered deviations.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069]
DETAILED DESCRIPTION
[0070] The invention is further described with reference to examples of methods according to the invention and examples of tests for checking validity of the methods according to the invention.
[0071] For the methods according to the invention and the tests for checking validity of the methods according to the invention, the following hardware can be used: [0072] a display screen 52 (see
[0075] The data processor system 54 is programmed for carrying out a method according to the example described below. Data from the eye-tracker 53 are in this example acquired with a sampling rate of 1000 Hz and down sampled to temporally match the refresh rate of 240 Hz of the display screen 52.
[0076] In the present example, the visual stimulus to be followed is in the form of a Gaussian blob 1 of luminance moving on a uniform gray background 2 (˜140 cd/m.sup.2) (see
[0077] In step 3 (
[0080] where at each time point, velocity values for the horizontal (υ.sub.x) and vertical (υ.sub.y) components are drawn from a Gaussian distributions with a mean of 0 and separate standard deviations for horizontal (σ.sub.h) and vertical (σ.sub.υ) directions. For example, for a standard screen resolution of 1920×1080 pixels the horizontal stand deviation can be σ.sub.h=64.45 deg/s and the vertical stand deviation can be σ.sub.υ=32.33 deg/s. Preferably these σ values may be adjusted based on screen dimension and/or specific application, e.g., obtaining a representation of a visual field map under specific conditions (e.g. taking measurements from a person with a known disease or known complaints).
[0081] The velocity vector can be low pass filtered by convolution with a Gaussian kernel such that a cutoff frequency is achieved, preferably around 10 Hz. Subsequently, via temporal integration, velocities are transformed to positions of the stimulus 1:
[0082] To induce the person whose vision is tested to perform saccadic movements, quick displacements in random directions can be included in the trajectory of movement, as far as the displayed stimulus to be followed does not fall outside the boundary of the screen. This is achieved by adding such displacements, for instance each time after an interval of a fixed amount of seconds, preferably two, or after random time intervals. In
[0083] For the data acquisition the person whose vision is tested is positioned in front of the screen, for instance at a viewing distance of 60 cm. It is noted that instead of a screen other display techniques, such as holography, can be used as well. In step 6 (
is obtained (see
[0084] For preprocessing, the time-series of gaze positions 7 is read from the storage 5. In the preprocessing step 15 of the present example, a first time period (e.g. the first 250 ms) of each time-series is discarded to avoid artefacts during settling in of the person whose vision is tested.
[0085] Other artefacts which are preferably avoided are artefacts due to blinking and missing data. Blink periods can for instance be identified by quick displacement back and forth forming spikes 8-12 in the graph 7 of gaze positions 7 (two short periods in which the absolute value of the first derivative of {right arrow over (p)}(t) is above a predefined threshold and a short period in which it is 0). Time windows of each blink period found and a number of samples (e.g. five) on both sides of each blink period are preferably replaced by data determined using an autoregressive model using values of (e.g. ten) samples preceding and (e.g.) ten samples following the sample values to be replaced. Periods during which no data have been obtained can be expanded and replaced in the same manner as blink periods. If total data loss (due to blinks or otherwise) in a trial is very large (e.g. exceeds 25%), the entire trial is preferably removed from further analysis.
[0086] Thus in the present example a graph 7′ (see
[0087] A positional error time-series is obtained by computing the distances, in this example the Euclidean distances, between {right arrow over (p)}(t) and {right arrow over (s)}(t), separately for horizontal and vertical components.
[0088] In step 17, time-series of gaze positions 7′ {right arrow over (p)}(t) and stimulus positions {right arrow over (s)}(t) of the filtered data 14 are transformed into respective velocities {right arrow over (ν.sub.p)}(t) and {right arrow over (ν.sub.s)}(t) by taking the first order temporal derivative. This results in a time series of velocities. An example of a graph 18 of a time series of such velocities of the gaze position of the eye {right arrow over (ν.sub.p)}(t) in x-direction is shown in
[0089] Normalized time-shifted cross-correlations 29 (
CCG
amplitude: maximum value of the correlation between {right arrow over (ν.sub.p)} and {right arrow over (ν.sub.s)};
μ: temporal offset (lag) between eye and stimulus;
σ: temporal precision of tracking performance (i.e. how much time is needed to the observer to estimate target's position);
R.sup.2: variance explained of the temporal Gaussian model.
PDD
amplitude: occurrences of the most likely positional deviation;
μ: spatial offset (bias) between eye and stimulus;
σ: spatial precision of tracking performance;
R.sup.2: variance explained of the spatial Gaussian model.
[0090] The eight listed spatio-temporal features of the relationship between the stimulus positions and the associated gaze positions over a measurement session are obtained in horizontal direction and in vertical direction, so a total of 16 spatio-temporal features is obtained and stored in the storage 5. In step 45 (
[0091] For determining a quality map of the visual field of an eye of which ocular movement has been measured a spatio-temporal integration of positional deviations between the stimulus location and the gaze location can be used. The gaze position of an eye of a person with reduced oculomotor functionality, e.g. reduced vision in portions of the visual field of an eye, will deviate more, and for longer periods of time, from the position of the target stimulus to be followed than the gaze position of a person with a healthy oculomotor functionality will deviate from the position of the target stimulus to be followed. The magnitude h(t) of the positional deviation 46 (
h(t)=√{square root over ((p.sub.x(t)−s.sub.x(t)).sup.2+(p.sub.y(t)−s.sub.y(t)).sup.2)}
[0092] A spatio-temporal integration 47 is performed using a Threshold-Free Cluster Enhancement algorithm (TFCE). Such an algorithm is described in Threshold-free cluster enhancement: addressing problems of smoothing, threshold dependence and localisation in cluster inference; Smith, S. M. & Nichols, T. E.; Neuroimage 44, 83-98 (2009). In the present implementation of this algorithm, for each registered combination of a stimulus position and a gaze position, the TFCE score is given by the sum of the magnitudes of all “supporting sections” of a cluster formed by a deviation curve underneath it; starting as the magnitude h is incrementally raised from h.sub.0 up to the magnitude h.sub.t of a given time point t, the time course is thresholded at h, and the single contiguous cluster containing t ends as the magnitude returns to h.sub.0. The surface area under the deviation curve defines the spatio temporal integration score for that magnitude h. This score is the magnitude h (raised to some power H) multiplied by the cluster extent in time e (raised to some power E), using the following formula:
D.sub.STI∫.sub.h=h.sub.
[0093] This integral is implemented as a discrete sum using a finite step-size, dh (for example, dh=1/2500 of the maximum of h); h.sub.0 is typically the minimum of h, and E and H can be set a priori (optimized using simulated visual field effects). The result is a time-series of positional deviations 48, each weighted for their spatio-temporal integrated characteristics: D.sub.STI. Thus, for each positional deviation, the value D.sub.STI depends on the magnitude of the deviation and the time it takes until the deviation curve of which it is a part has returned to a magnitude ho. The value D.sub.STI assigned to a positional deviation 48 can also be defined as forming an integral for each time point from a beginning of deviation up to the magnitude h, until the deviation has returned to the magnitude h.sub.0 and capped at the magnitude h.
[0094] For determining a quality of view field map 51 of the eye from which measurements have been made, each occurrence of the input time-series D.sub.STI is associated with its horizontal and vertical components, respectively D′.sub.x=p.sub.x(t)−s.sub.x(t) and D′.sub.y=p.sub.y(t)−s.sub.y(t), which form the x- and y- components of the position of the stimulus relative to the center of the visual field, which include for each time point an estimate of the quality of view at that position relative to the center of the visual field.
[0095] In step 50, these components are mapped onto a Cartesian plane of which the origin represents the center of gaze of the eye. In this way, the Cartesian plane forms a representation of the visual field and its center represents the fovea.
[0096] In step 50, spatial binning may be applied (e.g. with a bin size equal to one degree of visual field). The value at each bin is then the average of the D.sub.STI values within that bin.
[0097] Finally, the calculated map 51 can be stored in the storage 5 and displayed, for instance in a 50×40 grid, covering ±25 degrees of visual field. In this map the severity of visual field loss is indicated (for instance color-coded or in gray scale) and the map can readily be interpreted by ophthalmologists.
[0098] Examples of such visual field maps, resulting from experimental implementation of the described spatio-temporal integration using TFCE method, are shown in
[0099] As an alternative to the spatio-temporal integration method, a map of quality of view of a visual field of an eye can be estimated from the measurement results using a trained recursive neural network. The recursive neural network can be trained to obtain artificial intelligence classifiers 34 and 45 (
[0100] The deep recursive neural network consists of two streams 37, 38 (see
[0101] All the time points from the sequential data (from GRU layers 41) are merged with the categorical data (obtained with luminance level and pursuit type information from FC layers 42) and processed by two FC layers 43 with 32 and two nodes, respectively. The output of these FC layers 43 is the input of a softmax classifier 34 that predicts whether, for each time point, the stimulus position is in a location in the visual field, i.e. relative to the gaze position, which is over a scotoma.
[0102] The other stream also merges the last time points from the sequential data (from GRU layers 41) with the categorical data (from FC layers 42) and processes these data by two FC layers 44 with 32 and four nodes, respectively. The output of these FC layers 44 is the input of another softmax classifier 45 that predicts the visual field condition (categorical classifier, 45).
[0103] Cross-entropy loss is used to define the cost function of the model:
where M is the number of classes, y is the ground truth label (obtained from the simulated visual field map) and p is the predicted probability distribution, i.e. the output of each softmax classifier. Subscript s refers to the point-wise scotoma classifier 34 and subscript d refers to the visual field defect classifier 45. In order to give priority to optimizing the map of quality of vision over the visual field, for α and β the following values may for instance be set: α=0.75 and β=0.25. Parameter θ of the model can be learned through mini-batch gradient descent, for instance using RMSprop for 15,000 iterations with batch size B=128.
[0104] Training batches can be formed by first selecting B different sequences from a set of for instance 20-seconds trials, originally sampled at 240 Hz. Then, randomly one sub-sequence of 4.17 seconds (1000 time steps) can be sampled from each sequence and finally be down-sampled to 60 Hz (250 time steps). The luminance level and pursuit type of the corresponding sequences are also added to the training batches.
[0105] For determining the visual field defect classification 35 (for the entire visual field), a decision tree (DT) algorithm can be trained to classify and to reduce the dimensionality of the feature-space. Each node of the DT splits the feature space into subspaces, eventually leading to one of a group of possible visual field defects. At each split a decision is based on the decision criterion
[0106] Gini's Diversity Index (GDI) given as follows:
1Σf.sup.2(i)
where f(i) is the fraction of the number of samples in the training set for class i that reaches a particular node. If a node contains only samples of a unique class then the GDI has a value of 0 and the node is assigned to that class, completing the decision. The classifier's performance is estimated using a 10-fold cross-validation scheme wherein the entire dataset is randomly partitioned into 10 subsets of equal size. Subsequently, nine subsets constitute the training set and the remaining set is used as test set. This process is then repeated until every subset has been used once as a test set. The estimated total accuracy is the average of the accuracies measured after each repetition. This analysis using categorical classifier 45 leads to a categorical classification 35 of the observer visual field defect (e.g.: no defect, central loss, peripheral loss, hemifield loss) that is stored in the storage 5 and can be used by ophthalmologists as a preliminary screening tool to determine what further steps are most likely needed to make a diagnosis.
[0107] The models 34 and 45 can be regarded as a mapping y=f(x; θ), where
p.sub.s being the point-wise scotoma prediction and p.sub.d being the visual field defect prediction 35 of a sub-sequence x.
[0108] The data acquisition for one eye can for instance consist of six trials of 20-seconds for each luminance/pursuit combination, the predicted output probability distributions of multiple sub-sequences being averaged. The predictions of 6×2×2=24 down sampled sequences can be averaged. The predicted visual field defect 35 for an eye s of which ocular movement has been measured is thus:
where M is the number of sub-sequences in the set of trials S of the eye s of which ocular movement has been measured.
In particular, given the time series p.sub.x(t), s.sub.x(t), p.sub.y(t) and s.sub.y(t), together with the luminance and pursuit, the classifier model 34 (
[0109] In visual field mapping step 50, the set of deviations D.sub.labeled is split into two subsets, depending on the labeling. A label value of 1 results in a classification of the specific data point as being obstructed by a scotoma, while a label of 0 results in a classification of the specific data point as not being obstructed by a scotoma.
[0110] For determining a quality of view field map 51 of an eye from which measurements have been made, using the trained recursive neural network, each occurrence of the input time-series D.sub.labeled is associated with its horizontal and vertical components, respectively D′.sub.x=p.sub.x(t)−s.sub.x(t) and D′.sub.y=p.sub.y(t)−s.sub.y(t), which form the x- and y- components of the position of the stimulus relative to the center of the visual field, which include, for each time point, an estimate of the quality of view at that position relative to the center of the visual field.
[0111] In step 50, these components are mapped onto a Cartesian plane of which the origin represents the center of gaze of the eye. In this way, the Cartesian plane forms a representation of the visual field and its center represents the fovea.
[0112] In step 50, spatial binning may be applied (e.g. with a bin size equal to one degree of visual field). The value at each bin is then the average of the D.sub.labeled values within that bin.
[0113] Finally, the calculated map 51 can be stored in the storage 5 and displayed, for instance in a 50×40 grid, covering ±25 degrees of visual field. In this map the severity of visual field loss is indicated (for instance color-coded or in gray scale) and the map can readily be interpreted by ophthalmologists.
[0114] Examples of such visual field maps, resulting from experimental implementation of the described recurrent neural network method, are shown in
[0115]
[0116]
[0117]
[0118] Several features have been described as part of the same or separate embodiments. However, it will be appreciated that the scope of the invention also includes embodiments having combinations of all or some of these features other than the specific combinations of features embodied in the examples.