Eye movement coordinate compensation method and device, readable storage medium and eye movement interaction equipment
By obtaining and compensating the difference in eye movement coordinates in eye movement interaction devices, the eye movement coordinate error problem caused by environmental changes during long-term use is solved, and the accuracy and experience of interaction are improved.
Patent Information
- Application Number
- CN202510102040.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-21
- Publication Date
- 2025-05-30
AI Technical Summary
When using eye movement interactive devices for a long time, due to changes in the eye environment and external environment, the eye movement coordinate error increases, affecting the interaction accuracy.
By obtaining the first eye movement coordinates and determining the detection range, detecting preset features, calculating the difference between the eye movement coordinates and the center coordinates of the feature objects, determining the eye movement coordinate compensation value, and compensating the subsequent eye movement coordinates to correct the deviation.
Accurate compensation of eye movement coordinates is achieved, errors caused by environmental changes are reduced, and experience and accuracy of eye movement interaction is improved.
Smart Images

Figure CN120066255A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the technical field of human-computer interaction, and particularly relates to a method and device for compensating eye movement coordinates, a computer-readable storage medium, and an eye movement interaction device. Background Art
[0002] With the continuous development of technology, various intelligent devices have become increasingly popular, and the ways of human-computer interaction have also changed with each passing day. There are various ways to achieve a certain human-computer interaction by analyzing the state of human pupil activities. For example, some head-mounted intelligent devices can control the operating system through the eyes. Since there are significant differences in the size, spacing, etc. of the eye structures of each person, and the environments in which eye movement interaction is carried out are different, users need to perform data calibration before using eye movement interaction devices to achieve more accurate eye movement coordinate calculation. However, with the continuous enrichment of eye movement interaction application scenarios, there are many situations that require long-term eye use, such as cognitive assessment and training through eye movement, or playing virtual reality (VR) games, etc. The extension of time means that the user's eyes will experience a certain degree of fatigue, and external environmental factors such as light may also change over time. When these conditions change, the initial eye movement calibration data will become no longer fully applicable, resulting in an increase in the error of eye movement coordinates. Summary of the Invention
[0003] In view of this, the embodiments of this application provide a method and device for compensating eye movement coordinates, a computer-readable storage medium, and an eye movement interaction device to solve the problem of increased eye movement coordinate error caused by changes in the eye environment and external environment during long-term use of eye movement interaction.
[0004] The first aspect of the embodiments of this application provides a method for compensating eye movement coordinates, which may include:
[0005] Obtain a first eye movement coordinate and determine a detection range corresponding to the first eye movement coordinate;
[0006] Detect a preset feature in the detection range;
[0007] When the feature is detected, determine the difference between the first eye movement coordinate and the center coordinate of the feature;
[0008] Determine an eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature;
[0009] Obtain a second eye movement coordinate and compensate the second eye movement coordinate according to the eye movement coordinate compensation value to obtain a compensated eye movement coordinate.
[0010] In a specific implementation of the first aspect, before detecting a preset feature object within the detection range, the following steps may further be included:
[0011] Perform an eye movement coordinate jitter test within a preset interaction response duration to obtain an eye movement coordinate jitter test result;
[0012] In the case where the eye movement coordinate jitter test result is a pass, execute the step of detecting the preset feature object within the detection range and subsequent steps;
[0013] In the case where the eye movement coordinate jitter test result is a fail, return to execute the step of obtaining the first eye movement coordinate and subsequent steps.
[0014] In a specific implementation of the first aspect, the step of performing an eye movement coordinate jitter test within a preset interaction response duration to obtain an eye movement coordinate jitter test result may include:
[0015] Obtain each eye movement coordinate within the interaction response duration;
[0016] Determine the variance of each eye movement coordinate within the interaction response duration;
[0017] In the case where the variance is less than a preset variance threshold, determine that the eye movement coordinate jitter test result is a pass;
[0018] In the case where the variance is greater than or equal to the variance threshold, determine that the eye movement coordinate jitter test result is a fail.
[0019] In a specific implementation of the first aspect, after detecting a preset feature object within the detection range, the following steps may further be included:
[0020] In the case where the feature object is not detected, expand the detection range and return to execute the step of performing an eye movement coordinate jitter test within a preset interaction response duration and subsequent steps.
[0021] In a specific implementation of the first aspect, after determining the difference between the first eye movement coordinate and the center coordinate of the feature object, the following steps may further be included:
[0022] Determine whether there is an abnormality in the difference between the first eye movement coordinate and the center coordinate of the feature object;
[0023] In the case where there is an abnormality, return to execute the step of obtaining the first eye movement coordinate and subsequent steps;
[0024] In the case where there is no abnormality, execute the step of determining the eye movement coordinate compensation value and subsequent steps.
[0025] In a specific implementation manner of the first aspect, determining the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature object may include:
[0026] Recording the difference between the first eye movement coordinate and the center coordinate of the feature object in a preset difference set; wherein, the difference set includes each difference determined in previous times;
[0027] Calculating the average value of each difference recorded in the difference set, and determining the calculated average value as the eye movement coordinate compensation value.
[0028] In a specific implementation manner of the first aspect, determining the detection range corresponding to the first eye movement coordinate may include:
[0029] Taking the first eye movement coordinate as the center of a circle, and determining the area within a preset radius as the detection range corresponding to the first eye movement coordinate.
[0030] A second aspect of the embodiments of the present application provides an eye movement coordinate compensation device, which may include:
[0031] A detection range determination module, configured to obtain the first eye movement coordinate and determine the detection range corresponding to the first eye movement coordinate;
[0032] A feature object detection module, configured to detect a preset feature object within the detection range;
[0033] A coordinate difference determination module, configured to determine the difference between the first eye movement coordinate and the center coordinate of the feature object when the feature object is detected;
[0034] A compensation value determination module, configured to determine the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature object;
[0035] An eye movement coordinate compensation module, configured to obtain the second eye movement coordinate and compensate the second eye movement coordinate according to the eye movement coordinate compensation value to obtain the compensated eye movement coordinate.
[0036] In a specific implementation manner of the second aspect, the eye movement coordinate compensation device may further include:
[0037] A jitter test module is used to perform an eye movement coordinate jitter test within a preset interaction response duration to obtain an eye movement coordinate jitter test result; in the case where the eye movement coordinate jitter test result is a pass, execute the step of detecting a preset feature within the detection range and subsequent steps; in the case where the eye movement coordinate jitter test result is a fail, return to execute the step of obtaining the first eye movement coordinate and subsequent steps.
[0038] In a specific implementation manner of the second aspect, the jitter test module may include:
[0039] An eye movement coordinate acquisition unit is used to acquire each eye movement coordinate within the interaction response duration;
[0040] A variance determination unit is used to determine the variance of each eye movement coordinate within the interaction response duration;
[0041] A jitter test result determination unit is used to determine that the eye movement coordinate jitter test result is a pass in the case where the variance is less than a preset variance threshold; and determine that the eye movement coordinate jitter test result is a fail in the case where the variance is greater than or equal to the variance threshold.
[0042] In a specific implementation manner of the second aspect, the eye movement coordinate compensation device may further include:
[0043] A detection range expansion module is used to expand the detection range in the case where the feature is not detected, and return to execute the step of performing an eye movement coordinate jitter test within a preset interaction response duration and subsequent steps.
[0044] In a specific implementation manner of the second aspect, the eye movement coordinate compensation device may further include:
[0045] An anomaly detection module is used to determine whether there is an anomaly in the difference between the first eye movement coordinate and the center coordinate of the feature; in the case where there is an anomaly, return to execute the step of obtaining the first eye movement coordinate and subsequent steps; in the case where there is no anomaly, execute the step of determining the eye movement coordinate compensation value and subsequent steps.
[0046] In a specific implementation manner of the second aspect, the compensation value determination module may include:
[0047] A difference recording unit is used to record the difference between the first eye movement coordinate and the center coordinate of the feature in a preset difference set; wherein, the difference set includes each difference determined in previous times;
[0048] A mean calculation unit is configured to calculate the mean of each difference recorded in the difference set, and determine the calculated mean as the eye movement coordinate compensation value.
[0049] In a specific implementation manner of the second aspect, the detection range determination module may include:
[0050] A detection range determination unit is configured to use the first eye movement coordinate as the center of a circle, and determine the area within a preset radius as the detection range corresponding to the first eye movement coordinate.
[0051] The third aspect of the embodiments of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps of any of the above eye movement coordinate compensation methods are implemented.
[0052] The fourth aspect of the embodiments of the present application provides an eye movement interaction device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of any of the above eye movement coordinate compensation methods are implemented.
[0053] The fifth aspect of the embodiments of the present application provides a computer program product. When the computer program product runs on an eye movement interaction device, the eye movement interaction device is enabled to execute the steps of any of the above eye movement coordinate compensation methods.
[0054] The beneficial effects of the embodiments of the present application compared with the prior art are as follows: The embodiments of the present application obtain the first eye movement coordinate and determine the detection range corresponding to the first eye movement coordinate; detect a preset feature within the detection range; when the feature is detected, determine the difference between the first eye movement coordinate and the center coordinate of the feature; determine the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature; obtain the second eye movement coordinate, and compensate the second eye movement coordinate according to the eye movement coordinate compensation value to obtain the compensated eye movement coordinate. Through the embodiments of the present application, the eye movement coordinate compensation value can be determined, and the deviated eye movement coordinate can be corrected, so as to obtain a more accurate eye movement coordinate and improve the experience of eye movement interaction. Description of the Drawings
[0055] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0056] Figure 1 This is a flowchart of an embodiment of an eye movement coordinate compensation method in an embodiment of the present application;
[0057] Figure 2 This is a schematic diagram of a feature object displayed on the screen;
[0058] Figure 3 This is a structural diagram of an embodiment of an eye movement coordinate compensation device in an embodiment of the present application;
[0059] Figure 4 This is a schematic block diagram of an eye movement interaction device in an embodiment of the present application. Detailed implementation manners
[0060] To make the objectives, features, and advantages of the present application more obvious and understandable, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the embodiments described below are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0061] It should be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, wholes, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.
[0062] It should also be understood that the terms used in this specification of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in this specification of the present application and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" are intended to include the plural forms.
[0063] It should be further understood that the term "and / or" used in this specification of the present application and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0064] As used in this specification and the appended claims, the term "if" can be interpreted as "when", "once", "in response to determining", or "in response to detecting" according to the context. Similarly, the phrase "if determined" or "if detecting [the described condition or event]" can be interpreted as meaning "once determined", "in response to determining", "once detecting [the described condition or event]", or "in response to detecting [the described condition or event]" according to the context.
[0065] In addition, in the description of this application, the terms "first", "second", "third", etc. are only used for distinguishing descriptions and cannot be understood as indicating or implying relative importance.
[0066] With the continuous development of technology, various intelligent devices have become more and more popular, and the human-computer interaction methods have also changed with each passing day. There are various ways to achieve a certain human-computer interaction by analyzing the state of human pupil activities. For example, some head-mounted intelligent devices can control the operating system through the eyes. Since there are significant differences in the eye structures of each person in terms of size, distance, etc., and the environments in which eye movement interaction is carried out are different, users need to perform data calibration before using eye movement interaction devices to achieve more accurate eye movement coordinate calculation. However, with the continuous enrichment of eye movement interaction application scenarios, there have emerged many situations that require long-term eye use, such as cognitive assessment and training through eye movement, or playing VR games, etc. The extension of time means that the user's eyes will experience a certain degree of fatigue, and external environmental factors such as light may also change over time. When these conditions change, the initial eye movement calibration data will become no longer fully applicable, resulting in an increase in the error of eye movement coordinates.
[0067] In view of this, the embodiments of this application provide an eye movement coordinate compensation method, device, computer-readable storage medium, and eye movement interaction device to solve the problem of the increase in eye movement coordinate error caused by changes in the eye environment and external environment during long-term use of eye movement interaction.
[0068] In the embodiments of this application, an eye movement coordinate compensation value can be determined to correct the deviated eye movement coordinates, so as to obtain more accurate eye movement coordinates and improve the experience of eye movement interaction.
[0069] The execution subject of the embodiments of this application can be an eye movement interaction device, which can include but is not limited to computing devices such as smart glasses, head-mounted display devices, mobile phones, tablet computers, desktop computers, notebooks, handheld computers, and servers.
[0070] Please refer to Figure 1 , an embodiment of an eye movement coordinate compensation method in the embodiments of this application may include:
[0071] Step S101, obtain a first eye movement coordinate and determine a detection range corresponding to the first eye movement coordinate.
[0072] The eye movement coordinates refer to the coordinates where the pupil captured by the eye movement interaction device projects onto the screen of the device. The first eye movement coordinates are the eye movement coordinates used for estimating the eye movement coordinate compensation value. In the case where it is necessary to estimate the eye movement coordinate compensation value, a preset feature can be displayed on the screen to attract the user's attention, so that the user's pupil projects onto the area where these features are located. The eye movement interaction device can obtain the eye movement coordinates at this time and determine them as the first eye movement coordinates, denoted as A=(x,y).
[0073] The number of features can be flexibly set according to the actual situation, and can include but are not limited to 3, 5, 6, 10 or other numbers, and the embodiments of the present application do not make specific limitations thereto. The shape of each feature can also be flexibly set according to the actual situation, and can include but are not limited to a circle, a square or other shapes, and the embodiments of the present application do not make specific limitations thereto. The shapes of different features can be the same or different. Figure 2 Shown is a schematic diagram of a feature displayed on the screen. In the figure, a circular feature is shown, and the center coordinates and radius of each circular feature are known quantities.
[0074] For any two features displayed on the screen, there is no overlapping area between them, and the length of the line connecting the centers of the two is not less than a preset length threshold. The specific value of the length threshold can be flexibly set according to the actual situation, and the embodiments of the present application do not make specific limitations thereto. As an example, the calibration deviation during the previous calibration process of the eye movement interaction device can be pre-recorded, that is, the straight-line length between the actual coordinates where the pupil projects onto the screen and the coordinates captured by the eye movement interaction device, and the product of the calibration deviation and a preset length coefficient can be set as the length threshold. The specific value of the length coefficient can be flexibly set according to the actual situation, and can include but are not limited to 2 or other values, and the embodiments of the present application do not make specific limitations thereto.
[0075] The detection range refers to the screen area centered on the first eye movement coordinates, and its specific shape can be flexibly set according to the actual situation, and can include but are not limited to a circle, a square or other shapes, and the embodiments of the present application do not make specific limitations thereto. Taking a circle as an example, an area within a preset radius with the first eye movement coordinates as the center can be determined as the detection range corresponding to the first eye movement coordinates. Denote the radius as r, then the detection range corresponding to the first eye movement coordinates can be denoted as B=(A,r). Among them, the specific value of the radius can be flexibly set according to the actual situation, and the embodiments of the present application do not make specific limitations thereto.
[0076] In a specific implementation manner of the embodiment of the present application, in order to avoid adverse effects on the estimation result of the eye movement coordinate compensation value caused by jitter of the eye movement coordinates, an eye movement coordinate jitter test can be performed within a preset interaction response duration to obtain a corresponding eye movement coordinate jitter test result. Among them, the specific value of the interaction response duration can be flexibly set according to the actual situation, and can include but is not limited to 1 second, 2 seconds, 3 seconds or other values, and the embodiment of the present application does not make specific limitations on this.
[0077] During the process of performing the eye movement coordinate jitter test, each eye movement coordinate within the interaction response duration can be obtained, and the variance of each eye movement coordinate within the interaction response duration can be determined. In the case where the variance is less than a preset variance threshold, it can be determined that the eye movement coordinate jitter test result is a pass; while in the case where the variance is greater than or equal to the variance threshold, it can be determined that the eye movement coordinate jitter test result is a fail. Among them, the specific value of the variance threshold can be flexibly set according to the actual situation, and the embodiment of the present application does not make specific limitations on this.
[0078] In the case where the eye movement coordinate jitter test result is a fail, the execution can be returned to step S101 and its subsequent steps, that is, the current eye movement coordinates are obtained again, determined as the new first eye movement coordinates, and the subsequent steps are continued.
[0079] In the case where the eye movement coordinate jitter test result is a pass, step S102 and its subsequent steps can be executed.
[0080] Step S102: Detect a preset feature within the detection range.
[0081] Specifically, it can be determined whether there is an intersection between the detection range and the area where the feature is located. In the case where there is no intersection between the detection range and the area where the feature is located, it can be determined that the feature is not detected within the detection range, and at this time, the detection range can be expanded. Taking a circular detection range as an example, its radius can be expanded to obtain a larger detection range, and the specific radius expansion multiple can be flexibly set according to the actual situation, and can include but is not limited to 1.1, 1.2, 1.3 or other values, and the embodiment of the present application does not make specific limitations on this. After expanding the detection range, the step of performing the eye movement coordinate jitter test within the preset interaction response duration and its subsequent steps can be returned for execution.
[0082] In the case where there is an intersection between the detection range and the area where the feature is located, it can be determined that the feature is detected within the detection range. At this time, the center coordinates of the detected feature can be recorded, denoted as C=(p,q), and step S103 and its subsequent steps can be continued to be executed.
[0083] Step S103: When a feature object is detected, determine the difference between the first eye movement coordinate and the center coordinate of the feature object.
[0084] Specifically, the difference between the first eye movement coordinate and the center coordinate of the feature object can be calculated according to the following formula:
[0085] Δ = A - C = (x - p, y - q)
[0086] where Δ is the difference between the first eye movement coordinate and the center coordinate of the feature object.
[0087] In a specific implementation manner of the embodiment of the present application, after obtaining the difference Δ between the first eye movement coordinate and the center coordinate of the feature object, it is further possible to determine whether the difference Δ is abnormal.
[0088] The specific abnormal judgment method can be flexibly set according to the actual situation, and may include but is not limited to the Inter Quartile Range (IQR) method or other methods. The embodiment of the present application does not make specific limitations on this. Taking the IQR method as an example, a preset difference set can be obtained, where the difference set may include each difference determined in previous times. Sort the currently determined difference Δ and each difference determined in previous times in the difference set according to the numerical size, calculate the first quartile (Q1) and the third quartile (Q3) respectively, and determine the difference between the third quartile and the first quartile as the interquartile range, that is: IQR = Q3 - Q1. When the currently determined difference Δ is less than (Q1 - K × IQR) or greater than (Q3 + K × IQR), it can be determined that the difference Δ is abnormal; when the currently determined difference Δ is greater than or equal to (Q1 - K × IQR) and less than or equal to (Q3 + K × IQR), it can be determined that the difference Δ is not abnormal. Where K is a preset coefficient, and its specific value can be flexibly set according to the actual situation, and may include but is not limited to 1.5 or other values. The embodiment of the present application does not make specific limitations on this.
[0089] When the difference Δ between the first eye movement coordinate and the center coordinate of the feature object is abnormal, step S101 and its subsequent steps can be executed again, that is, re-obtain the current eye movement coordinate, determine it as the new first eye movement coordinate, and continue the subsequent steps. When the difference Δ between the first eye movement coordinate and the center coordinate of the feature object is not abnormal, step S104 and its subsequent steps can be continued.
[0090] Step S104: Determine the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature object.
[0091] In a specific implementation manner of the embodiment of the present application, the difference between the first eye movement coordinate and the center coordinate of the feature object can be directly determined as the eye movement coordinate compensation value.
[0092] In another specific implementation manner of the embodiment of the present application, the difference between the first eye movement coordinate and the center coordinate of the feature object can be recorded in a preset difference set, and then the average value of each difference recorded in the difference set is calculated, and the calculated average value is determined as the eye movement coordinate compensation value.
[0093] Step S105: Obtain the second eye movement coordinate, and compensate the second eye movement coordinate according to the eye movement coordinate compensation value to obtain the compensated eye movement coordinate.
[0094] After determining the eye movement coordinate compensation value, the subsequent obtained eye movement coordinates (denoted as the second eye movement coordinates) can be compensated according to the eye movement coordinate compensation value, as shown in the following formula:
[0095] B' = B + μ = (x' + α, y' + β)
[0096] Wherein, B = (x', y') is the second eye movement coordinate, μ = (α, β) is the eye movement coordinate compensation value, and B' = (x' + α, y' + β) is the compensated eye movement coordinate.
[0097] In a specific implementation manner of the embodiment of the present application, the above eye movement coordinate compensation process can be continuously performed, that is, a new eye movement coordinate compensation value can be recalculated every certain period of time, and the subsequent obtained eye movement coordinates can be compensated according to the new eye movement coordinate compensation value to achieve a real-time dynamic eye movement coordinate compensation effect.
[0098] In summary, the embodiment of the present application obtains the first eye movement coordinate and determines the detection range corresponding to the first eye movement coordinate; detects a preset feature object within the detection range; when the feature object is detected, determines the difference between the first eye movement coordinate and the center coordinate of the feature object; determines the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature object; obtains the second eye movement coordinate, and compensates the second eye movement coordinate according to the eye movement coordinate compensation value to obtain the compensated eye movement coordinate. Through the embodiment of the present application, the eye movement coordinate compensation value can be determined, and the deviated eye movement coordinates can be corrected, so as to obtain more accurate eye movement coordinates and improve the experience of eye movement interaction.
[0099] It should be understood that the magnitudes of the sequence numbers of the above steps in the embodiments do not mean the order of execution. The order of execution of each process should be determined according to its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
[0100] Corresponding to an eye movement coordinate compensation method described in the above embodiments,Figure 3 FIG. 1 shows a structural diagram of an embodiment of an eye movement coordinate compensation device provided by an embodiment of the present application.
[0101] In this embodiment, an eye movement coordinate compensation device may include:
[0102] A detection range determination module 301, configured to obtain a first eye movement coordinate and determine a detection range corresponding to the first eye movement coordinate;
[0103] A feature detection module 302, configured to detect a preset feature within the detection range;
[0104] A coordinate difference determination module 303, configured to determine a difference between the first eye movement coordinate and the central coordinate of the feature when the feature is detected;
[0105] A compensation value determination module 304, configured to determine an eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the central coordinate of the feature;
[0106] An eye movement coordinate compensation module 305, configured to obtain a second eye movement coordinate and compensate the second eye movement coordinate according to the eye movement coordinate compensation value to obtain a compensated eye movement coordinate.
[0107] In a specific implementation manner of an embodiment of the present application, the eye movement coordinate compensation device may further include:
[0108] A jitter test module, configured to perform an eye movement coordinate jitter test within a preset interaction response duration to obtain an eye movement coordinate jitter test result; when the eye movement coordinate jitter test result is a pass, execute the step of detecting a preset feature within the detection range and subsequent steps; when the eye movement coordinate jitter test result is a fail, return to execute the step of obtaining the first eye movement coordinate and subsequent steps.
[0109] In a specific implementation manner of an embodiment of the present application, the jitter test module may include:
[0110] An eye movement coordinate acquisition unit, configured to acquire each eye movement coordinate within the interaction response duration;
[0111] A variance determination unit, configured to determine the variance of each eye movement coordinate within the interaction response duration;
[0112] A jitter test result determination unit, configured to determine that the eye movement coordinate jitter test result is a pass when the variance is less than a preset variance threshold; determine that the eye movement coordinate jitter test result is a fail when the variance is greater than or equal to the variance threshold.
[0113] In a specific implementation manner of the embodiment of the present application, the eye movement coordinate compensation device may further include:
[0114] A detection range expansion module, configured to expand the detection range when the feature object is not detected, and return to execute the step of performing the eye movement coordinate jitter test within a preset interaction response duration and subsequent steps.
[0115] In a specific implementation manner of the embodiment of the present application, the eye movement coordinate compensation device may further include:
[0116] An anomaly detection module, configured to determine whether there is an anomaly in the difference between the first eye movement coordinate and the center coordinate of the feature object; in the case of an anomaly, return to execute the step of obtaining the first eye movement coordinate and subsequent steps; in the case of no anomaly, execute the step of determining the eye movement coordinate compensation value and subsequent steps.
[0117] In a specific implementation manner of the embodiment of the present application, the compensation value determination module may include:
[0118] A difference recording unit, configured to record the difference between the first eye movement coordinate and the center coordinate of the feature object in a preset difference set; wherein, the difference set includes each difference determined in previous times;
[0119] An average value calculation unit, configured to calculate the average value of each difference recorded in the difference set, and determine the calculated average value as the eye movement coordinate compensation value.
[0120] In a specific implementation manner of the embodiment of the present application, the detection range determination module may include:
[0121] A detection range determination unit, configured to take the first eye movement coordinate as the center of a circle, and determine the area within a preset radius as the detection range corresponding to the first eye movement coordinate.
[0122] Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the above-described device, modules, and units can refer to the corresponding processes in the foregoing method embodiments, and will not be elaborated herein.
[0123] In the above embodiments, the descriptions of the respective embodiments have their own focuses. For parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0124] Figure 4 FIG. shows a schematic block diagram of an eye movement interaction device provided by an embodiment of the present application. For the convenience of description, only parts related to the embodiment of the present application are shown.
[0125] As shown Figure 4 in the figure, the eye movement interaction device 4 of this embodiment includes: a processor 40, a memory 41, and a computer program 42 stored in the memory 41 and operable on the processor 40. When the processor 40 executes the computer program 42, the steps in the above-mentioned embodiments of each eye movement coordinate compensation method are implemented, such as Figure 1 the steps S101 to S105 shown in the figure. Alternatively, when the processor 40 executes the computer program 42, the functions of each module / unit in the above-mentioned device embodiments are implemented, such as Figure 3 the functions of the modules 301 to 305 shown in the figure.
[0126] Exemplarily, the computer program 42 can be divided into one or more modules / units, and the one or more modules / units are stored in the memory 41 and executed by the processor 40 to complete this application. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, and these instruction segments are used to describe the execution process of the computer program 42 in the eye movement interaction device 4.
[0127] The eye movement interaction device 4 can include but is not limited to computing devices such as smart glasses, head-mounted display devices, mobile phones, tablet computers, desktop computers, notebooks, handheld computers, robots, and servers. Those skilled in the art can understand that Figure 4 these are merely examples of the eye movement interaction device 4 and do not constitute a limitation on the eye movement interaction device 4. It may include more or fewer components than shown in the figure, or combine some components, or different components. For example, the eye movement interaction device 4 may further include input / output devices, network access devices, buses, etc.
[0128] The processor 40 may be a central processing unit (CPU), or may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.
[0129] The memory 41 may be an internal storage unit of the eye movement interaction device 4, such as a hard disk or memory of the eye movement interaction device 4. The memory 41 may also be an external storage device of the eye movement interaction device 4, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. equipped on the eye movement interaction device 4. Further, the memory 41 may also include both the internal storage unit of the eye movement interaction device 4 and an external storage device. The memory 41 is used to store the computer program and other programs and data required by the eye movement interaction device 4. The memory 41 may also be used to temporarily store the data that has been output or will be output.
[0130] Those skilled in the art can clearly understand that, for the convenience and conciseness of description, only the above division of each functional unit and module is used as an example. In actual applications, the above functions can be assigned to different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of each functional unit and module are only for the convenience of mutual distinction and do not limit the protection scope of this application. The specific working processes of the units and modules in the above system can refer to the corresponding processes in the foregoing method embodiments and will not be elaborated herein.
[0131] In the above embodiments, the descriptions of the respective embodiments have their own emphases. For the parts not detailed or recorded in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0132] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or by a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.
[0133] In the embodiments provided in this application, it should be understood that the disclosed device / eye movement interaction device and method can be implemented in other ways. For example, the device / eye movement interaction device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the devices or units can be in electrical, mechanical or other forms.
[0134] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place or distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0135] In addition, each functional unit in the various embodiments of this application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
[0136] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, to implement all or part of the processes in the above-mentioned embodiment methods of this application, it can also be completed by a computer program instructing relevant hardware. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by a processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The computer-readable storage medium can include: any entity or device that can carry the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electrical carrier signal, telecommunication signal, and software distribution medium, etc. It should be noted that the content included in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable storage medium does not include electrical carrier signals and telecommunication signals.
[0137] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A method for compensating eye movement coordinates, characterized in that: include: Acquire first eye movement coordinates, and determine a detection range corresponding to the first eye movement coordinates; Detecting a preset feature object within the detection range; In case the feature object is detected, determining a difference between the first eye movement coordinates and the center coordinates of the feature object; determining an eye movement coordinate compensation value according to a difference between the first eye movement coordinate and the center coordinate of the feature object; Acquire second eye movement coordinates, and compensate the second eye movement coordinates according to the eye movement coordinate compensation value to obtain compensated eye movement coordinates.
2. The eye movement coordinate compensation method according to claim 1, characterized in that: Before detecting the preset feature object within the detection range, the method further includes: Perform an eye movement coordinate jitter test within a preset interactive response time to obtain an eye movement coordinate jitter test result; When the eye movement coordinate jitter test result is a test pass, executing the step of detecting a preset feature object within the detection range and subsequent steps thereof; When the eye movement coordinate jitter test result is a test failure, the process returns to execute the step of obtaining the first eye movement coordinates and subsequent steps.
3. The eye movement coordinate compensation method according to claim 2, characterized in that: The eye movement coordinate jitter test is performed within a preset interactive response time to obtain an eye movement coordinate jitter test result, including: Obtaining eye movement coordinates within the duration of the interactive response; Determining the variance of each eye movement coordinate within the interaction response duration; When the variance is less than a preset variance threshold, determining that the eye movement coordinate jitter test result is a test pass; When the variance is greater than or equal to the variance threshold, it is determined that the eye movement coordinate jitter test result is a test failure.
4. The eye movement coordinate compensation method according to claim 2, characterized in that: After detecting the preset feature object within the detection range, the method further includes: In the case where the feature object is not detected, the detection range is expanded, and the process returns to the step of performing the eye movement coordinate jitter test within the preset interactive response time and subsequent steps.
5. The eye movement coordinate compensation method according to claim 1, characterized in that: After determining the difference between the first eye movement coordinates and the center coordinates of the feature object, the method further includes: Determine whether there is an abnormality in the difference between the first eye movement coordinates and the center coordinates of the feature object; In case of an abnormality, returning to execute the step of obtaining the first eye movement coordinates and subsequent steps; In the absence of an abnormality, the step of determining the eye movement coordinate compensation value and subsequent steps are performed.
6. The eye movement coordinate compensation method according to claim 1, characterized in that: The step of determining the eye movement coordinate compensation value according to the difference between the first eye movement coordinate and the center coordinate of the feature object comprises: Recording the difference between the first eye movement coordinate and the center coordinate of the feature object in a preset difference set; wherein the difference set includes each difference value obtained by previous determinations; The average value of each difference value recorded in the difference value set is calculated, and the calculated average value is determined as the eye movement coordinate compensation value.
7. The eye movement coordinate compensation method according to any one of claims 1 to 6, characterized in that: The determining a detection range corresponding to the first eye movement coordinates includes: Taking the first eye movement coordinates as the center of a circle, an area within a preset radius is determined as the detection range corresponding to the first eye movement coordinates.
8. An eye movement coordinate compensation device, characterized in that: include: A detection range determination module, used to obtain a first eye movement coordinate and determine a detection range corresponding to the first eye movement coordinate; A feature object detection module, used to detect a preset feature object within the detection range; a coordinate difference determination module, configured to determine the difference between the first eye movement coordinates and the center coordinates of the feature object when the feature object is detected; a compensation value determining module, configured to determine an eye movement coordinate compensation value according to a difference between the first eye movement coordinate and the center coordinate of the feature object; The eye movement coordinate compensation module is used to obtain the second eye movement coordinates, and compensate the second eye movement coordinates according to the eye movement coordinate compensation value to obtain the compensated eye movement coordinates.
9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the eye movement coordinate compensation method according to any one of claims 1 to 7 are implemented.
10. An eye movement interaction device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the eye movement coordinate compensation method according to any one of claims 1 to 7 are implemented.