WO2023128358A1 - 안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서 - Google Patents

안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서 Download PDF

Info

Publication number
WO2023128358A1
WO2023128358A1 PCT/KR2022/019737 KR2022019737W WO2023128358A1 WO 2023128358 A1 WO2023128358 A1 WO 2023128358A1 KR 2022019737 W KR2022019737 W KR 2022019737W WO 2023128358 A1 WO2023128358 A1 WO 2023128358A1
Authority
WO
WIPO (PCT)
Prior art keywords
eye
user
gaze
sensing
light
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/KR2022/019737
Other languages
English (en)
French (fr)
Inventor
신성환
구본곤
김도윤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority to CN202280086780.9A priority Critical patent/CN118475967A/zh
Priority to EP22916504.8A priority patent/EP4414952A4/en
Priority to US18/084,084 priority patent/US12579664B2/en
Publication of WO2023128358A1 publication Critical patent/WO2023128358A1/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/19Sensors therefor

Definitions

  • the present disclosure relates to a gaze tracking apparatus and method for detecting a user's gaze, and more particularly, to an apparatus for determining a gaze tracking sensing area for detecting a user's gaze using a light emitting unit and a light receiving unit of a gaze tracking sensor, and It's about how.
  • Eye tracking or gaze tracking is a technology that tracks the movement of a person's pupils (eye tracking) or gaze tracking. can judge
  • UI user interface
  • an electronic device including a gaze tracking sensor may operate to execute a corresponding command when a predetermined gaze input is obtained. For example, if it is determined that the user of the smartphone is gazing at the downward direction of the smartphone, the smartphone may perform an operation of scrolling the screen downward.
  • Augmented reality is a technology that projects a virtual image onto a physical environment space or real world object in the real world and displays it as a single image.
  • An augmented reality device is a device in the form of glasses using a see-through display such as a light guide plate (waveguide) placed in front of the user's eyes while worn on the user's face or head to create real scenes and virtual images. can be viewed together.
  • a see-through display such as a light guide plate (waveguide) placed in front of the user's eyes while worn on the user's face or head to create real scenes and virtual images. can be viewed together.
  • various types of wearable devices have been released or announced to be released.
  • gaze tracking information such as continuous gaze, eye blink, or gaze in a specific direction as a user interface.
  • the eye tracking apparatus senses the eyeballs of the user within the maximum range supported by the hardware, determines a sensing area based on acquired sensing data, and performs eye tracking in the determined sensing area. During eye tracking, the sensing area is not changed, and if eye tracking fails, the user's eyes are sensed again within the maximum range supported by the hardware, and the sensing area is determined again to perform eye tracking.
  • gaze tracking and sensing range determination cannot be performed at the same time, gaze tracking must be stopped to determine the sensing range, and even when the eyeballs move due to slipping of the gaze tracking device, the gaze tracking sensor can perform fixed sensing. In this range, light for gaze tracking is emitted.
  • a method of determining a sensing area of an eye tracking sensor may include acquiring first eye data in a first sensing area.
  • a method of determining a sensing area of an eye tracking sensor may include obtaining an eyeball model based on acquired first eyeball data. It may include determining a second sensing region based on the obtained eyeball model.
  • An eye tracking sensor may include at least one light emitting unit; and at least one light receiving unit, wherein the at least one light receiving unit is configured to acquire first eye data based on light emitted by the at least one light emitting unit toward the first sensing region and received light reflected by the eyeball.
  • An eye tracking sensor may include at least one light emitting unit; and at least one light receiving unit, wherein the at least one light emitting unit may emit light to a second sensing area determined based on an eyeball model obtained based on the acquired first eyeball data.
  • An eye tracking device includes at least one sensor including a light emitting unit and a light receiving unit; a storage unit for storing a program including at least one instruction; and at least one processor that executes at least one command stored in the storage unit, and the at least one processor executes the at least one command to obtain first eye data in the first sensing area using the at least one sensor. can do.
  • An eye tracking device includes at least one sensor including a light emitting unit and a light receiving unit; a storage unit for storing a program including at least one instruction; and at least one processor that executes at least one instruction stored in the storage unit, and the at least one processor executes the at least one instruction, thereby obtaining an eyeball model based on the obtained first eye data.
  • An eye tracking device includes at least one sensor including a light emitting unit and a light receiving unit; a storage unit for storing a program including at least one instruction; and at least one processor that executes at least one command stored in the storage unit, and the at least one processor executes the at least one command, thereby determining the determination of the second sensing region based on the obtained eyeball model. .
  • a computer-readable recording medium recording a program for executing the above-described method is provided.
  • FIG. 1 is a diagram illustrating an example of a gaze tracking device according to an embodiment of the present disclosure.
  • FIG. 2 is a detailed block diagram of an eye tracking device according to an embodiment of the present disclosure.
  • 3A to 3C are diagrams for explaining how a scanner-based gaze tracking sensor senses a user's eyes.
  • 4A and 4B are diagrams for explaining a method of acquiring pupil information using sensing data of a scanner-based gaze tracking sensor.
  • 5A and 5B are diagrams for explaining a method in which a scanner-based gaze tracking sensor senses a user's eyeball and obtains eye feature point information.
  • 6A and 6B are diagrams for explaining how a camera-based gaze tracking sensor senses a user's eyeball.
  • FIGS. 7A to 7C are diagrams for explaining a method in which a camera-based gaze tracking sensor senses a user's eyeball to obtain pupil information and eye feature point information.
  • FIGS. 8A and 8B are diagrams for explaining a method of determining a sensing area in a gaze tracking method according to an embodiment of the present disclosure.
  • FIGS 9A to 9C are diagrams for explaining cases in which gaze tracking fails in the gaze tracking method according to an embodiment of the present disclosure.
  • FIG. 10 is a diagram for explaining a method of determining a scan area in a gaze tracking method according to an embodiment of the present disclosure.
  • FIG. 11 is a flowchart of a method of determining a sensing area for gaze tracking according to an embodiment of the present disclosure.
  • FIG. 12 shows the structure of the human eye and a simplified structure of the eye.
  • FIG. 13 is a diagram for explaining an eyeball model and a method of updating the eyeball model and determining a sensing region according to an embodiment of the present disclosure.
  • FIG. 14 shows an example of an algorithm for acquiring an eyeball model and determining a sensing area for gaze tracking according to an embodiment of the present disclosure.
  • FIG. 15 illustrates a sensing area of an eye tracking sensor according to an embodiment of the present disclosure.
  • 16 is a diagram for explaining a method of gradually expanding a sensing area when the gaze tracking sensor fails in gaze tracking according to an embodiment of the present disclosure.
  • 'Augmented Reality (AR)' means showing a virtual image together in a physical environment space of the real world or showing a real object and a virtual image together.
  • an 'Augmented Reality Device' refers to a device capable of expressing 'Augmented Reality', and is generally a glasses-shaped augmented reality glasses device worn on a face by a user ( It covers not only Augmented Reality Glasses), but also Head Mounted Display Apparatus (HMD) worn on the head, Augmented Reality Helmet, and the like.
  • HMD Head Mounted Display Apparatus
  • a 'real scene' is a scene in the real world that a user sees through an augmented reality device, and may include a real world object.
  • a 'virtual image' is an image generated through an optical engine and may include both static and dynamic images. Such a virtual image is observed together with a real scene, and may be an image representing information about a real object in a real scene, information about an operation of an augmented reality device, or a control menu.
  • a typical augmented reality device uses an optical engine for generating a virtual image composed of light generated from a light source, and a transparent material that guides the virtual image generated by the optical engine to the user's eyes and allows the user to see the scene of the real world as well.
  • a formed wave guide is provided.
  • the light path may be changed using reflection by a mirror or the like, or the light path may be changed through diffraction by a diffraction element such as a diffractive optical element (DOE) or a holographic optical element (HOE), but is not limited thereto.
  • DOE diffractive optical element
  • HOE holographic optical element
  • FIG. 1 is a diagram illustrating an example of a gaze tracking device according to an embodiment of the present disclosure.
  • the gaze tracking device 1000 may be an augmented reality device, but is not limited thereto, and may include any device including a gaze tracking sensor and performing a gaze tracking function.
  • the eye tracking device 1000 is a glasses-type display device and may include a glasses-type body configured to be worn by a user.
  • the gaze tracking device 1000 may be another type of wearable device such as a Head Mounted Device (HMD).
  • HMD Head Mounted Device
  • the glasses-type body may include a frame (or rim) 110 and a support part 190, and the support part 190 may extend from the frame 110 and be used to mount the augmented reality device on the user's head.
  • Support 190 may include temples 190L and 190R and a nose support.
  • the temples 190L and 190R extend from the frame 110 and may be used to fix the gaze tracking device 1000 to the user's head at the side of the spectacle body.
  • the nose support (not shown) extends from the frame 110 and may be used to seat the gaze tracking device 1000 on the user's nose, and may include, for example, the bridge of the nose and the nose of glasses, but is not limited thereto.
  • a lens unit 1350 and a wave guide 1320 may be positioned in the frame 110 .
  • the lens unit 1350 may include a left eye lens unit 1350L and a right eye lens unit 1350R.
  • the waveguide 1320 may be configured to receive projected light from an input area and output at least a portion of the input light from an output area.
  • the wave guide 1320 may include a wave guide 1320L for the left eye and a wave guide 1320R for the right eye.
  • the left eye lens unit 1350L and the left eye waveguide 1320L may be disposed at positions corresponding to the user's left eye, and the right eye lens unit 1350R and right eye waveguide 1320R may be disposed at positions corresponding to the user's right eye.
  • the left eye lens unit 1350L and the left eye waveguide 1320L may be attached to each other, or the right eye variable focus lens unit 1350R and the right eye waveguide 1320R may be attached to each other, but is not limited thereto.
  • the optical engine 1310 of the projector projecting the display light containing the image may include a left eye optical engine 1310L and a right eye optical engine 1310R.
  • the optical engine 1310L for the left eye and the optical engine 1310R for the right eye may be located on both sides of the gaze tracking device 1000 .
  • one optical engine 1310 may be included in the central portion around the nose support 192 of the gaze tracking device 1000 .
  • Light emitted from the optical engine 120 may be displayed through the wave guide 1320.
  • the gaze detection module 1500 may be disposed on a rim portion of a lens of the gaze tracking device 1000, and may include, for example, a light emitter that provides light toward the user's eyes and a light receiver that receives the provided light.
  • the light emitting unit may provide light toward the user's eye area while changing the direction of the light at predetermined time intervals.
  • light eg, infrared (IR) light
  • IR infrared
  • the light pattern may be a predetermined pattern (eg, a straight line in a longitudinal direction or a straight line in a transverse direction).
  • the gaze detection module 1500 may track the user's gaze by identifying the cornea region and the pupil region of the user's eye based on the amount of change in light reflected from the user's eye region using an optical sensor.
  • FIG. 2 is a block diagram of an eye tracking device according to an embodiment of the present disclosure.
  • the gaze tracking device 1000 may be an augmented reality device, but is not limited thereto, and may refer to any device including a gaze tracking sensor and performing a gaze tracking function.
  • an eye tracking apparatus 1000 includes a user input unit 1100, a microphone 1200, a display unit 1300, a camera module 1400, a gaze detection module 1500, a communication interface 1600, a storage unit 1700, and a processor 1800.
  • the gaze detection module 1500 may include a gaze tracking sensor 1510
  • the gaze tracking sensor 1510 may include a light emitter 1510 and a light receiver 1520 .
  • modules such as the camera module 1400 and gaze detection module 1500 may include one or more hardware components.
  • the camera module 1400 may include one or more cameras or one or more sensors for capturing images.
  • the gaze detection module 1500 may include one or more sensors.
  • the user input unit 1100 means a means through which the user inputs data for controlling the gaze tracking device 1000 .
  • the user input unit 1100 includes a key pad, a dome switch, a touch pad (contact capacitance method, pressure resistive film method, infrared sensing method, surface ultrasonic conduction method, integral tension measurement method) method, piezo effect method, etc.), a jog wheel, or a jog switch, but is not limited thereto.
  • the microphone 1200 receives external sound signals and processes them into electrical voice data.
  • the microphone 1200 may receive a sound signal from an external device or a speaker.
  • Various noise removal algorithms may be used to remove noise generated in the process of receiving an external sound signal through the microphone 1200.
  • the microphone 1200 may receive a user's voice input for controlling the gaze tracking device 1000 .
  • the display unit 1300 displays and outputs information processed by the gaze tracking device 1000 .
  • the display unit 1300 may display a user interface for photographing the surroundings of the eye tracking device 1000 and information related to a service provided based on a photographed image of the surroundings of the eye tracking device 1000 .
  • the display unit 1300 may provide augmented reality (AR) images.
  • AR augmented reality
  • an optical engine 1310 and a wave guide 1320 may be included.
  • the wave guide 1320 may be made of a transparent material in which a part of the rear surface is visible when the user wears the eye tracking device 1000 .
  • the wave guide 1320 may be composed of a single- or multi-layer flat plate made of a transparent material through which light can propagate while being reflected therein.
  • the wave guide 1320 may receive light of a virtual image projected from the optical engine 1310 while facing the output surface of the optical engine 1310 .
  • the transparent material means a material through which light can pass, and the transparency may not be 100% and may have a predetermined color.
  • the waveguide 1320 since the waveguide 1320 is formed of a transparent material, the user can view not only virtual objects of virtual images through the display unit 1300 but also an external real scene, so the waveguide 1320 It may be referred to as a see through display.
  • the display unit 1300 may provide an augmented reality image by outputting a virtual object of a virtual image through the wave guide 1320 .
  • the display unit 1300 may include a left display unit and a right display unit.
  • the camera module 1400 may capture the surroundings of the eye tracking device 1000 .
  • the camera module 1400 may include a camera or an image sensor, but is not limited thereto.
  • the camera module 1400 may obtain an image frame such as a still image or a moving image through an image sensor when an application requesting a photographing function is executed. Images captured through the image sensor may be processed through the processor 1800 or a separate image processing unit (not shown).
  • the camera module 1400 may include, for example, at least one of a rotatable RGB camera module and a plurality of depth camera modules, but is not limited thereto.
  • the gaze detection module 1500 may detect and track the gaze of the user wearing the gaze tracking device 1000 .
  • the gaze detection module 1500 may be installed in a direction toward the user's eyes, and may detect the gaze direction of the user's left eye and the gaze direction of the user's right eye. Detecting the direction of the user's gaze may include obtaining gaze information related to the user's gaze.
  • the gaze detection module 1500 may include a gaze tracking sensor 1510 capable of emitting IR light and receiving IR light to detect the user's gaze.
  • the gaze tracking sensor 1510 includes a light emitter 1520 that emits IR light and a light receiver 1530 that receives IR light, and acquires sensor data including information related to the eyes and gaze of the user wearing the gaze tracking device 1000.
  • Information related to the user's eyeball and gaze includes information on the position of the glint feature point of the user's eyeball, information on the size and position of the pupil, size and position of the iris, and cornea. ) may include at least one of information on the size and position of the eyeball and information on the size and position of the eyeball, but is not limited thereto.
  • the sensor data refers to raw data received by the light receiver 1530 after the IR light emitted from the light emitter 1520 is reflected to the user's eyes, and the sensor data is analyzed to obtain information related to the user's eyes and gaze. can do.
  • the light emitting unit 1520 of the gaze detection module 1500 may emit IR light so that the IR light may be directed to the user's eyes. Also, the IR light reflected from the user's eyes may be received by the light receiving unit 1530 of the gaze detection module 1500 .
  • the light receiving unit 1530 may be disposed at a location capable of receiving IR light reflected from the user's eyes in the gaze tracking device 1000 .
  • the light emitting unit 1520 and the light receiving unit 1530 of the gaze detection module 1500 may be disposed on the inner surface of the support unit 190 between the support unit 190 and the user's eyes.
  • the gaze tracking device 1000 may further include a light reflector (not shown), and the light emitter 1520 and the light receiver 1530 are arranged to face the light reflector (not shown) from the support part 190 of the gaze tracking device 1000. It can be.
  • the light emitting unit 1512 and the light receiving unit 1512 may be positioned on the support unit 190 of FIG. 1 supporting the gaze tracking device 1000 on the user's face, such as the temple and nose support units of FIG. 1 .
  • the light reflector (not shown) may reflect light emitted from the light emitter 1511 .
  • the light reflector (not shown) and the wave guide 1320 may be disposed at a position facing the user's eyes, and the light reflector (not shown) and the wave guide 1320 may be attached to each other.
  • the IR light emitted from the light emitter 1511 is reflected by the light reflector (not shown) and directed to the user's eyes, and the IR light reflected back from the user's eyes is reflected by the light reflector (not shown). It may face the light receiver 1512.
  • the light emitting unit 1511 emits IR light to the user's eyes
  • the light emitting unit 1512 emits IR light.
  • the IR light is reflected by the user's eyes and received by the light receiving unit 1512 .
  • the light emitting unit 1520 may be an IR LED emitting IR light
  • the light receiving unit 1530 may be an IR camera capturing IR light.
  • the IR camera may capture the user's eyes using IR light reflected by the user's eyes.
  • the light emitting unit 1520 is an IR LED and the light receiving unit 1530 is an IR camera
  • the light emitting unit 1520 emits IR light of planar light toward the user's eyes
  • the light receiving unit 1520 transmits IR light reflected from the user's eyes. It can receive IR light of surface light.
  • the light emitter 1520 may emit IR light of planar light to a part of the entire area of the user's eye based on the set sensing area.
  • the sensing area may be set as an area in which information related to the user's eyeballs and gaze may be obtained for detecting the user's gaze from the IR light reflected by the user's eyes and received by the light receiving unit 1530 .
  • the light emitting unit 1520 may be an IR scanner emitting IR light and the light receiving unit 1530 may be an IR detector detecting IR light.
  • the IR scanner may emit IR light for scanning the user's eyes toward the user's eyes, and the IR detector may detect the IR light reflected from the user's eyes.
  • the light emitting unit 1520 may emit line lights.
  • the light emitting unit 1520 may emit linear IR light to a part of the entire area of the user's eye based on the set sensing area.
  • the sensing area may be set as an area in which information related to the user's eyeballs and gaze may be obtained for detecting the user's gaze from the IR light reflected by the user's eyes and received by the light receiving unit 1530 .
  • the light emitting unit 1510 may emit point light.
  • the light emitter 1520 may emit a point of IR light to a part of the entire region of the user's eye based on the set sensing region.
  • the sensing area may be set as an area in which information related to the user's eyeballs and gaze may be obtained for detecting the user's gaze from the IR light reflected by the user's eyes and received by the light receiving unit 1530 .
  • the range (sensing area) of the user's eye covered by the IR light emitted from the light emitting unit 1512 narrows, that is, as the area emitting light from the light emitting unit 1520 narrows, the user's line of sight Tracking accuracy may be increased and gaze tracking speed may be increased. Therefore, it is necessary to determine a sensing region that is robust to external factors and ensures eye tracking speed and accuracy.
  • the light emitting unit 1520 When the light emitting unit 1520 is an IR scanner and the light receiving unit 1530 is an IR detector, the light emitting unit 1520 emits point or linear IR light toward the user's eyes, and the light receiving unit 1530 is a point light reflected from the user's eyes or It can receive the IR light of beneficiation. In this case, the light emitting unit 1520 may sequentially emit IR light while moving the light emitting direction of the light emitting unit 1520 so that point light or linear IR light covers the space where the user's eyes are located.
  • An IR scanner is generally composed of an IR LED and a MEMS (Micro-Electro Mechanical Systems) mirror that can control and reflect the direction of IR light emitted from the IR LED, but hereinafter, it will be collectively referred to as an IR scanner. do.
  • an IR detector it is common for an IR detector to have several photodiodes installed in a portion where light detection is required, but will be described below as an IR detector or detector.
  • the gaze detection module 1500 may provide sensor data to the processor 1800, and the processor 1800 may obtain gaze information of the user based on the sensor data.
  • the sensor data is data acquired by the gaze tracking sensor 1510 of the gaze detection module 1500, and includes the type of IR light emitted from the light emitting unit 1520 (eg, point light, linear light, or surface light), and the type of IR light emitted from the light emitting unit 1520. It may include characteristics, data on an emission area of the IR light emitted from the light emitting unit 1520, and data indicating characteristics of the IR light received from the light receiving unit 1530.
  • the user's eye gaze information is information related to the user's eye gaze and may be generated by analyzing sensor data.
  • the direction of the user's gaze may be, for example, a direction of the gaze from the center of the user's eyes to the gaze point at which the user gazes.
  • the user's gaze direction may be represented by a vector value from the center of the user's left eye to the gaze point and a vector value from the center of the user's right eye to the gaze point, but is not limited thereto.
  • the gaze detection module 1500 may detect sensor data including information related to the eyes and gaze of the user wearing the gaze tracking apparatus 1000 at predetermined time intervals.
  • the communication interface 1600 may transmit/receive data for receiving a service related to the gaze tracking device 1000 with an external device (not shown) and a server (not shown).
  • the storage unit 1700 may store programs to be executed by the processor 1800 to be described later, and may store data input to or output from the gaze tracking device 1000 . According to an embodiment of the present disclosure, the storage unit 1700 may store one or more instructions or programs for performing the gaze tracking method.
  • the storage unit 1700 may include at least one of an internal memory (not shown) and an external memory (not shown).
  • the built-in memory includes, for example, volatile memory (eg, DRAM (Dynamic RAM), SRAM (Static RAM), SDRAM (Synchronous Dynamic RAM), etc.), non-volatile memory (eg, OTPROM (One Time Programmable ROM) ), PROM (Programmable ROM), EPROM (Erasable and Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM, etc.), hard disk drive (HDD), or solid state drive (SSD).
  • volatile memory eg, DRAM (Dynamic RAM), SRAM (Static RAM), SDRAM (Synchronous Dynamic RAM), etc.
  • non-volatile memory eg, OTPROM (One Time Programmable ROM)
  • PROM Programmable ROM
  • EPROM Erasable and Programmable ROM
  • the processor 1800 may load and process a command or data received from at least one of a non-volatile memory or other components into a volatile memory. Also, the processor 1800 may store data received or generated from other components in a non-volatile memory.
  • the external memory may include, for example, at least one of CF (Compact Flash), SD (Secure Digital), Micro-SD (Micro Secure Digital), Mini-SD (Mini Secure Digital), xD (extreme Digital), and Memory Stick. can include
  • Programs stored in the storage unit 1700 may be classified into a plurality of modules according to their functions.
  • a memory (not shown) may be included in the gaze detection module 1500.
  • the light irradiation module 1710 and the light reception module 1720 are configured as firmware in the memory (not shown) included in the gaze detection module 1500. may be stored.
  • the processor 1800 controls overall operations of the gaze tracking device 1000 .
  • the processor 1800 generally controls the user input unit 1100, the microphone 1200, the display unit 1300, the camera module 1400, the gaze detection module 1500, the communication interface 1600, and the storage unit 1700 by executing programs stored in the storage unit 1700. can do.
  • the processor 1800 may be a general-purpose processor such as a central processing unit (CPU) or an application processor (AP) or a graphics-only processing unit such as a graphics processing unit (GPU) or a visual processing unit (VPU). there is.
  • the processor 1800 may include multiple cores to execute instructions.
  • the processor 1800 executes the light irradiation module 1710, the light reception module 1720, the eyeball feature detection module 1730, the pupil position detection module 1731, the gaze determination module 1740, the 3D eye model 1741, and the sensing region determination module 1750 stored in the storage unit 1700, A user's gaze point and gaze direction may be determined.
  • the gaze tracking device 1000 may include a plurality of processors 1800, and includes a light irradiation module 1710, a light receiving module 1720, an eyeball feature detection module 1730, a pupil position detection module 1731, a gaze determination module 1740, and a 3D eyeball.
  • the model 1741 and the sensing area determination module 1750 may be executed by a plurality of processors 1800 .
  • some of the light irradiation module 1710, the light receiving module 1720, the eyeball feature detection module 1730, the pupil position detection module 1731, the gaze determination module 1740, the 3D eye model 1741, and the sensing region determination module 1750 are configured by the first processor (not shown). ), and the rest of the light irradiation module 1710, the light receiving module 1720, the eyeball feature detection module 1730, the pupil position detection module 1731, the gaze determination module 1740, the 3D eye model 1741, and the sensing region determination module 1750 are second It may be executed by a processor (not shown), but is not limited thereto.
  • the gaze detection module 1500 may include another processor (not shown) and a memory (not shown), and the other processor (not shown) includes a light irradiation module 1710 and a light receiving module 1720 stored in a memory (not shown).
  • the processor 1800 may execute the eye feature detection module 1730, the pupil position detection module 1731, the gaze determination module 1740, the 3D eye model 1741, and the sensing region determination module 1750 stored in the storage unit 1700.
  • the processor 1800 may execute the light irradiation module 1710 stored in the storage unit 1700 so that the light emitter 1520 emits IR light toward the user's eyes.
  • the processor 1800 may control the light emitting unit 1520 by executing the light irradiation module 1710, and the light emitting unit 1520 controlled by the processor 1800 transmits IR light to a part of the entire area of the user's eye based on the set sensing area. can emit.
  • the sensing area may be set as an area in which information related to the user's eyeballs and gaze may be obtained for detecting the user's gaze from the IR light reflected by the user's eyes and received by the light receiving unit 1530 .
  • the range (sensing area) of the user's eyes covered by the IR light emitted from the light emitting unit 1520 widens, that is, as the area emitting light from the light emitting unit 1520 widens, external factors Even if (eg, noise caused by external light or pupil occlusion due to user blinking) occurs, the possibility of succeeding in tracking the user's gaze increases.
  • the range (sensing area) of the user's eyes covered by the IR light emitted from the light emitting unit 1520 narrows, that is, as the area emitting light from the light emitting unit 1520 narrows, the user's gaze tracking accuracy increases. may increase and the eye tracking speed may increase. Therefore, it is necessary to determine a sensing region that is robust to external factors and ensures eye tracking speed and accuracy.
  • the light emitting unit 1520 may be an IR LED
  • the processor 1800 transmits IR light emitted from the IR LED to the user's eyes so that the IR camera can photograph the user's eyes.
  • the IR LED can be controlled so that it is irradiated to the area including the eye of the user.
  • the processor 1800 controls the direction of irradiation of the IR light emitted from the IR LED and applies power to the IR LED to prevent the IR LED from being emitted. It is possible to control the emission of IR light.
  • the IR camera and the IR LED may be installed toward the user's eyes so that the IR camera can capture the entire area of the user's eyes, and the processor 1800 may be installed toward the user's eyes. You can control the LED to emit IR light.
  • the light emitting unit 1520 may be an IR scanner
  • the processor 1800 may use the IR emitted from the IR scanner to enable the IR detector to detect the user's eyes.
  • the IR scanner can be controlled so that the light scans the user's eyes.
  • the processor 1800 controls the irradiation direction and range of the IR light emitted from the IR scanner and applies power to the IR scanner, thereby generating the IR light from the IR scanner.
  • the emission of light can be controlled.
  • the processor 1800 may execute the light receiving module 1720 stored in the storage unit 1700 so that the light receiving unit 1530 receives light reflected from the user's eyes.
  • the processor 1800 may control the light receiving unit 1530 by executing the light receiving module 1720, and the light receiving unit 1530 controlled by the processor 1800 may receive light reflected from the user's eyes.
  • the light emitting unit 1520 is an IR LED
  • the light receiving unit 1530 may be an IR camera
  • the processor 1800 controls the IR camera to photograph the user's eyes through light reflected from the user's eyes. can do.
  • the light emitting unit 1520 is an IR scanner
  • the light receiving unit 1530 may be an IR detector
  • the processor 1800 may detect reflected light from the user's eyes so that the IR detector can detect the user's eyes. You can control the IR detector to detect IR light.
  • the processor 1800 may detect features related to the user's eyes and gaze by executing the eye feature detection module 1730 stored in the storage unit 1700 .
  • the eye feature detection module 1730 can include a pupil position detection module 1731 .
  • the processor 1800 may detect the position of the pupil of the user's eye by executing the pupil position detection module 1731 stored in the storage unit 1700 .
  • the pupil position detection module 1731 may identify the position of the pupil of the user's eye based on the IR light reflected from the user's eye.
  • the pupil position detection module 1731 may identify the pupil position of one eye of the user based on the IR light reflected from the user's eye.
  • the pupil position detection module 1731 may identify the pupil position of both eyes of the user based on the IR light reflected from the user's eyes.
  • the pupil position detection module 1731 may identify the position of the pupil of the user's eye in the image from an image captured by the IR camera.
  • the pupil position detection module 1731 may calculate the position of the pupil of the user's eye by analyzing IR light sequentially acquired by the IR detector.
  • the pupil position detection module 1731 may identify the position of the pupil of the user's eye by identifying the central point of the pupil of the user's eye.
  • the processor 1800 may detect the position of the pupil feature point and the glint feature point of the user's eyes by executing the eye feature detection module 1730 .
  • the pupil feature point may be, for example, the center point of the pupil
  • the eye twinkle feature point may be a part of the detected area of the eye having a brightness greater than or equal to a predetermined value.
  • the location of the pupil feature point and the location of the eye twinkle feature point may be identified by, for example, a coordinate value indicating a location in the coordinate system of the light receiving unit 1530 .
  • the coordinate system of the light receiving unit 1530 may be an IR camera coordinate system or an IR detector coordinate system, and coordinate values in the coordinate system of the light receiving unit 1530 may be 2D coordinate values.
  • the processor 1800 may detect features related to the user's eyes and gaze by analyzing the light received by the light receiving unit 1530 . For example, when the light receiving unit 1530 is an IR camera, the processor 1800 may identify the position of the pupil feature point and the eye twinkle feature point in an image captured by the IR camera. Alternatively, for example, when the light receiving unit 1530 is an IR detector, the processor 1800 may analyze the IR light detected by the IR detector to identify the position of the pupil feature point and the eye twinkle feature point.
  • the processor 1800 may obtain a coordinate value indicating the location of the pupil feature point and a coordinate value indicating the location of the eye twinkle feature point by analyzing the light received by the light receiver 1530 .
  • the processor 1800 may obtain coordinate values of pupil feature points and eye twinkle feature points in the coordinate system of the IR camera.
  • the coordinate system of the IR camera may be used to indicate the location of the pupil feature point and the eye twinkle feature point.
  • coordinate values on the IR camera coordinate system corresponding to pixels of an image captured by the IR camera may be previously can be set.
  • coordinate values corresponding to feature points of the eye may be identified based on attributes (eg, brightness) of the IR light received through the IR camera.
  • the processor 1800 may identify the location of the central point of the pupil in an image captured by the IR camera.
  • the processor 1800 identifies brightness of IR light received through an image sensor of an IR camera including a plurality of photodiodes, and selects at least one pixel that has received IR light representing a pupil among pixels of an image captured by the IR camera. By identifying it, it is possible to identify the location of the center point of the pupil.
  • positions of pixels in an image captured by an IR camera may be identified through a coordinate system of the IR camera, and the position of the center point of the pupil is a position value of at least one pixel corresponding to the center point of the pupil, and IR It can have coordinate values in the camera's coordinate system.
  • the processor 1800 may identify the position of the brightest point in an image taken by an IR camera in order to identify the eye twinkling feature point.
  • the processor 1800 identifies brightness of IR light received through an image sensor of an IR camera including a plurality of photodiodes, and selects at least one pixel corresponding to IR light that is brighter than a predetermined standard among pixels of an image captured by the IR camera.
  • the processor 1800 may identify the location of the eye twinkle feature point by identifying a pixel corresponding to the brightest IR light among pixels of an image photographed by an IR camera.
  • positions of pixels in an image photographed by an IR camera may be identified through a coordinate system of the IR camera, and the position of the eye twinkle feature point is a position value of a pixel corresponding to the eye twinkle feature point, and the IR camera may have coordinate values in the coordinate system of
  • the processor 1800 may calculate the coordinate values of the pupil feature point and the eye twinkle feature point in the coordinate system of the IR detector.
  • the processor 1800 sequentially irradiates a point light source or line light source to cover the area where the user's eyes are located to scan the area where the user's eyes are located by controlling the IR scanner.
  • the light reflected from the eye of the user can be sequentially received through the IR detector.
  • the processor 1800 may identify pupil feature points and eye twinkle feature points by analyzing an array of light sequentially received through the IR detector.
  • the coordinate system of the IR detector may be used to indicate the location of the pupil feature point and the eye twinkle feature point.
  • a coordinate value on the IR detector coordinate system corresponding to lights in an array of lights sequentially received through the IR detector. can be set in advance.
  • irradiation directions, irradiation ranges, and irradiation times of lights emitted from the IR scanner may be determined according to operation settings of the IR scanner, and a light array may be formed from the lights emitted from the IR scanner.
  • coordinate values on the coordinate system of the IR detector corresponding to the lights in the light array are identified. It can be.
  • light and light coordinate values corresponding to eye feature points may be identified based on properties (eg, brightness) of lights in the array of lights sequentially received through the IR detector.
  • the processor 1800 may identify the position of a feature point of the pupil based on coordinate values on the coordinate system of the IR detector corresponding to the identified lights by identifying lights having a brightness of less than a predetermined value in the received light array. .
  • the processor 1800 identifies a coordinate value on the coordinate system of the IR detector corresponding to the identified light as a coordinate value of the eye twinkle feature point by identifying light having a brightness greater than or equal to a predetermined value in the received light array.
  • the coordinate values of the pupil feature points and the eye twinkle feature points may be values corrected by reflecting the degree of distortion of the support part 190 of the gaze tracking device 1000, which will be described later.
  • the processor 1800 may reflect the degree of distortion of the temple 191 of the eye tracking device 1000 and/or the degree of distortion of the nose support 192 to calculate the coordinate values of the corrected pupil feature point and the coordinate value of the eye twinkle feature point, Corrected coordinate values may be input to the mapping function.
  • the processor 1800 may acquire information about the user's gaze by executing the gaze determination module 1740 stored in the storage unit 1700 .
  • the gaze determination module 1740 may include a 3D eye model 1741.
  • the processor 1800 may calculate the location of the center of the user's eyes by executing the gaze determination module 1740 .
  • the center of the user's eye may be the center of the user's eyeball.
  • the processor 1800 may calculate the location of the center of the user's eye based on the location of the pupil of the user's eye acquired by the pupil location detection module 1731 .
  • the center of the eye may be the center of the eyeball, and the position of the center of the eye may have a 3D coordinate value in a real space coordinate system.
  • the processor 1800 may calculate the position of the user's gaze point by executing the gaze determination module 1740 .
  • the processor 1800 may pre-generate a mapping function for calculating the position of the gaze point from the characteristics of the user's eyes in order to calculate the position of the user's gaze point.
  • the location of the gaze point may have a 3D coordinate value in a real space coordinate system, but is not limited thereto.
  • the location of the gaze point may have a coordinate value in the coordinate system of the wave guide 1320, but is not limited thereto.
  • the processor 1800 may calculate the location of the user's gaze point by applying features related to the user's eyes and gaze to a mapping function.
  • the direction of the user's gaze may be determined based on the position of the central point of the eye calculated by the gaze determination module 1740 and the gaze point of the user.
  • the processor 1800 may calculate the user's gaze point without using the aforementioned mapping function.
  • the gaze determination module 1740 may calculate the user's gaze direction from an image in which the user's eyes are captured using a predetermined algorithm.
  • the obtained gaze direction may be a vector value representing the user's gaze direction in the camera coordinate system.
  • An algorithm used to obtain the user's gaze direction may be an algorithm for fitting the 3D eye model 1741 .
  • An algorithm for fitting a 3D eye model is an algorithm for obtaining a vector value representing the direction of the user's gaze by comparing an eye image corresponding to a reference vector value representing the direction of the user's gaze with an image captured by an IR camera.
  • the 3D eye model 1741 is generated based on the features related to the user's eyeball and line of sight acquired by the eye feature detection module 1730 and the position of the pupil of the user's eye acquired by the pupil position detection module 1731 .
  • the processor 1800 executes the gaze determination module 1740 so that the location of the pupil feature point of the user's eye, the location of the glint feature point and the pupil of the user's eye detected by the eye feature detection module 1730 3D modeling of the user's eyeball may be performed based on the location of the .
  • the processor 1800 may update the 3D eye model 1741 based on information related to the eyes and gaze of the user wearing the gaze tracking device 1000 detected at a predetermined cycle by the gaze detection module 1500 .
  • a method for the gaze determination module 1740 to update the 3D eye model 1741 based on information related to the user's eyes and gaze and a method for acquiring the direction of the user's gaze using the 3D eye model 1741 will be described in more detail with reference to FIGS. 12 to 15 . I'm going to do it.
  • the processor 1800 may determine a sensing area to be sensed by the gaze detection module 1500 for gaze detection by executing the sensing region determination module 1750 stored in the storage unit 1700 .
  • gaze tracking performance may be deteriorated when a positional change occurs due to rotation of the user's eyes or movement of the gaze tracking device 1000 .
  • the gaze detection process performed by the gaze detection module 1500 obtains information on the location and feature points of the user's eyes through sensing, detects the gaze, and then tracks the user's gaze through continuous sensing. do.
  • the processor 1800 drives the gaze determination module 1780 to perform gaze detection based on data related to the eyes and gaze of the user wearing the gaze tracking device 1000, detected at a predetermined cycle by the gaze detection module 1500, and the data 3D eye model. Update 1741.
  • the gaze detection module 1500 may detect data at regular predetermined time intervals. Therefore, since the updated data 3D eye model 1741 reflects changes in the user's eyeball and gaze feature points, the processor 1800 may drive the sensing region determination module 1750 to determine the sensing region in which the sensor unit 1510 of the gaze detection module 1500 operates. there is.
  • the gaze tracking sensor may be the gaze detection module 1500 or the gaze tracking sensor 1510 illustrated in FIG. 2 .
  • 3A to 3C are diagrams for explaining how a scanner-based gaze tracking sensor senses a user's eyes.
  • 3A and 3B are views of the eye tracking sensor and the user's eyes viewed from the side.
  • the eye tracking sensor is disposed facing the user's eyes, and the scanner-based eye tracking sensor includes the scanner and at least It may contain one detector.
  • the user's eyes may be shaped as two overlapping spheres, and the cornea 200 having a smaller curvature is convexly protruded from the eye ball 100 having a larger curvature. It is covered by the iris, and the pupil 300, a circular hole that absorbs light, is located in the anterior part of the cornea.
  • Eye tracking may mean acquiring a gaze vector that is a straight line crossing the center point of the eyeball 100 and the center point of the pupil 300 .
  • the scanner may include a laser and a mirror, and the mirror is configured in an angle-adjustable form.
  • the light emitting unit 1520 When the light emitting unit 1520 is an IR scanner and the light receiving unit 1530 is an IR detector, the light emitting unit 1520 emits point or linear IR light toward the user's eyes, and the light receiving unit 1530 is a point light reflected from the user's eyes or It can receive the IR light of beneficiation. In this case, the light emitting unit 1520 may sequentially emit IR light while moving the light emitting direction of the light emitting unit 1520 so that point light or linear IR light covers the space where the user's eyes are located.
  • An IR scanner is generally composed of an IR LED and a MEMS (Micro-Electro Mechanical Systems) mirror that can control and reflect the direction of IR light emitted from the IR LED, but hereinafter, it will be collectively referred to as an IR scanner. do.
  • MEMS Micro-Electro Mechanical Systems
  • IR detectors it is common for IR detectors to have several photodiodes installed in areas where light detection is required, but will be described below as IR detectors or detectors.
  • the IR scanner-based gaze tracking sensor is mounted in a frame of an augmented reality device form factor in the direction of the user's eyes, and includes at least one IR.
  • a scanner and a plurality of IR detectors may be included, and at least one of the plurality of IR detectors may be used for pupil detection.
  • the IR LED may radiate laser (IR light) toward the MEMS mirror, and the IR light reflected from the MEMS mirror is reflected to the user's eyeball and received by IR detectors.
  • IR light IR light
  • the laser irradiated from the IR LED is incident to the user's eyeball at various angles, and the detectors can receive the IR light reflected from the user's eyeball at various angles.
  • the IR LED may emit IR light for a part of the entire area of the user's eye based on the set sensing area.
  • the MEMS mirror may emit IR light so that the IR light is irradiated to a part of the entire area of the user's eye based on the set sensing area.
  • the sensing area may be set as an area in which information related to the user's eyes and gaze may be obtained to detect the user's gaze from the IR light reflected by the user's eyes and received by the detector.
  • the sensor data of the IR scanner-based gaze tracking sensor refers to raw data that is received by the IR detector after IR light emitted from the IR scanner is reflected to the user's eyes, and information related to the user's eyes and gaze is obtained by analyzing the sensor data. can be obtained.
  • Information related to the eyeball and gaze of the user includes information on the position of the glint feature point of the user's eyeball, information on the size and position of the pupil, size and position of the iris, and cornea. ) may include at least one of information on the size and position of the eyeball and information on the size and position of the eyeball.
  • the twinkle feature points of the user's eyeball are points where light is reflected brightly and are located on the cornea, and the number can be determined in various ways depending on the situation (eg, the characteristics of the user's eyes, the position of the light source, and the presence or absence of an external light source, etc.) . Since the pupil is an area that absorbs light incident on the user's eyeball, it has no or almost no reflected light.
  • 4A and 4B are diagrams for explaining a method of acquiring pupil information using sensing data of a scanner-based gaze tracking sensor.
  • the pupil detector input has a U-curve shape with a large value at the edge of the eyeball and a small value at the center of the eyeball.
  • the pupil is an area that absorbs light incident on the eyeball, and since there is almost no reflected light, the pupil detector input is low. Since most of these are reflected, the pupil detector input appears high.
  • a position where the pupil detector input is maintained high and becomes lower than the second threshold brightness TH2 may be determined as the pupil start points Ax and Ay or the pupil end points Dx and Dy.
  • ([Bx,Cx] and [By,Cy], which are low-level sections in which the pupil detector input is lower than the first threshold brightness TH1 may be determined as the position and range of the pupil.
  • the input of the pupil detector may appear as a distorted U-shaped curve with the position of the low level skewed to one side in the x-axis direction.
  • the input of the pupil detector may appear as a distorted U-shaped curve with the position of the low level skewed to one side in the y-axis direction.
  • Figure 4b shows the size and position of the pupil and the size and position of the cornea in the embodiment shown in Figure 4a.
  • the gaze tracking device 1000 may identify the size and position of the pupil and the size and position of the cornea based on the pupil detector input of the scanner-based gaze tracking sensor.
  • the input of the pupil detector when the input of the pupil detector is shown as shown in FIG. 4A , it can be estimated that the pupil is located within the range of Bx to Cx in the x-axis direction and the range of By to Cy in the y-axis direction.
  • the section where the input of the pupil detector rapidly changes corresponds to the corneal region.
  • the size of the cornea may be obtained using the slope of the input.
  • the pupil 300 is a circle or ellipse within a [Bx,Cx,By,Cy] rectangle
  • the cornea 200 is a circle or ellipse within a [Ax,Dx,Ay,Dy] rectangle. It can be estimated as an ellipse.
  • 5A and 5B are diagrams for explaining a method in which a scanner-based gaze tracking sensor senses a user's eyeball and obtains eye feature point information.
  • 5A shows detector inputs for each of the x-axis and y-axis directions of the scanner-based gaze tracking sensor.
  • the twinkle feature points are the brightest points on the eyeball, and since light is reflected the most from the twinkle feature point among the eyeballs of the user, the position detector input of the twinkle feature point among the eyeball regions appears high. Accordingly, the gaze tracking device 1000 may determine a position at which the detector input has a peak value as the position of the glint in a section where the detector input is higher than the third threshold brightness TH3. The position and number of the twinkle feature points may vary according to the user's eye characteristics or the setting of the third threshold brightness.
  • the detector input represents peak values at P1x, P2x, P3x, and P4x on the x-axis among sections having brightness higher than the third threshold brightness, and peaks at P3y, P1y, P4y, and P2y on the y-axis. represents a value.
  • FIG. 5B shows locations of twinkle feature points in the embodiment shown in FIG. 5A. If the location where the detector input is high is displayed on the x-y Cartesian coordinates of the eyeball, there are four twinkle feature points, P1, P2, P3, and P4, and the locations are [P1x, P1y], [P2x], as shown in FIG. 5B, respectively. , P2y], [P3x, P3y], and [P4x, P4y].
  • the gaze tracking device 1000 includes information on the size and position of the pupil, the size and position of the cornea, the size and position of the eyeball, and the number and position of the twinkling feature points by analyzing the data of the scanner-based gaze tracking sensor. It is possible to obtain information related to the user's eyes and gaze.
  • the wider the sensing area the more likely it is that the user's eye tracking will be successful even if external factors (eg, noise caused by external light, rotation of the user's eyeballs, or pupil occlusion due to user's blinking) occur. It rises.
  • external factors eg, noise caused by external light, rotation of the user's eyeballs, or pupil occlusion due to user's blinking
  • the narrower the sensing region the higher the user's eye tracking accuracy and the faster the eye tracking speed. Therefore, it is necessary to determine an optimal sensing area that is robust to external factors and guarantees eye tracking speed and accuracy.
  • 6A and 6B are diagrams for explaining how a camera-based gaze tracking sensor senses a user's eyeball.
  • 6A is a side view of the eye tracking sensor and the user's eyes.
  • the eye tracking sensor is disposed facing the user's eyes, and the camera-based eye tracking sensor uses at least one camera.
  • can include 6B is a frontal view of the gaze tracking sensor and the user's eyes.
  • the IR camera-based gaze tracking sensor is mounted in a frame of an augmented reality device form factor in the direction of the user's eyes, and includes at least one IR. May include a camera.
  • the light emitter 1520 is an IR LED emitting IR light and the light receiver 1530 is an IR camera that captures IR light
  • the IR camera may capture the user's eyes using IR light reflected by the user's eyes.
  • the light emitting unit 1520 is an IR LED and the light receiving unit 1530 is an IR camera
  • the light emitting unit 1520 emits planar IR light toward the user's eyes
  • the light receiving unit 1530 transmits IR light reflected from the user's eyes. It can receive IR light of surface light.
  • image analysis may be performed on a part of the entire region of the user's eye based on the set sensing region.
  • the sensing area may be set as an area capable of obtaining information related to the user's eyeball and gaze for detecting the user's gaze from the eyeball image captured by the IR camera.
  • the sensor data of the IR camera-based gaze tracking sensor refers to raw data captured by the IR camera after IR light emitted from the IR LED is reflected on the user's eyes. And information related to the line of sight may be obtained.
  • FIGS. 7A to 7C are diagrams for explaining a method in which a camera-based gaze tracking sensor senses a user's eyeball to obtain pupil information and eye feature point information.
  • FIG. 7A shows an image of a user's eye taken by an IR camera.
  • the camera-based gaze tracking method may acquire information related to the user's eyes and gaze by analyzing pixels of an eye image captured by an IR camera.
  • the iris is detected using a variable template. Since the glint exists in the iris region and has the feature of having the pixel value of the highest brightness, it is possible to detect the glint by performing binarization within the iris region. Since the pupil is partially occluded depending on the position of the glint, and it is difficult to find an accurate pupil using a circle or ellipse detection method, the position of the pupil can be detected using information on the location of the glint.
  • an eyeball image captured by an IR camera may be pixel-analyzed to determine a portion having brightness below a predetermined value as a pupil and a portion having brightness above a reference value as a glint.
  • the reference value may be a predetermined value.
  • a bright part having a predetermined brightness or more may be identified as a twinkling feature point.
  • a method for detecting a twinkling feature point using a camera-based gaze tracking sensor includes acquiring an image of the user's eye region using an IR camera, removing noise, generating a valley map, and using a variable template. can be applied to detect the iris, extract iris regions, binarize, label, and detect glints.
  • a dark portion below a predetermined brightness may be identified as a pupil position.
  • a method for detecting a pupil using a camera-based eye tracking sensor acquires an image of the user's eye region using an IR camera, removes noise, binarizes, and performs erosion/dilation operations. , perform labeling, and detect pupils.
  • FIG. 8 is a diagram for explaining a method of determining a sensing area in a gaze tracking method according to an embodiment of the present disclosure.
  • the gaze tracking sensor searches for the position of the user's eyes in an initial sensing process.
  • an electronic device eg, an augmented reality device
  • an eye tracking sensor may request the user to maintain a front-facing state for a predetermined period of time. While the user's gaze is maintained in a fixed state, the gaze tracking sensor may sense the user's eyes in a maximum detectable range (eg, a maximum scan angle ⁇ _max supported by hardware).
  • the scanner-based gaze tracking sensor determines a 'central direction' based on the eye feature points of the user when information on the eye feature points of the user is obtained through initial sensing, and determines the user's eyes in a fixed scan range. Gaze tracking can be performed by scanning the eyeball. The 'central direction' may be determined so that the eyeball feature points are positioned as close to the scan central point as possible.
  • the sensor data space can be determined.
  • Eye tracking may fail due to various factors during use of the electronic device.
  • the sensing area is determined in the same way as shown in FIG. 8, the first sensing should be performed every time the user wears the electronic device including the eye tracking sensor. do. Also, since the sensing area cannot be updated while the user is using the electronic device, sensing to search for the user's eye position must be performed again in order to update the sensing area.
  • FIGS 9A to 9C are diagrams for explaining cases in which gaze tracking fails in the gaze tracking method according to an embodiment of the present disclosure.
  • a part of the pupil of the user's eyeball may be located outside the scan area of the scanner, that is, outside the sensing area due to incorrect sensing area setting.
  • Such a phenomenon may occur when the sensing area (eg, the scan angle of the scanner) is narrow, and the pupil moves out of the sensing area due to eye rotation.
  • the position of the pupil may move outside the sensing area.
  • a result of scanning the pupil of the user's eyeball may be distorted due to an incorrect sensing region setting.
  • the sensing area eg, the scan angle of the scanner
  • the time for sensing becomes long. If the pupil moves quickly within one scan period, the shape of the pupil cannot be properly obtained. For example, it is assumed that a pupil located at the upper side at time point t1 within one scan period rapidly rotates and is located at the lower side at time point t2.
  • the actual pupil shape is two small elliptical shapes, indicated by a dotted line, looking upward at time t1 and looking down at time t2, but pupils sensed by the gaze tracking sensor within the scan period including t1 and t2
  • the shape is obtained as a large ellipse indicated by a solid line, including the top and bottom.
  • the camera-based gaze tracking sensor may perform gaze tracking by dividing an image sensor of the camera so that only a part of the sensor operates. Specifically, the eye tracking sensor performs initial sensing, and when a sensing result for the outer shape of the eye is not obtained in the first sensing, it may expand the sensing area and try again to obtain information about the outer shape of the eye. If the eye shape is acquired successfully by expanding the sensing region, the sensing region required for gaze tracking may be optimized based on the acquired eye shape.
  • the camera-based gaze tracking sensor requires a relatively wide motion area to determine the shape of the eye, and as the motion area widens, the amount of data for image processing increases. learning performance is degraded.
  • FIG. 10 is a diagram for explaining a method of determining a scan area in a gaze tracking method according to an embodiment of the present disclosure.
  • an eyeball model is updated according to the movement of the eyeball, and the updated eyeball model is stored in the updated eyeball model.
  • the sensing area of the eye tracking sensor may be changed by changing the center point of the eye tracking based on the eye tracking sensor.
  • the gaze tracking sensor acquires information about the user's eyeball by performing initial sensing again with the maximum detectable range. Should be.
  • gaze tracking since it is impossible to acquire information on the user's eyeballs and perform sensing to change the sensing region during gaze tracking, gaze tracking must be stopped, information on the user's eyes must be obtained, and then gaze tracking must be performed again.
  • the electronic device secures the user's eyeball model
  • the user's eyeball model is updated according to the eyeball movement and based on the updated user's eyeball model
  • a sensing area of the eye tracking sensor may be changed by moving the central point of eye tracking (eg, the center direction of the pupil).
  • the sensing range of the gaze tracking sensor is determined using the updated eyeball model, thereby sensing the eye gaze tracking sensor without a separate scan. scope can be determined.
  • the sensing area may be changed in real time based on information obtained during gaze tracking.
  • FIG. 11 is a flowchart of a method of determining a sensing area for gaze tracking according to an embodiment of the present disclosure.
  • the user of the eye-tracking device 1000 uses the augmented reality device 1000. If the newly mounted one is identified, the gaze tracking device 1000 may perform initial sensing for detecting the user's gaze.
  • the sensing for detecting the user's gaze performed by the gaze tracking device 1000 emits IR light toward the user's eyes using the light emitting unit 1520 of the sensor unit 1510 of the gaze detection module 1500, and This may refer to a series of processes of acquiring sensor data including information related to the user's eyeball and gaze by receiving the IR light reflected from the user's eyeball using the receiver 1530 .
  • the eye tracking device 1000 provides a user interface (eg, displaying on a display or audio) can be provided.
  • a user interface eg, displaying on a display or audio
  • a sensing area for initial sensing may be determined based on an initial setting value set in the gaze tracking device 1000 or may be determined as a maximum range in which the gaze detection module 1500 is movable.
  • the eye-tracking apparatus 1000 may obtain a 3D eyeball model of the user based on the acquired sensor data, and may determine a sensing area thereafter to include all of the user's eyeball feature points.
  • the 3D eye model 1741 is generated based on the features related to the user's eyeball and line of sight acquired by the eye feature detection module 1730 and the position of the pupil of the user's eye acquired by the pupil position detection module 1731 .
  • the processor 1800 executes the gaze determination module 1740, and thus the position of the pupil feature point of the user's eye and the position of the glint feature point detected by the eye feature detection module 1730. And based on the position of the pupil, the user's eyeball may be 3D modeled.
  • a sensing area determined through initial sensing is referred to as a first sensing area, and the sensing area may include information about a sensing center point and a sensing range (eg, an angle).
  • the gaze tracking device 1000 may acquire first eye data from a first sensing area of the gaze tracking sensor.
  • the first sensing area may refer to a sensing area determined through initial sensing, and the gaze tracking sensor uses the light emitting unit 1520 of the augmented reality device 1000 to detect the first sensing area of the user's eyeball.
  • First eye data including information related to the user's eyeball may be obtained in the first sensing region by emitting IR light towards the eyeball and receiving IR light reflected from the user's eyeball using the light receiving unit 1530 .
  • Eye data refers to 2D sensor data including information related to the eyeball and gaze of the user obtained from the gaze tracking sensor, and includes the position of the glint feature point of the user's eyeball, the size and position of the eyeball, and the pupil. ), at least one of information about the size and location of the iris, the size and location of the iris, and the size and location of the cornea.
  • the gaze tracking device 1000 may obtain an eye model based on first eye data acquired from the gaze tracking sensor.
  • Sensor data obtained from the eye tracking sensor may refer to 2D data obtained by projecting eyeball information in a 3D space onto a 2D plane (2D image space), and depth information corresponding to the z axis (eye tracking sensor and the distance between the eyeballs of the user) may be obtained by analyzing received data of a plurality of light receivers included in the gaze detection module 1510 . According to the above relationship, actual eyeball information in 3D space can be obtained by back-projecting sensor data.
  • the gaze tracking apparatus 1000 may obtain an eye model for detecting a user's gaze by updating the existing eye model.
  • the augmented reality device may periodically update or newly create an eyeball model for detecting a user's gaze based on periodically acquired sensor data.
  • the 3D model space may be created by acquiring an eyeball model E using actual eyeball information in the 3D space and updating the eyeball model.
  • the gaze tracking device 1000 may determine a second sensing area based on the eyeball model.
  • the gaze tracking apparatus 1000 may obtain information on the gaze of the user by applying second sensor data including information related to the eyeball and gaze of the user to a 3D eye model in the second sensing region. .
  • the user's gaze information is information related to the user's gaze and can be generated by analyzing sensor data. For example, the location of the user's pupil in 3D space, the location of the central point of the pupil, the location of the user's iris, and the user's gaze information. Information about the center of the eye, the position of the user's eye twinkle feature point, the user's gaze point, the user's gaze direction, etc. may be included, but is not limited thereto.
  • the direction of the user's gaze may be, for example, a direction of the gaze from the center of the user's eyes to the gaze point at which the user gazes.
  • the user's gaze direction may be represented by a vector value from the center of the user's left eye to the gaze point and a vector value from the center of the user's right eye to the gaze point, but is not limited thereto.
  • the gaze tracking apparatus 1000 compares data obtained by applying the first sensor data to a 3D eye model and data obtained by unprojecting the first sensor data into a 3D space. Based on this, the second sensing region may be determined.
  • the gaze tracking apparatus 1000 measures the center of the pupil obtained by back-projecting the center of the pupil of the user's 3D eye model and information about the center of the pupil included in the first sensor data into a 3D space. difference, the ratio of the pupil size (radius) of the user's 3D eye model and the pupil size (radius) obtained by back-projecting the information on the pupil size (radius) included in the first sensor data into the 3D space, and the user
  • the second sensing area may be determined based on a difference between the position of the twinkle feature point of the 3D eye model of the eyeball and the position of the twinkle feature point obtained by back-projecting the information on the twinkle feature point included in the first sensor data.
  • FIG. 12 shows the structure of the human eye and a simplified structure of the eye.
  • the fovea is a part where light passes vertically through the center of the cornea and the lens, and the direction of the gaze is the visual axis passing from the fovea to the center of the lens.
  • the line passing through the pupil from the center of rotation of the eyeball is called the optical axis, and the angle between the visual axis and the optical axis is called the kappa angle, and the visual axis is horizontal from the optical axis to the center of the pupil. It is tilted about 5 degrees inward and about 1 degree vertically downward.
  • gaze tracking data is acquired using an eyeball model or through user-specific correction.
  • the human eyeball When the human eyeball is simplified, it is composed of two spheres having different curvatures overlapping, and a part of the second sphere protrudes from the first sphere corresponding to the eyeball 310, and the protruding part from the second sphere With the cornea 320 , a portion of the front portion of the second sphere may be shaped as the pupil 330 .
  • gaze tracking means acquiring a vector from the center of the eyeball 311 to the center of the pupil 331, that is, a gaze vector 400. Tracking the user's gaze can be implemented by tracking and measuring eye movements.
  • a specific gaze tracking method may vary depending on an applied eye model and gaze tracking algorithm.
  • FIG. 13 is a diagram for explaining an eyeball model and a method of updating the eyeball model and determining a sensing region according to an embodiment of the present disclosure.
  • sensor data obtained from the eye tracking sensor may refer to 2D data obtained by projecting information about the eyeball in a 3D space onto a 2D image space, and corresponding to the z axis.
  • Depth information (the distance between the gaze tracking sensor and the user's eyeballs) may be obtained by analyzing received data of a plurality of light receivers included in the gaze detection module 1510 . According to the above relationship, actual eyeball information in 3D space can be obtained by back-projecting sensor data.
  • the 3D model space may be created by acquiring an eyeball model E using actual eyeball information in the 3D space and updating the eyeball model.
  • the sensor data of the 2D plane is displayed using (u, v) coordinates
  • the eye information of the 3D space obtained by back-projecting the sensor data is (x, y, It is displayed using z) coordinates.
  • the eye tracking device 1000 when the user wears the eye tracking device 1000 for the first time, the eye tracking device 1000 first senses the area (eg, the direction of the sensing center point). , and the sensing angle ) by operating the gaze tracking sensor to obtain the user's eye feature point information and to obtain the first sensing area (for example, the direction of the sensing center point). , and the sensing angle ) can be determined.
  • the initial sensing range of the eye tracking sensor according to the first wearing of the eye tracking device 1000 may be determined as a sensing center point direction according to a factory default setting and a maximum sensing angle supported by hardware. If it fails to identify feature points related to the user's eyes and gaze from the obtained initial sensor data, the gaze tracking device 1000 may operate to advise the user to wear the gaze tracking device 1000 again and sense the eyes again.
  • the gaze tracking sensor determines the direction of the first sensing area and the sensing center point. , and the sensing angle In , it is possible to obtain sensor data by performing gaze tracking.
  • the sensor data is the pupil radius , 2D pupil center position , and at least one 2D twinkle feature point position can include
  • the sensor data is a matrix that backprojects a 2D plane into a 3D space. It can be converted into 3D data by
  • the eye tracking device 1000 determines the 2D pupil center position 3D pupil center position by backprojecting , the position of the twinkle feature point 3D twinkle feature point location by backprojecting can be obtained.
  • the gaze tracking device 1000 determines the radius of the pupil in a 3D space based on the pupil radius data of the 2D plane obtained from the gaze tracking sensor and the depth information corresponding to the z axis. can be obtained.
  • the information related to the twinkle feature point in 3D space is , the information related to the pupil in 3D space is can be expressed as
  • the back projection matrix is the position of the eyeball and the position of the light emitter 1520 included in the gaze tracking device 1000 , and may be determined based on the position of the light receiving unit 1530.
  • the center position of the eyeball can include Eye tracking device 1000 is the position of the sensor A vector indicating the direction from to the sensing center position The sensing area may be determined based on the angle ⁇ representing the sensing range.
  • the sensing center position is the center position of the eyeball. If set to , a vector indicating the direction to the sensing center position Is can be determined by According to an embodiment of the present disclosure, the central position of the eyeball pupil center position from vector across is the gaze vector, which is the direction of the line of sight.
  • the eye gaze tracking device 1000 fails in eye gaze tracking while tracking the user's eye gaze, the eye gaze tracking device 1000 needs to change the sensing area of the gaze tracking sensor.
  • the initial sensing for determining the sensing area and the sensing for tracking gaze operate separately from each other. Therefore, if gaze tracking fails, it is impossible to change the sensing area immediately because there is no clue for 'tracking', and if gaze tracking fails during gaze tracking, sensing (initial sensing) of the maximum range is performed again to determine the sensing area. It should be done.
  • an eyeball model is generated using sensor data for gaze tracking, and the eyeball model is updated based on the additionally obtained sensor data for gaze tracking, thereby determining a sensing area of the gaze tracking sensor. It can be changed/determined in real time.
  • gaze tracking is performed based on the eyeball model according to an embodiment of the present disclosure, and sensing area Gaze tracking performance may be improved when determining .
  • FIG. 14 shows an example of an algorithm for acquiring an eyeball model and determining a sensing area for gaze tracking according to an embodiment of the present disclosure.
  • an algorithm for acquiring an eyeball model and determining a sensing area is configured to perform eyeball features (g, p, ...) information is obtained, and an eyeball model is obtained based on the acquired eyeball feature information.
  • Reliability and error (conf, ⁇ ) of the eye model are acquired, and the sensing area is based on the obtained eye model and the reliability and error of the eye model.
  • the eyeball model is updated by reflecting the user's eyeball feature information when there is a previously created eyeball model, and is generated by reflecting the user's eyeball feature information when there is no previously created eyeball model.
  • the eye model may be created and managed separately for each user by reflecting user information.
  • An eye tracking device equipped with an eye tracking sensor according to an embodiment of the present disclosure may perform eye tracking by controlling the sensor according to the determined sensing area.
  • the eye tracking apparatus 1000 may apply the obtained 3D data to a 3D eyeball model to obtain information related to the twinkle feature point and pupil information on the 3D eyeball model.
  • the gaze tracking apparatus 1000 When sensor data is acquired from the gaze tracking sensor, the gaze tracking apparatus 1000 identifies feature points (eg, g, p, %) related to the user's eyes and gaze from the sensor data, and A 3D user eye model may be created based on the feature points.
  • a 3D eye model according to an embodiment of the present disclosure can be defined as
  • Gaze tracking sensor senses center direction vector and 2D sensor data (g, p, ...) in the sensing area of the sensing range ⁇ , and the gaze tracking device 1000 applies the 3D data obtained by back-projecting the 2D sensor data to the 3D eye model to obtain the 3D eye model.
  • eyeball radius at , the radius of the pupil , and the 3D pupil center position in the 3D eye model , and the position of at least one twinkle feature point can be obtained.
  • the gaze tracking device 1000 includes a first sensing area (eg, and ), the first sensor data may be obtained by sensing the user's eyeball.
  • the gaze tracking apparatus 1000 identifies information (g, p, %) on feature points related to the user's eyes and gaze from the first sensor data, and creates a 3D user eye model based on the feature points related to the user's eyes and gaze. can be updated.
  • the gaze tracking apparatus 1000 generates a 3D user eye model based on information (g, p, %) on feature points related to the user's eyes and gaze identified from the first sensor data. can be updated. If the 3D user eye model has not been generated in the previous step, the gaze tracking apparatus 1000 generates a 3D model based on information (g, p, %) on feature points related to the user's eyes and gaze identified from the first sensor data. A new eye model can be created.
  • the gaze tracking apparatus 1000 uses the 3D user eye model E to obtain information about eye feature points in the 3D model space. can be obtained.
  • the gaze tracking device 1000 back-projects information (g, p, %) on feature points related to the user's eyes and gaze into a 3D space. and information about eye feature points in 3D model space The error of the eye model based on the difference in can be obtained.
  • Means the difference between the center position of the actual pupil in the 3D space and the pupil in the 3D model space is defined as follows.
  • the eye tracking apparatus 1000 uses a second sensing region (for example, and ) can be determined.
  • the eye tracking apparatus 1000 senses the user's eyeballs in the second sensing region to obtain second sensor data, updates the 3D user's eyeball model based on the second sensor data, and performs new sensing based on the updated eyeball model.
  • the process of determining the area can be repeated.
  • the gaze tracking device 1000 performs sensing for tracking the user's eye gaze in real time and can use an eye model generated and updated based on existing sensing data, even if eye gaze tracking fails, the sensing area is detected in real time using the eye model. can be determined and changed.
  • FIG. 15 illustrates a sensing area of an eye tracking sensor according to an embodiment of the present disclosure.
  • the sensing area of the gaze tracking sensor may be determined based on information about the location of the sensor, information about the center of the pupil, information about the sensing angle, and information about the radius of the pupil.
  • the 3D position of the sensor is , the position of the center of the pupil in 3D space is , the pupil radius is , and the remaining variables follow the definitions of FIG. 13.
  • the sensing direction may be determined as follows by correcting a positional error of the 3D eye model with a direction vector from the sensor toward the center of the eye.
  • the sensing range ⁇ is the minimum central angle of the cone including the pupil area, and may be determined as follows by correcting the pupil scaling error.
  • 16 is a diagram for explaining a method of gradually expanding a sensing area when the gaze tracking sensor fails in gaze tracking according to an embodiment of the present disclosure.
  • the gaze tracking device 1000 using a fixed eye model may fail in gaze tracking due to user's eye blinking or sensor noise. Since it is impossible, the sensing area determination fails and the first sensing to determine the sensing area must be performed.
  • the gaze tracking sensor may change the sensing area in real time by updating the eyeball model in real time based on the gaze tracking sensor data.
  • the sensing area is wider than the existing sensing area, and the eye tracking sensor fails even though the sensing area is widened.
  • a stepwise expansion of the sensing area may be attempted with a wider sensing area. For example, if gaze tracking fails, the gaze tracking sensor first expands the sensing area to the iris range of the current eye model and attempts to acquire eye data. Eyeball data acquisition may be attempted by enlarging the sensing area to the entire range of the eyeball.
  • the gaze tracking sensor attempts to expand the sensing area according to a predetermined range and number of times, and when eye data acquisition fails up to a threshold number of times (n_max), the gaze tracking sensor detects the maximum range (eg, For example, sensing may be performed at the maximum scan angle ⁇ _max supported by the hardware.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-temporary storage medium' only means that it is a tangible device and does not contain signals (e.g., electromagnetic waves), and this term refers to the case where data is stored semi-permanently in the storage medium and temporary It does not discriminate if it is saved as .
  • a 'non-temporary storage medium' may include a buffer in which data is temporarily stored.
  • the method according to various embodiments disclosed in this document may be provided by being included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • a computer program product is distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store or between two user devices (eg smartphones). It can be distributed (e.g., downloaded or uploaded) directly or online.
  • a computer program product eg, a downloadable app
  • a device-readable storage medium such as a memory of a manufacturer's server, an application store server, or a relay server. It can be temporarily stored or created temporarily.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Ophthalmology & Optometry (AREA)
  • Artificial Intelligence (AREA)
  • Optics & Photonics (AREA)
  • Eye Examination Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 결정하는 방법은, 제1 센싱 영역에서 제1 안구 데이터를 획득하는 단계;를 포함할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 결정하는 방법은, 획득된 제1 안구 데이터에 기초하여 안구 모델을 획득하는 단계;를 포함할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 결정하는 방법은, 획득된 안구 모델에 기초하여 제2 센싱 영역을 결정하는 단계;를 포함할 수 있다.

Description

안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서
본 개시는 사용자의 시선을 검출하는 시선 추적 장치 및 방법에 관한 것으로서, 보다 상세하게는 시선 추적 센서의 광 방출부 및 광 수신부를 이용하여 사용자의 시선을 검출하는 시선 추적 센싱 영역을 결정하는 장치 및 방법에 관한 것이다.
안구 추적 또는 시선 추적은, 사람의 눈동자 움직임을 추적하거나(eye tracking) 또는 시선을 추적(gaze tracking)하는 기술로, 안구 추적 또는 시선 추적을 통해 사용자가 무엇을 보고 있는지 또는 무엇에 집중하고 있는지를 판단할 수 있다.
최근, 광고 등을 보고 있는 소비자들의 시선 추적 분석 결과는 마케팅에 활용되며, 또한 시선은 새로운 사용자 인터페이스(user interface, UI)로 이용되고 있다. 예를 들어, 사용자의 시선 방향과 커맨드가 사전 매핑되어 있다면, 시선 추적 센서가 포함되는 전자 장치는 소정의 시선 입력이 획득된 경우 해당 커맨드를 실행하도록 동작할 수 있다. 예를 들어, 스마트폰의 사용자가 스마트폰의 아래 방향을 응시하는 것으로 판단되면, 스마트폰은 화면을 아래로 스크롤하는 동작을 수행할 수 있다.
시선 추적 기술을 이용한 UI는 특히 증강 현실(Augmented Reality) 장치에서 많이 사용되는데, 증강 현실은 현실 세계의 물리적 환경 공간이나 현실 객체(real world object) 상에 가상 이미지를 투영시켜 하나의 이미지로 보여주는 기술이다. 증강 현실 장치는 사용자의 안면부나 두부에 착용된 상태에서 사용자의 눈앞에 배치되는, 도광판(웨이브가이드, waveguide)과 같은 시스루(see-through) 디스플레이를 이용한 안경 형태의 기기를 통해 현실 장면과 가상 이미지를 함께 볼 수 있게 한다. 이러한 증강 현실 장치에 대한 연구가 활발히 진행됨에 따라 다양한 형태의 착용형 장치들이 출시되거나 출시가 예고 되고 있다. 착용형 증강 현실 장치의 경우, 지속적인 응시, 눈 깜빡임, 또는 특정 방향 응시 등의 시선 추적 정보를 사용자 인터페이스로 이용함으로써 별도의 조이스틱 또는 제스처를 인식하기 위한 하드웨어 없이 사용자와 인터랙션 할 수 있다.
시선 추적 장치는, 하드웨어가 지원 가능한 최대 범위에서 사용자의 안구를 센싱하여 획득된 센싱 데이터에 기초하여 센싱 영역을 결정하고, 결정된 센싱 영역에서 시선 추적을 수행한다. 시선 추적 중 센싱 영역은 변경되지 않으며, 시선 추적에 실패한 경우 다시 하드웨어가 지원 가능한 최대 범위에서 사용자의 안구를 센싱하고, 센싱 영역을 다시 결정하여 시선 추적을 수행하게 된다.
즉, 시선 추적과 센싱 범위 결정을 동시에 수행할 수 없고 센싱 범위 결정을 위해 시선 추적을 중단해야 하며, 또한 시선 추적 장치의 미끄러짐 등으로 인해 안구의 위치가 이동하는 경우에도 시선 추적 센서는 고정된 센싱 범위로 시선 추적을 위한 광을 방출하게 된다.
본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 결정하는 방법은, 제1 센싱 영역에서 제1 안구 데이터를 획득하는 단계;를 포함할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 결정하는 방법은, 획득된 제1 안구 데이터에 기초하여 안구 모델을 획득하는 단계;를 포함할 수 있다. 획득된 안구 모델에 기초하여 제2 센싱 영역을 결정하는 단계;를 포함할 수 있다.
본 개시의 일 실시예에 따른 시선 추적 센서는, 적어도 하나의 광 방출부; 및 적어도 하나의 광 수신부;를 포함하고, 적어도 하나의 광 수신부는, 적어도 하나의 광 방출부가 제1 센싱 영역으로 방출한 광이 안구에 반사되어 수신되는 광에 기초하여 제1 안구 데이터를 획득할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 센서는, 적어도 하나의 광 방출부; 및 적어도 하나의 광 수신부;를 포함하고, 적어도 하나의 광 방출부는, 획득된 제1 안구 데이터에 기초하여 획득된 안구 모델에 기초하여 결정된 제2 센싱 영역으로 광을 방출할 수 있다.
본 개시의 일 실시예에 따른 시선 추적 장치는, 광 방출부 및 광 수신부를 포함하는 적어도 하나의 센서; 적어도 하나의 명령어(instruction)를 포함하는 프로그램을 저장하는 저장부; 및 저장부에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써, 적어도 하나의 센서를 이용하여 제1 센싱 영역에서 제1 안구 데이터를 할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 장치는, 광 방출부 및 광 수신부를 포함하는 적어도 하나의 센서; 적어도 하나의 명령어(instruction)를 포함하는 프로그램을 저장하는 저장부; 및 저장부에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써, 획득된 제1 안구 데이터에 기초하여 안구 모델을 획득할 수 있다. 본 개시의 일 실시예에 따른 시선 추적 장치는, 광 방출부 및 광 수신부를 포함하는 적어도 하나의 센서; 적어도 하나의 명령어(instruction)를 포함하는 프로그램을 저장하는 저장부; 및 저장부에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써, 획득된 안구 모델에 기초하여 제2 센싱 영역을 결정을 결정할 수 있다.
한편, 본 개시의 일 실시예에 따르면, 전술한 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 개시의 특정 실시예 및 다른 측면, 특징 및 이점은 첨부된 도면과 함께 취해진 다음의 설명으로부터 더욱 명백해질 것이다.
도 1은 본 개시의 일 실시예에 따른 시선 추적 장치의 예시를 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 시선 추적 장치의 세부 블록도이다.
도 3a 내지 도 3c는 스캐너 기반의 시선 추적 센서가 사용자의 눈을 센싱하는 방법을 설명하기 위한 도면이다.
도 4a 및 도 4b는 스캐너 기반 시선 추적 센서의 센싱데이터를 이용하여 동공 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 5a 및 도 5b는 스캐너 기반의 시선 추적 센서가 사용자의 안구를 센싱하여 눈 특징점 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 6a 및 도 6b는 카메라 기반의 시선 추적 센서가 사용자의 안구를 센싱하는 방법을 설명하기 위한 도면이다.
도 7a 내지 도 7c는 카메라 기반의 시선 추적 센서가 사용자의 안구를 센싱하여 동공 정보 및 눈 특징점 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 8a 및 도 8b는 본 개시의 일 실시예에 따른 시선 추적 방법에서, 센싱 영역을 결정하는 방법을 설명하기 위한 도면이다.
도 9a 내지 도 9c는 본 개시의 일 실시예에 따른 시선 추적 방법에서, 시선 추적에 실패한 경우를 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 시선 추적 방법에서, 스캔 영역을 결정하는 방법을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 시선 추적을 위한 센싱 영역을 결정하는 방법의 흐름도이다.
도 12는 사람의 안구의 구조 및 간략화된 안구 구조를 나타낸다.
도 13은 본 개시의 일 실시예에 따른 안구 모델 및 안구 모델을 업데이트하고 센싱 영역을 결정하는 방법을 설명하기 위한 도면이다.
도 14는 본 개시의 일 실시예에 따른 안구 모델을 획득하고 시선 추적을 위한 센싱 영역을 결정하는 알고리즘의 예시를 나타낸다.
도 15는 본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 나타낸다.
도 16은 본 개시의 일 실시예에 따른 시선 추적 센서가, 시선 추적에 실패한 경우 센싱 영역을 단계적으로 확장하는 방법을 설명하기 위한 도면이다.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 개시의 실시예를 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에서, '증강 현실(AR: Augmented Reality)'은 현실 세계의 물리적 환경 공간 내에 가상 이미지를 함께 보여주거나 현실 객체와 가상 이미지를 함께 보여주는 것을 의미한다.
아울러, '증강 현실 장치(Augmented Reality Device)'라 함은 '증강 현실(Augmented Reality)'을 표현할 수 있는 장치로서, 일반적으로 사용자가 안면부(顔面部)에 착용하는 안경 형상의 증강 현실 안경 장치(Augmented Reality Glasses) 뿐만 아니라, 두부(頭部)에 착용하는 헤드 마운트 디스플레이 장치 (HMD: Head Mounted Display Apparatus)나, 증강 현실 헬멧(Augmented Reality Helmet) 등을 포괄한다.
한편, '현실 장면(real scene)'이란 사용자가 증강 현실 장치를 통해서 보는 현실 세계의 장면으로서, 현실 객체(real world object)를 포함할 수 있다. 또한, '가상 이미지(virtual image)'는 광학 엔진을 통해 생성되는 이미지로 정적 이미지와 동적 이미지를 모두 포함할 수 있다. 이러한 가상 이미지는 현실 장면과 함께 관측되며, 현실 장면 속의 현실 객체에 대한 정보 또는 증강 현실 장치의 동작에 대한 정보나 제어 메뉴 등을 나타내는 이미지일 수 있다.
따라서, 일반적인 증강 현실 장치는 광원에서 생성된 광으로 구성되는 가상 이미지를 생성하기 위한 광학 엔진과 광학 엔진에서 생성된 가상 이미지를 사용자의 눈까지 안내하고 현실 세계의 장면도 함께 볼 수 있도록 투명한 재질로 형성된 웨이브 가이드를 구비한다. 전술한 바와 같이, 증강 현실 장치는 현실 세계의 장면도 함께 관측할 수 있어야 하므로 광학 엔진에서 생성된 광을 웨이브 가이드를 통해 사용자의 눈까지 안내하기 위해서는 기본적으로 직진성을 가지는 광의 경로를 변경하기 위한 광학 소자(Optical element)가 필요하다. 이 때, 미러 등에 의한 반사를 이용하여 광 경로를 변경할 수도 있고, DOE(Diffractive optical element), HOE(Holographic optical element) 등과 같은 회절 소자에 의한 회절을 통해 광 경로를 변경할 수도 있으나 이에 한정되는 것은 아니다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 본 개시의 일 실시예에 따른 시선 추적 장치의 예시를 나타내는 도면이다.
본 개시의 일 실시예에 따른 시선 추적 장치 1000는 증강 현실 장치일 수 있으나 이에 제한되는 것은 아니며, 시선 추적 센서를 포함하고 시선 추적 기능을 수행하는 모든 장치를 포함할 수 있다.
도 1을 참조하면, 시선 추적 장치 1000는 안경형 디스플레이 장치로서 사용자가 착용할 수 있도록 구성된 안경형 몸체를 포함할 수 있다. 다만, 이에 한정되는 것은 아니며, 다른 실시예에 따르면 시선 추적 장치 1000는 HMD (Head Mounted Device)와 같은 다른 형태의 웨어러블 장치일 수 있다.
안경형 몸체는 프레임(또는 림, rim) 110 및 지지부 190를 포함할 수 있으며, 지지부 190는 프레임 110으로부터 연장되어 사용자의 머리에 증강 현실 장치를 안착시키는데 이용될 수 있다. 지지부 190는 템플(190L 및 190R) 및 코 지지부를 포함할 수 있다. 템플(190L 및 190R)은 프레임 110으로부터 연장되어 안경형 몸체의 측면부에서 사용자의 머리에 시선 추적 장치 1000를 고정하는데 이용될 수 있다. 코 지지부(미도시)는 프레임 110으로부터 연장되어 사용자의 코 부분에 시선 추적 장치 1000를 안착시키는데 이용될 수 있으며, 예를 들어, 코 다리 및 안경 코를 포함할 수 있으나, 이에 제한되지 않는다.
또한, 프레임 110에는 렌즈부 1350 및 웨이브 가이드 1320가 위치할 수 있다. 렌즈부 1350는 좌안용 렌즈부 1350L 및 우안용 렌즈부 1350R를 포함할 수 있다. 또한, 웨이브 가이드 1320는 투사된 광을 입력 영역에서 입력받고 입력된 광의 적어도 일부를 출력 영역에서 출력하도록 구성될 수 있다. 이러한 웨이브 가이드 1320는 좌안용 웨이브 가이드 1320L 및 우안용 웨이브 가이드 1320R를 포함할 수 있다.
좌안용 렌즈부 1350L 및 좌안용 웨이브 가이드 1320L가 사용자의 좌안에 대응되는 위치에 배치될 수 있으며, 우안용 렌즈부 1350R 및 우안용 웨이브 가이드 1320R가 사용자의 우안에 대응되는 위치에 배치될 수 있다. 예를 들어, 좌안용 렌즈부 1350L와 좌안용 웨이브 가이드 1320L가 서로 부착되거나, 우안용 가변 초점 렌즈부 1350R 및 우안용 웨이브 가이드 1320R가 서로 부착될 수 있으나, 이에 제한되지 않는다.
또한, 화상을 담은 디스플레이 광을 투사하는 프로젝터의 광학 엔진 1310은 좌안용 광학 엔진 1310L 및 우안용 광학 엔진 1310R을 포함할 수 있다. 좌안용 광학 엔진 1310L 및 우안용 광학 엔진 1310R은 시선 추적 장치 1000의 양 측면에 위치할 수 있다. 또는 하나의 광학 엔진(1310)이 시선 추적 장치 1000의 코 지지부 192 주변 중앙 부분에 포함될 수도 있다. 광학 엔진 120으로부터 출사된 광은 웨이브 가이드 1320를 통해 표시될 수 있다.
시선 검출 모듈 1500은 시선 추적 장치 1000의 렌즈의 테두리(rim, 림) 부분에 배치될 수 있으며, 예를 들어, 사용자의 눈을 향해 광을 제공하는 광 방출부 및 제공된 광을 수신하는 광 수신부를 포함할 수 있다. 광 방출부는 광의 방향을 미리 정해진 시간 간격으로 변경하면서 사용자의 눈 영역을 향해 광을 제공 할 수 있다. 예를 들어, 광원 모듈로부터 제공되는 광(예컨대, 적외선(IR) 광)은, 특정 패턴으로 사용자의 눈을 향해 투사될 수 있다. 본 개시의 일 실시예에 따르면, 광 패턴은 미리 정해진 패턴(예컨대, 종 방향의 직선 또는 횡 방향의 직선)일 수 있다. 시선 검출 모듈 1500은 광 센서를 이용하여, 사용자의 눈 영역에서 반사되는 광량의 변화량에 기초하여 사용자 눈의 각막 영역, 동공 영역을 식별함으로써 사용자의 시선을 추적할 수 있다.
도 2는 본 개시의 일 실시예에 따른 시선 추적 장치의 블록도이다.
본 개시의 일 실시예에 따른 시선 추적 장치 1000는 증강 현실 장치일 수 있으나 이에 제한되는 것은 아니며, 시선 추적 센서를 포함하고 시선 추적 기능을 수행하는 모든 장치를 의미할 수 있다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 시선 추적 장치 1000는 사용자 입력부 1100, 마이크 1200, 디스플레이부 1300, 카메라 모듈 1400, 시선 검출 모듈 1500, 통신 인터페이스 1600, 저장부 1700 및 프로세서 1800를 포함할 수 있다. 또한, 시선 검출 모듈 1500은 시선 추적 센서 1510를 포함할 수 있으며, 시선 추적 센서 1510는 광 방출부 1510 및 광 수신부 1520를 포함할 수 있다. 일 실시예에 따르면, 카메라 모듈 1400, 시선 검출 모듈 1500 등의 모듈은 하나 이상의 하드웨어 구성요소를 포함할 수 있다. 예를 들어, 카메라 모듈 1400은 이미지를 촬영하기 위한 하나 이상의 카메라 또는 하나 이상의 센서를 포함할 수 있다. 예를 들어, 시선 검출 모듈 1500 은 하나 이상의 센서를 포함할 수 있다.
사용자 입력부 1100는, 사용자가 시선 추적 장치 1000를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부 1100는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠 또는 조그 스위치 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다.
마이크 1200는, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크 1200는 외부 디바이스 또는 화자로부터의 음향 신호를 수신할 수 있다. 마이크 1200를 통해 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘이 이용될 수 있다. 마이크 1200는 시선 추적 장치 1000를 제어하기 위한 사용자의 음성 입력을 수신할 수 있다.
디스플레이부 1300는, 시선 추적 장치 1000에서 처리되는 정보를 표시 출력한다. 예를 들어, 디스플레이부 1300는, 시선 추적 장치 1000의 주변을 촬영하기 위한 사용자 인터페이스 및 시선 추적 장치 1000 주변의 촬영된 이미지를 기반으로 제공되는 서비스에 관련된 정보를 디스플레이할 수 있다.
일 실시 예에 의하면, 디스플레이부 1300는 AR(Augmented Reality) 영상을 제공할 수 있다. 도 1에서와 같이, 광학 엔진 1310 및 웨이브 가이드 1320를 포함할 수 있다. 웨이브 가이드 1320는 사용자가 시선 추적 장치 1000를 착용할 때, 배면의 일부 영역이 보이는 투명한 소재로 구성될 수 있다. 웨이브 가이드 1320는 광이 내부에서 반사되면서 전파될 수 있는 투명 재질의 단층 혹은 다층 구조의 평판으로 구성될 수 있다. 웨이브 가이드 1320는 광학 엔진 1310의 출사면에 마주하여 광학 엔진 1310으로부터 투사된 가상 이미지의 광을 입력 받을 수 있다. 여기서, 투명 재질이라 함은, 광이 통과될 수 있는 재질이라는 의미로, 투명도가 100%가 아닐 수 있으며, 소정의 색상을 지닐 수도 있다. 일 실시 예에서, 웨이브 가이드 1320는 투명 재질로 형성됨에 따라, 사용자는 디스플레이부 1300를 통해 가상 이미지의 가상 객체를 볼 수 있을 뿐만 아니라, 외부 실제 장면(scene)을 볼 수도 있으므로, 웨이브 가이드 1320는 시스루 디스플레이(see through display)로 지칭될 수 있다. 디스플레이부 1300는 웨이브 가이드 1320를 통해 가상 이미지의 가상 객체를 출력함으로써, 증강 현실 영상을 제공할 수 있다. 시선 추적 장치 1000가 안경 형태의 장치인 경우에, 디스플레이부 1300는 좌측 디스플레이부 및 우측 디스플레이부를 포함할 수 있다.
카메라 모듈 1400은 시선 추적 장치 1000의 주변을 촬영할 수 있다. 본 개시의 일 실시예에 따르면, 카메라 모듈 1400은 카메라 또는 이미지 센서를 포함할 수 있으나, 이에 제한되는 것은 아니다. 카메라 모듈 1400은 촬영 기능을 요구하는 애플리케이션이 실행되는 경우에 이미지 센서를 통해 정지 영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 프로세서 1800또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다. 카메라 모듈 1400은, 예를 들어, 회전 가능한 RGB 카메라 모듈 또는 복수의 뎁스 카메라 모듈 중 적어도 하나를 포함할 수 있으나, 이에 제한되지 않는다.
시선 검출 모듈 1500은 시선 추적 장치 1000를 착용한 사용자의 시선을 검출하고, 추적할 수 있다. 시선 검출 모듈 1500은 사용자의 눈을 향하는 방향으로 설치될 수 있으며, 사용자의 좌안의 시선 방향 및 사용자의 우안의 시선 방향을 검출할 수 있다. 사용자의 시선 방향을 검출하는 것은, 사용자의 시선에 관련된 시선 정보를 획득하는 동작을 포함할 수 있다.
시선 검출 모듈 1500은 사용자의 시선을 검출하기 위하여 IR 광을 방출하고, IR 광을 수신할 수 있는 시선 추적 센서 1510를 포함할 수 있다. 시선 추적 센서 1510는 IR 광을 방출하는 광 방출부 1520 및 IR 광을 수신하는 광 수신부 1530를 포함하며, 시선 추적 장치 1000를 착용한 사용자의 안구 및 시선에 관련된 정보를 포함하는 센서 데이터를 획득할 수 있다. 사용자의 안구 및 시선에 관련된 정보는, 사용자 안구의 반짝임 특징점(glint feature point)의 위치에 대한 정보, 동공(pupil)의 크기와 위치에 대한 정보, 홍채(iris)의 크기와 위치, 각막(cornea)의 크기와 위치에 대한 정보, 및 안구의 크기와 위치에 대한 정보 중 적어도 하나를 포함할 수 있으나 이에 제한되는 것은 아니다. 센서 데이터는 광 방출부 1520에서 방출된 IR 광이 사용자의 눈에 반사되어 광 수신부 1530에 의해 수신되는 로(raw) 데이터를 의미하며, 센서 데이터를 분석하여 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있다.
시선 검출 모듈 1500의 광 방출부 1520는 IR 광이 사용자의 눈을 향할 수 있도록 IR 광을 방출할 수 있다. 또한, 사용자의 눈으로부터 반사된 IR 광이 시선 검출 모듈 1500의 광 수신부 1530에 의해 수신될 수 있다. 광 수신부 1530는 시선 추적 장치 1000에서 사용자의 눈으로부터 반사된 IR 광을 수신할 수 있는 위치에 배치될 수 있다.
시선 검출 모듈 1500의 광 방출부 1520 및 광 수신부 1530는 시선 추적 장치 1000의 지지부 190에서, 지지부 190와 사용자의 눈 사이의 위치인 지지부 190의 내측면 부분에 배치될 수 있다. 이러한 경우, 시선 추적 장치 1000는 광 반사부(미도시)를 더 포함할 수 있으며, 광 방출부 1520 및 광 수신부 1530는 시선 추적 장치 1000의 지지부 190에서 광 반사부(미도시)를 향하도록 배치될 수 있다. 광 방출부 1512 및 광 수신부 1512는, 예를 들어, 도 1의 템플 및 코 지지부와 같이, 시선 추적 장치 1000를 사용자의 얼굴에 지지시키는 도 1의 지지부 190에 위치할 수 있다.
광 반사부(미도시)는 광 방출부 1511로부터 방출된 광을 반사할 수 있다. 광 반사부(미도시) 및 웨이브 가이드 1320는 사용자의 눈을 대향하는 위치에 배치될 수 있으며, 광 반사부(미도시) 및 웨이브 가이드 1320가 서로 부착될 수 있다. 광 방출부 1511로부터 방출된 IR 광은 광 반사부(미도시)에 의해 반사되어 사용자의 눈을 향할 수 있으며, 사용자의 눈으로부터 다시 반사된 IR 광이 광 반사부(미도시)에 의해 반사되어 광 수신부 1512를 향할 수 있다. 다만, 이러한 경우라도 본 명세서에서는 설명의 편의를 위해, 광 반사부가 개입되는 광 반사에 대한 설명을 생략하고, 광 방출부 1511는 사용자의 눈으로 IR 광을 방출하고, 광 방출부 1512로부터 방출된 IR 광이 사용자의 눈에 반사되어 광 수신부 1512에 수신되는 것으로 설명할 수 있다. 예를 들어, 광 방출부 1520는 IR 광을 방출하는 IR LED이며, 광 수신부 1530는 IR 광을 촬영하는 IR 카메라일 수 있다. 이 경우, IR 카메라는 사용자의 눈에 의해 반사되는 IR 광을 이용하여 사용자의 눈을 촬영할 수 있다. 광 방출부 1520가 IR LED이며 광 수신부 1530가 IR 카메라인 경우에, 광 방출부 1520는 면광(planar light)의 IR 광을 사용자의 눈을 향하여 방출하며, 광 수신부 1520는 사용자의 눈으로부터 반사된 면광의 IR광을 수신할 수 있다.
광 방출부 1520는 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 면광의 IR 광을 방출할 수 있다. 센싱 영역은, 사용자 눈에 반사되어 광 수신부 1530로 수신된 IR 광으로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
또는, 예를 들어, 광 방출부 1520는 IR 광을 방출하는 IR 스캐너이며 광 수신부 1530는 IR 광을 검출하는 IR 디텍터일 수 있다. 이 경우, IR 스캐너는 사용자의 눈을 스캐닝하기 위한 IR 광이 사용자의 눈을 향하도록 IR 광을 방출할 수 있으며, IR 디텍터는 사용자의 눈으로부터 반사되는 IR 광을 검출할 수 있다. 광 방출부 1520가 IR 광을 방출하는 IR 스캐너이고 광 수신부 1530가 IR 광을 검출하는 IR 디텍터이면, 광 방출부 1520는 선 형태의 선광(line light)들을 방출할 수 있다. 광 방출부 1520는 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 선광의 IR 광을 방출할 수 있다. 센싱 영역은, 사용자 눈에 반사되어 광 수신부 1530로 수신된 IR 광으로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
또는, 예를 들어, 광 방출부 1520가 IR 광을 방출하는 IR 스캐너이고 광 수신부 1530가 IR 광을 검출하는 IR 디텍터이면, 광 방출부 1510는 점 형태의 점광(point light)을 방출할 수 있다. 광 방출부 1520는 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 점광의 IR 광을 방출할 수 있다. 센싱 영역은, 사용자 눈에 반사되어 광 수신부 1530로 수신된 IR 광으로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
이 때, 광 방출부 1520에서 방출하는 IR 광에 의해 커버되는 사용자의 눈의 범위(센싱 영역)가 넓어질수록, 즉 광 방출부 1520에서 광을 방출하는 영역이 넓어질수록, 외부 요인(예를 들어, 외부 광에 의한 노이즈 또는 사용자 눈 깜빡임에 의한 동공 가려짐)이 발생하더라도 사용자의 시선 추적에 성공할 가능성이 높아진다. 반면, 광 방출부(1512)에서 방출하는 IR 광에 의해 커버되는 사용자의 눈의 범위(센싱 영역)가 좁아질수록, 즉 광 방출부 1520에서 광을 방출하는 영역이 좁아질수록, 사용자의 시선 추적 정확도가 높아지고 시선 추적 속도가 빨라질 수 있다. 따라서, 외부 요인에 강건(robust)하면서 시선 추적 속도 및 정확도가 보장되는 센싱 영역을 결정하는 것이 필요하다.
센싱 영역을 결정하는 구체적인 방법은 도 12 내지 도 15를 참조하여 후술한다.
광 방출부 1520가 IR 스캐너이며 광 수신부 1530가 IR 디텍터인 경우에, 광 방출부 1520는 점광 또는 선광의 IR 광을 사용자의 눈을 향하여 방출하며, 광 수신부 1530는 사용자의 눈으로부터 반사된 점광 또는 선광의 IR광을 수신할 수 있다. 이 경우, 광 방출부 1520는 점광 또는 선광의 IR광이 사용자의 눈이 위치한 공간을 커버할 수 있도록 광 방출부 1520의 광 방출 방향을 이동하면서 IR광을 순차적으로 방출할 수 있다. IR 스캐너는 IR LED와 IR LED에서 방출되는 IR 광의 방향을 제어하여 반사할 수 있는 MEMS(Micro-Electro Mechanical Systems, 초소형 정밀기계 기술) 미러로 구성되는 것이 일반적이나, 이하에서는 IR 스캐너로 통칭하여 설명한다. 또한, IR 디텍터도 여러 개의 포토 다이오드가 광 검출이 필요한 부분에 설치되는 것이 일반적이나, 이하에서는 IR 디텍터 또는 디텍터로 설명한다.
시선 검출 모듈 1500은 센서 데이터를 프로세서 1800에게 제공할 수 있으며, 프로세서 1800는 센서 데이터에 기초하여 사용자의 시선 정보를 획득할 수 있다. 센서 데이터는 시선 검출 모듈 1500의 시선 추적 센서 1510 에 의해 획득되는 데이터로서, 광 방출부 1520로부터 방출된 IR 광의 종류(예를 들어, 점광, 선광, 면광), 광 방출부 1520로부터 방출된 IR 광의 특성, 광 방출부 1520로부터 방출된 IR 광의 방출 영역에 관한 데이터, 및 광 수신부 1530로부터 수신된 IR 광의 특성을 나타내는 데이터를 포함할 수 있다.
또한, 사용자의 시선(eye gaze) 정보는 사용자의 시선에 관련된 정보로서, 센서 데이터를 분석함으로써 생성될 수 있으며, 예를 들어, 사용자의 동공의 위치, 동공의 중심점의 위치, 사용자의 홍채의 위치, 사용자의 눈의 중심, 사용자의 눈의 반짝임 특징점의 위치, 사용자의 응시점, 사용자의 시선 방향 등에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다. 사용자의 시선 방향은, 예를 들어, 사용자의 눈의 중심으로부터 사용자가 응시하는 응시점을 향하는 시선의 방향일 수 있다. 예를 들어, 사용자의 시선 방향은, 사용자의 좌측 눈의 중심으로부터 응시점을 향하는 벡터 값 및 사용자의 우측 눈의 중심으로부터 응시점을 향하는 벡터 값에 의해 나타내어질 수 있으나, 이에 제한되지 않는다.
일 실시 예에 따라, 시선 검출 모듈 1500은 미리 정해진 시간 간격으로 시선 추적 장치 1000를 착용 중인 사용자의 안구 및 시선에 관련된 정보를 포함하는 센서 데이터를 검출할 수 있다.
통신 인터페이스 1600는 시선 추적 장치 1000에 관련된 서비스를 제공 받기 위한 데이터를 외부 디바이스(미도시) 및 서버(미도시)와 송수신할 수 있다.
저장부 1700는 후술할 프로세서 1800에 의해 실행될 프로그램을 저장할 수 있고, 시선 추적 장치 1000로 입력되거나 시선 추적 장치 1000로부터 출력되는 데이터를 저장할 수 있다. 본 개시의 일 실시예예 따르면, 저장부 1700는 시선 추적 바ㅇ법을 수행하기 위한 하나 또는 그 이상의 인스트럭션 또는 프로그램을 저장할 수 있다.
저장부 1700는 내장 메모리(Internal Memory)(미도시) 및 외장 메모리(External Memory)(미도시) 중 적어도 하나를 포함할 수 있다. 내장 메모리는, 예를 들어, 휘발성 메모리(예를 들면, DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous Dynamic RAM) 등), 비휘발성 메모리(예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM 등), 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따르면, 프로세서 1800는 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 프로세서 1800는 다른 구성요소로부터 수신하거나 생성된 데이터를 비휘발성 메모리에 보존할 수 있다. 외장 메모리는, 예를 들어, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 및 Memory Stick 중 적어도 하나를 포함할 수 있다.
저장부 1700에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, 광 조사 모듈 1710, 광 수신 모듈 1720, 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈 1731, 시선 판단 모듈 1740, 3D 안구 모델 1741 및 센싱 영역 결정 모듈 1750을 포함할 수 있다. 예를 들어, 시선 검출 모듈 1500에 메모리(미도시)가 포함될 수 있으며, 이 경우, 시선 검출 모듈 1500에 포함된 메모리(미도시)에 광 조사 모듈 1710 및 광 수신 모듈 1720이 펌웨어(firmware)로 저장될 수도 있다.
프로세서 1800는 시선 추적 장치 1000의 전반적인 동작을 제어한다. 예를 들어, 프로세서 1800는, 저장부 1700에 저장된 프로그램들을 실행함으로써, 사용자 입력부 1100, 마이크 1200, 디스플레이부 1300, 카메라 모듈 1400, 시선 검출 모듈 1500, 통신 인터페이스 1600 및 저장부 1700 등을 전반적으로 제어할 수 있다. 일 실시예에 따르면, 프로세서 1800는 CPU(Central Processing Unit), AP(Application Processor) 등과 같은 범용 프로세서일 수도 있고, GPU (Graphics Processing Unit), VPU(Visual Processing Unit)과 같은 그래픽 전용 처리 장치일 수도 있다. 프로세서 1800는 명령을 실행하기 위해 다중 코어를 포함할 수 있다.
프로세서 1800는 저장부 1700에 저장된 광 조사 모듈 1710, 광 수신 모듈 1720, 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈 1731, 시선 판단 모듈 1740, 3D 안구 모델 1741, 및 센싱 영역 결정 모듈 1750을 실행함으로써, 사용자의 응시점 및 시선 방향을 판단할 수 있다.
일 실시예에 따르면, 시선 추적 장치 1000는 복수의 프로세서 1800를 포함할 수 있으며, 광 조사 모듈 1710, 광 수신 모듈 1720, 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈 1731, 시선 판단 모듈 1740, 3D 안구 모델 1741, 및 센싱 영역 결정 모듈 1750은 복수의 프로세서 1800에 의해 실행될 수 있다.
예를 들어, 광 조사 모듈 1710, 광 수신 모듈 1720, 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈1731, 시선 판단 모듈1740, 3D 안구 모델 1741, 및 센싱 영역 결정 모듈1750 중 일부는 제1 프로세서(미도시)에 의해 실행되고, 광 조사 모듈1710, 광 수신 모듈 1720, 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈 1731, 시선 판단 모듈 1740, 3D 안구 모델 1741, 및 센싱 영역 결정 모듈 1750 중 나머지는 제2 프로세서(미도시)에 의해 실행될 수 있으나, 이에 제한되지 않는다.
예를 들어, 시선 검출 모듈 1500은 다른 프로세서(미도시) 및 메모리(미도시)를 포함할 수 있으며, 다른 프로세서(미도시)는 메모리(미도시)에 저장된 광 조사 모듈 1710 및 광 수신 모듈 1720을 실행하고, 프로세서 1800가 저장부 1700에 저장된 안구 특징 검출 모듈 1730, 동공 위치 검출 모듈 1731, 시선 판단 모듈 1740, 3D 안구 모델 1741 및 센싱 영역 결정 모듈 1750을 실행할 수 있다.
프로세서 1800는 저장부 1700에 저장된 광 조사 모듈 1710을 실행함으로써, 광 방출부 1520가 사용자의 눈을 향하여 IR 광을 방출하도록 할 수 있다. 프로세서 1800는 광 조사 모듈 1710을 실행함으로써 광 방출부 1520를 제어할 수 있으며, 프로세서 1800에 의해 제어되는 광 방출부 1520는 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 IR 광을 방출할 수 있다. 센싱 영역은, 사용자 눈에 반사되어 광 수신부 1530로 수신된 IR 광으로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
전술한 바와 같이, 광 방출부 1520에서 방출하는 IR 광에 의해 커버되는 사용자의 눈의 범위(센싱 영역)가 넓어질수록, 즉 광 방출부 1520에서 광을 방출하는 영역이 넓어질수록, 외부 요인(예를 들어, 외부 광에 의한 노이즈 또는 사용자 눈 깜빡임에 의한 동공 가려짐)이 발생하더라도 사용자의 시선 추적에 성공할 가능성이 높아진다. 반면, 광 방출부 1520에서 방출하는 IR 광에 의해 커버되는 사용자의 눈의 범위(센싱 영역)가 좁아질수록, 즉 광 방출부 1520에서 광을 방출하는 영역이 좁아질수록, 사용자의 시선 추적 정확도가 높아지고 시선 추적 속도가 빨라질 수 있다. 따라서, 외부 요인에 강건(robust)하면서 시선 추적 속도 및 정확도가 보장되는 센싱 영역을 결정하는 것이 필요하다.
본 개시의 일 실시예에 따라 센싱 영역을 결정하는 구체적인 방법은 도 12 내지 도 15를 참고하여 후술한다.
예를 들어, 광 수신부 1530가 IR 카메라인 경우에 광 방출부 1520는 IR LED일 수 있으며, 프로세서 1800는, IR 카메라가 사용자의 눈을 촬영할 수 있도록 하기 위하여, IR LED로부터 방출된 IR 광이 사용자의 눈을 포함하는 영역에 조사되도록 IR LED를 제어할 수 있다. 예를 들어, IR LED로부터 방출된 광이 사용자의 눈을 포함하는 영역에 조사되도록 하기 위하여, 프로세서 1800는 IR LED로부터 방출되는 IR광의 조사 방향을 제어하고, IR LED에 전원을 인가함으로써 IR LED로부터의 IR 광의 방출을 제어할 수 있다.
일 실시예에 따르면, 예를 들어, IR 카메라가 사용자의 눈의 전체 영역을 촬영할 수 있도록, IR 카메라 및 IR LED가 사용자의 눈을 향하여 설치될 수 있으며, 프로세서 1800는 사용자의 눈을 향해 설치된 IR LED를 제어하여 IR 광을 방출할 수 있다.
또는, 예를 들어, 광 수신부 1520가 IR 디텍터인 경우에 광 방출부 1520는 IR 스캐너일 수 있으며, 프로세서 1800는, IR 디텍터가 사용자의 눈을 검출할 수 있도록 하기 위하여, IR 스캐너로부터 방출된 IR 광이 사용자의 눈을 스캐닝하도록 IR 스캐너를 제어할 수 있다. 예를 들어, IR 스캐너로부터 방출된 광이 사용자의 눈을 스캐닝하도록 하기 위하여, 프로세서 1800는 IR 스캐너로부터 방출되는 IR광의 조사 방향 및 범위를 제어하고, IR 스캐너에 전원을 인가함으로써 IR 스캐너로부터의 IR 광의 방출을 제어할 수 있다.
프로세서 1800는 저장부 1700에 저장된 광 수신 모듈 1720을 실행함으로써, 광 수신부 1530가 사용자의 눈으로부터 반사된 광을 수신하도록 할 수 있다. 프로세서 1800는 광 수신 모듈 1720을 실행함으로써 광 수신부 1530를 제어할 수 있으며, 프로세서 1800에 의해 제어되는 광 수신부 1530는 사용자의 눈으로부터 반사된 광을 수신할 수 있다.
예를 들어, 광 방출부 1520가 IR LED인 경우에 광 수신부 1530는 IR 카메라일 수 있으며, 프로세서 1800는, IR 카메라가 사용자의 눈으로부터 반사된 광을 통해 사용자의 눈을 촬영하도록 IR 카메라를 제어할 수 있다.
또는, 예를 들어, 광 방출부 1520가 IR 스캐너인 경우에 광 수신부 1530는 IR 디텍터일 수 있으며, 프로세서 1800는, IR 디텍터가 사용자의 눈을 검출할 수 있도록 하기 위하여, 사용자의 눈으로부터 반사된 IR 광을 검출하도록 IR 디텍터를 제어할 수 있다.
프로세서 1800는 저장부 1700에 저장된 안구 특징 검출 모듈 1730을 실행함으로써, 사용자의 안구 및 시선에 관련된 특징들을 검출할 수 있다.
안구 특징 검출 모듈 1730은 동공 위치 검출 모듈 1731을 포함할 수 있다. 프로세서 1800는 저장부 1700에 저장된 동공 위치 검출 모듈 1731을 실행함으로써, 사용자의 눈의 동공의 위치를 검출할 수 있다. 동공 위치 검출 모듈 1731은 사용자의 눈에서 반사된 IR 광에 기초하여, 사용자의 눈의 동공의 위치를 식별할 수 있다. 일 실시예에 따르면, 동공 위치 검출 모듈 1731은 사용자의 눈에서 반사되는 IR 광을 기반으로 사용자의 한쪽 눈의 동공 위치를 식별할 수 있다. 다른 실시예에 따르면, 동공 위치 검출 모듈 1731은 사용자의 눈에서 반사되는 IR 광을 기반으로 사용자의 양안 동공 위치를 식별할 수 있다.
예를 들어, 광 수신부 1530가 IR 카메라인 경우, 동공 위치 검출 모듈 1731은 IR 카메라에 의해 촬영된 이미지로부터, 이미지 내의 사용자의 눈의 동공의 위치를 식별할 수 있다. 또는, 예를 들어, 광 수신부 1530가 IR 디텍터인 경우, 동공 위치 검출 모듈1731은 IR 디텍터에 의해 순차적으로 획득되는 IR 광을 분석함으로써, 사용자의 눈의 동공의 위치를 산출할 수 있다.
동공 위치 검출 모듈 1731은 사용자의 눈의 동공의 중심점을 식별함으로써, 사용자의 눈의 동공의 위치를 식별할 수 있다.
예를 들어, 프로세서 1800는 안구 특징 검출 모듈 1730을 실행함으로써, 사용자의 눈의 동공의 특징점(pupil feature point)의 위치 및 눈의 반짝임 특징점(glint feature point)의 위치를 검출할 수 있다. 동공의 특징점은, 예를 들어, 동공의 중심점일 수 있으며, 눈의 반짝임 특징점은 눈의 검출된 영역 중에서 소정 수치 이상의 밝기를 가지는 부분일 수 있다. 동공의 특징점의 위치 및 눈의 반짝임 특징점의 위치는, 예를 들어, 광 수신부 1530의 좌표계에서 위치를 나타내는 좌표 값에 의해 식별될 수 있다. 예를 들어, 광 수신부 1530의 좌표계는 IR 카메라의 좌표계 또는 IR 디텍터의 좌표계일 수 있으며, 광 수신부 1530의 좌표계에서의 좌표 값은 2D 좌표 값일 수 있다.
프로세서 1800는 광 수신부 1530에 의해 수신된 광을 분석함으로써 사용자의 안구 및 시선에 관련된 특징들을 검출할 수 있다. 예를 들어, 광 수신부 1530가 IR 카메라인 경우에, 프로세서 1800는 IR 카메라에 의해 촬영된 이미지에서 동공의 특징점의 위치 및 눈의 반짝임 특징점의 위치를 식별할 수 있다. 또는, 예를 들어, 광 수신부 1530가 IR 디텍터인 경우에 프로세서 1800는 IR 디텍터에 의해 검출된 IR 광을 분석함으로써, 동공의 특징점의 위치 및 눈의 반짝임 특징점의 위치를 식별할 수 있다.
또한, 프로세서 1800는 광 수신부 1530에 의해 수신된 광을 분석함으로써 동공의 특징점의 위치를 나타내는 좌표 값 및 눈의 반짝임 특징점의 위치를 나타내는 좌표 값을 획득할 수 있다. 예를 들어, 광 수신부 1530가 IR 카메라인 경우에 프로세서 1800는 IR 카메라의 좌표계에서, 동공의 특징점의 좌표 값 및 눈의 반짝임 특징점의 좌표 값을 획득할 수 있다. IR 카메라의 좌표계는 동공의 특징점 및 눈의 반짝임 특징점의 위치를 나타내기 위하여 이용될 수 있으며, 예를 들어, IR 카메라에 의해 촬영된 이미지의 픽셀들에 대응되는 IR 카메라의 좌표계 상의 좌표 값들이 미리 설정될 수 있다. 또한, IR 카메라를 통하여 수신된 IR 광의 속성(예를 들어, 밝기)에 기초하여, 눈의 특징점에 대응되는 좌표 값이 식별될 수 있다.
예를 들어, 광 수신부 1530가 IR 카메라인 경우에, 프로세서 1800는 IR 카메라에 의해 촬영된 이미지에서 동공의 중심점의 위치를 식별할 수 있다. 프로세서 1800는 복수의 포토 다이오드를 포함하는 IR 카메라의 이미지 센서를 통해 수신되는 IR 광의 밝기를 식별하고, IR 카메라에 의해 촬영된 이미지의 픽셀들 중에서 동공을 나타내는 IR 광을 수신한 적어도 하나의 픽셀을 식별함으로써 동공의 중심점의 위치를 식별할 수 있다. 예를 들어, IR 카메라에 의해 촬영된 이미지 내의 픽셀들의 위치들이 IR 카메라의 좌표계를 통해 식별될 수 있으며, 동공의 중심점의 위치는, 동공의 중심점에 대응되는 적어도 하나의 픽셀의 위치 값으로서, IR 카메라의 좌표계에서의 좌표 값을 가질 수 있다.
예를 들어, 프로세서 1800는 눈의 반짝임 특징 점을 식별하기 위하여, IR 카메라에 의해 촬영된 이미지에서 가장 밝은 점의 위치를 식별할 수 있다. 프로세서 1800는 복수의 포토 다이오드를 포함하는 IR 카메라의 이미지 센서를 통해 수신되는 IR 광의 밝기를 식별하고, IR 카메라에 의해 촬영된 이미지의 픽셀들 중에서 소정 기준 이상의 밝은 IR 광에 대응되는 적어도 하나의 픽셀을 식별함으로써 눈의 반짝임 특징점의 위치를 식별할 수 있다. 예를 들어, 프로세서 1800는 IR 카메라에 의해 촬영된 이미지의 픽셀들 중에서 가장 밝은 IR광에 대응되는 픽셀을 식별함으로써 눈의 반짝임 특징점의 위치를 식별할 수 있다. 예를 들어, IR 카메라에 의해 촬영된 이미지 내의 픽셀들의 위치들이 IR 카메라의 좌표계를 통해 식별될 수 있으며, 눈의 반짝임 특징점의 위치는, 눈의 반짝임 특징점에 대응되는 픽셀의 위치 값으로서, IR 카메라의 좌표계에서의 좌표 값을 가질 수 있다.
또는, 예를 들어, 광 수신부 1530가 IR 디텍터인 경우에, 프로세서 1800는 IR 디텍터의 좌표계에서 동공의 특징점의 좌표 값 및 눈의 반짝임 특징점의 좌표 값을 산출할 수 있다.
광 방출부 1520가 IR 스캐너인 경우에, 프로세서 1800는 IR 스캐너를 제어함으로써 사용자의 눈이 위치한 영역을 스캔하기 위하여 점 광원 또는 선 광원을 사용자의 눈이 위치한 영역을 커버하도록 순차적으로 조사하고, 사용자의 눈으로부터 반사된 광을 IR 디텍터를 통하여 순차적으로 수신할 수 있다. 또한, 프로세서 1800는 IR 디텍터를 통하여 순차적으로 수신된 광의 어레이를 분석함으로써 동공의 특징점 및 눈의 반짝임 특징점을 식별할 수 있다.
IR 디텍터의 좌표계는 동공의 특징점 및 눈의 반짝임 특징점의 위치를 나타내기 위하여 이용될 수 있으며, 예를 들어, IR 디텍터를 통하여 순차적으로 수신된 광의 어레이 내의 광들에 대응되는 IR 디텍터의 좌표계 상의 좌표 값들이 미리 설정될 수 있다. 예를 들어, IR 스캐너의 동작 설정 값에 따라 IR 스캐너로부터 방출된 광들의 조사 방향들, 조사 범위들 및 조사 시각들이 결정되고, IR 스캐너로부터 방출된 광들로부터 광 어레이가 형성될 수 있다. 예를 들어, IR 스캐너로부터 방출된 광들의 조사 방향, 조사 범위 및 조사 시각과, IR 디텍터로부터 수신된 광들의 수신 시각에 기초하여, 광 어레이 내의 광들에 대응되는 IR 디텍터의 좌표계 상의 좌표 값들이 식별될 수 있다. 또한, IR 디텍터를 통하여 순차적으로 수신된 광의 어레이 내의 광들의 속성(예를 들어, 밝기)에 기초하여, 눈의 특징점에 대응되는 광 및 광의 좌표 값들이 식별될 수 있다.
예를 들어, 프로세서 1800는 수신된 광 어레이에서 소정 수치 이하의 밝기를 가지는 광들을 식별함으로써, 식별된 광들에 대응되는 IR 디텍터의 좌표계 상의 좌표 값들에 기초하여 동공의 특징점의 위치를 식별할 수 있다.
예를 들어, 프로세서 1800는 수신된 광 어레이에서 소정 수치 이상의 밝기를 가지는 광을 식별함으로써, 식별된 광에 대응되는 IR 디텍터의 좌표계 상의 좌표 값을 눈의 반짝임 특징점의 좌표 값으로 식별할 수 있다.
또한, 예를 들어, 광 수신부 1530가 IR 디텍터인 경우 동공의 특징점의 좌표 값 및 눈의 반짝임 특징점의 좌표 값은, 후술할 시선 추적 장치 1000의 지지부 190의 틀어짐 정도를 반영하여 보정된 값일 수 있다. 이 경우, 프로세서 1800는 시선 추적 장치 1000의 템플191의 틀어짐 정도 및/또는 코 지지부 192의 틀어짐 정도를 반영하여 보정된 동공의 특징점의 좌표 값 및 눈의 반짝임 특징점의 좌표 값을 산출할 수 있으며, 보정된 좌표 값들이 매핑 함수에 입력될 수 있다.
프로세서 1800는 저장부 1700에 저장된 시선 판단 모듈 1740을 실행함으로써, 사용자의 시선에 관한 정보를 획득할 수 있다.
시선 판단 모듈 1740은 3D 안구 모델 1741을 포함할 수 있다.
프로세서 1800는 시선 판단 모듈 1740을 실행함으로써, 사용자의 눈의 중심의 위치를 산출할 수 있다. 사용자의 눈의 중심은 사용자의 안구의 중심일 수 있다. 프로세서 1800는, 동공 위치 검출 모듈 1731에 의해 획득된 사용자의 눈의 동공의 위치에 기초하여, 사용자의 눈의 중심의 위치를 산출할 수 있다. 예를 들어, 눈의 중심은 안구의 중심일 수 있으며, 눈의 중심의 위치는 현실 공간의 좌표계에서 3D 좌표 값을 가질 수 있다.
프로세서 1800는 시선 판단 모듈 1740을 실행함으로써, 사용자의 응시점의 위치를 산출할 수 있다. 프로세서 1800는 사용자의 응시점의 위치를 산출하기 위하여, 사용자의 눈의 특징들로부터 응시점의 위치를 산출하기 위한 매핑 함수를 미리 생성할 수 있다. 매핑 함수 f는 사용자의 눈의 특징들을 고려하여 사용자의 응시점의 위치(target)를 산출하기 위한 함수로, 응시점의 위치=f(사용자의 눈의 특징들)와 같이 표현될 수 있다. 예를 들어, 응시점의 위치는 현실 공간의 좌표계에서의 3D 좌표 값을 가질 수 있으나, 이에 제한되지 않는다. 예를 들어, 응시점의 위치는 웨이브 가이드 1320의 좌표계에서의 좌표 값을 가질 수도 있으나, 이에 제한되지 않는다.
프로세서 1800는 시선 판단 모듈 1740을 실행함으로써, 사용자의 안구 및 시선에 관련된 특징들을 매핑 함수에 적용하여 사용자의 응시점의 위치를 산출할 수 있다. 또한, 시선 판단 모듈 1740에 의해 산출된 눈의 중심점의 위치 및 사용자의 응시점에 기초하여 사용자의 시선 방향이 결정될 수 있다.
또는, 프로세서 1800는 전술한 매핑 함수를 이용하지 않고 사용자의 응시점을 산출할 수도 있다. 예를 들어, 광 수신부 1530가 IR 카메라인 경우에, 시선 판단 모듈 1740은 소정의 알고리즘을 이용하여 사용자의 시선 방향을 사용자의 눈이 촬영된 이미지로부터 산출할 수 있다. 이 경우, 획득된 시선 방향은 카메라 좌표계에서 사용자의 시선 방향을 나타내는 벡터 값일 수 있다.
사용자의 시선 방향을 획득하기 위하여 이용되는 알고리즘은, 3D 안구 모델 1741을 피팅하기 위한 알고리즘일 수 있다. 3D 안구 모델을 피팅하기 위한 알고리즘은, 사용자의 시선 방향을 나타내는 기준 벡터 값에 대응되는 눈 이미지를 IR 카메라에 의해 촬영된 이미지와 비교함으로써, 사용자의 시선 방향을 나타내는 벡터 값을 획득하기 위한 알고리즘일 수 있다.
3D 안구 모델 1741은 안구 특징 검출 모듈 1730에서 획득한 사용자의 안구 및 시선에 관련된 특징과 동공 위치 검출 모듈 1731에서 획득한 사용자의 눈의 동공의 위치에 기초하여 생성된다.
예를 들어, 프로세서 1800는 시선 판단 모듈 1740을 실행함으로써 안구 특징 검출 모듈1730에서 검출한 사용자의 눈의 동공의 특징점(pupil feature point)의 위치, 눈의 반짝임 특징점(glint feature point)의 위치 및 동공의 위치에 기초하여 사용자의 안구를 3D 모델링 할 수 있다.
또한, 프로세서 1800는 시선 검출 모듈 1500에서 소정의 주기로 검출되는 시선 추적 장치 1000를 착용 중인 사용자의 안구 및 시선에 관련된 정보에 기초하여 3D 안구 모델 1741을 갱신할 수 있다.
시선 판단 모듈 1740이 사용자의 안구 및 시선에 관련된 정보에 기초하여 3D 안구 모델 1741을 갱신하는 방법 및 3D 안구 모델 1741을 이용하여 사용자의 시선 방향을 획득하는 방법은 도 12 내지 도 15에서 보다 상세히 설명하기로 한다.
프로세서 1800는 저장부 1700에 저장된 센싱 영역 결정 모듈 1750을 실행함으로써, 시선 검출 모듈 1500이 시선 검출을 위하여 센싱할 센싱 영역을 결정할 수 있다.
센싱 중심점 및 센싱 범위가 고정되어 있는 경우, 사용자의 안구 회전 또는 시선 추적 장치 1000의 이동에 의한 위치 변화가 발생하면 시선 추적 성능이 열화될 수 있다.
시선 검출 모듈 1500에서 수행되는 시선 검출 과정은 센싱을 통해 사용자의 눈의 위치 및 특징점들에 대한 정보를 획득하여, 시선을 검출 한 후 이후 계속적인 센싱을 통해 사용자의 시선을 추적(tracking)하도록 동작한다.
프로세서 1800는 시선 판단 모듈 1780을 구동하여, 시선 검출 모듈 1500에서 소정의 주기로 검출된, 시선 추적 장치 1000를 착용 중인 사용자의 안구 및 시선에 관련된 데이터에 기초하여 시선 검출을 수행하고, 데이터3D 안구 모델 1741을 갱신한다. 일 실시예에 따르면, 시선 검출 모듈 1500은 미리 정해진 일정한 시간 간격으로 데이터를 검출할 수 있다. 따라서 갱신된 데이터3D 안구 모델 1741에는 사용자의 안구 및 시선 특징점의 변화가 반영되어 있으므로, 프로세서 1800는 센싱 영역 결정 모듈 1750을 구동하여, 시선 검출 모듈 1500의 센서부 1510가 동작할 센싱 영역을 결정할 수 있다.
이하에서, 본 개시의 실시예에 따른 시선 추적 센서는 도 2에 도시된 시선 검출 모듈 1500 또는 시선 추적 센서 1510일 수 있다.
도 3a 내지 도 3c는 스캐너 기반의 시선 추적 센서가 사용자의 눈을 센싱하는 방법을 설명하기 위한 도면이다.
도 3a 및 도 3b는 시선 추적 센서와 사용자의 눈을 측면에서 바라본 모습으로, 도 3을 참조하면 시선 추적 센서는 사용자 눈과 서로 마주보는 형태로 배치되며, 스캐너 기반의 시선 추적 센서는 스캐너 및 적어도 하나의 디텍터를 포함할 수 있다.
도 3a를 참조하면, 사용자의 눈은 겹쳐진 두개의 구로 형상화될 수 있으며, 더 큰 곡률을 가지는 안구(eye ball) 100에 더 작은 곡률을 가지는 각막(cornea) 200이 볼록하게 나와있는 구조로, 각막은 홍채(iris)로 덮여있고 각막의 앞부분에는 빛을 흡수하는 영역인 원모양의 구멍인 동공(pupil) 300이 위치한다.
시선 추적은, 안구 100의 중심점과 동공 300의 중심점을 가로지르는 직선인 gaze vector를 획득하는 것을 의미할 수 있다.
도 3b를 참조하면, 스캐너는 레이저 및 거울을 포함할 수 있고 거울은 각도 조절이 가능한 형태로 구성된다.
광 방출부 1520가 IR 스캐너이며 광 수신부 1530가 IR 디텍터인 경우에, 광 방출부 1520는 점광 또는 선광의 IR 광을 사용자의 눈을 향하여 방출하며, 광 수신부 1530는 사용자의 눈으로부터 반사된 점광 또는 선광의 IR광을 수신할 수 있다. 이 경우, 광 방출부 1520는 점광 또는 선광의 IR광이 사용자의 눈이 위치한 공간을 커버할 수 있도록 광 방출부 1520의 광 방출 방향을 이동하면서 IR광을 순차적으로 방출할 수 있다. IR 스캐너는 IR LED와 IR LED에서 방출되는 IR 광의 방향을 제어하여 반사할 수 있는 MEMS(Micro-Electro Mechanical Systems, 초소형 정밀기계 기술) 미러로 구성되는 것이 일반적이나, 이하에서는 IR 스캐너로 통칭하여 설명한다. 또한, IR 디텍터도 여러 개의 포토 다이오드가 광 검출이 필요한 부분에 설치되는 것이 일반적이나, 이하에서는 IR 디텍터, 또는 디텍터로 설명한다.
도 3c는 시선 추적 센서와 사용자의 눈을 정면에서 바라본 모습으로, 도 3c를 참조하면, IR 스캐너 기반의 시선 추적 센서는 증강 현실 장치 폼팩터의 프레임에 사용자의 안구 방향으로 실장되고, 적어도 하나의 IR 스캐너 및 복수의 IR 디텍터를 포함할 수 있고 복수의 IR 디텍터 중 적어도 하나는 동공 검출을 위해 사용될 수 있다.
IR LED는 MEMS 미러를 향해 레이저(IR 광)를 조사할 수 있고, MEMS 미러에서 반사된 IR 광은 사용자 안구에 반사되어 IR 디텍터들에 수신된다. 이 때, MEMS 미러는 각도 조절이 가능하므로 IR LED에서 조사된 레이저는 사용자 안구에 여러 각도로 입사되고, 디텍터들은 사용자 안구에서 여러 각도로 반사된 IR광을 수신할 수 있다. IR LED는 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 IR 광을 방출할 수 있다. 또는, MEMS 거울은 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 IR광이 조사되도록 IR 광을 방출할 수 있다. 센싱 영역은, 사용자 눈에 반사되어 디텍터로 수신된 IR 광으로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
IR 스캐너 기반 시선 추적 센서의 센서 데이터는, IR 스캐너에서 방출된 IR 광이 사용자의 눈에 반사되어 IR 디텍터에 의해 수신되는 로 데이터를 의미하며, 센서 데이터를 분석하여 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있다.
사용자의 안구 및 시선에 관련된 정보는, 사용자 안구의 반짝임 특징점 (glint feature point)의 위치에 대한 정보, 동공(pupil)의 크기와 위치에 대한 정보, 홍채(iris)의 크기와 위치, 각막(cornea)의 크기와 위치에 대한 정보, 및 안구의 크기와 위치에 대한 정보 중 적어도 하나를 포함할 수 있다.
사용자 안구의 반짝임 특징점은 광이 밝게 반사되는 지점으로 각막에 위치하며 그 개수는 상황(예를 들어, 사용자 눈의 특징, 광원의 위치, 및 외부 광원의 존재여부 등)에 따라 다양하게 결정될 수 있다. 동공은 사용자 안구에 입사되는 빛을 흡수하는 영역이므로, 반사광이 없거나 거의 없는 특징을 갖는다.
도 4a 및 도 4b는 스캐너 기반 시선 추적 센서의 센싱데이터를 이용하여 동공 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 4a 는 스캐너 기반 시선 추적 센서의 x 축 및 y 축 방향 각각에 대한 동공 디텍터 입력을 나타낸다. 도 4a를 참조하면, 동공 디텍터 입력은, 안구의 가장자리에서 큰 값을 가지고, 안구의 중심부분에서 그 값이 작아지는 U자 곡선 형태를 갖는다. 안구의 중심 부분에는 동공이 존재하며, 전술한 바와 같이 동공은 안구에 입사되는 빛을 흡수하는 영역으로 반사광이 거의 없으므로 동공 디텍터 입력이 낮은 반면, 안구의 가장자리 부분은 흰자위가 있어 안구에 입사되는 빛이 대부분 반사되므로 동공 디텍터 입력이 높게 나타난다.
따라서, 동공 디텍터 입력이 높게 유지되다가 제2 임계 밝기(TH2) 보다 낮아지는 위치를 동공의 시작점(Ax 및 Ay) 또는 동공의 끝점(Dx 및 Dy)으로 판단할 수 있다. 또한, 동공 디텍터 입력이 제1 임계 밝기(TH1) 보다 낮아지는 로우 레벨(low-level) 구간인 ([Bx,Cx] 및 [By,Cy]을 동공의 위치 및 범위로 판단할 수 있다.
만일, 사용자가 정면을 바라보지 않고 왼쪽 또는 오른쪽 방향을 바라보고 있다면, 동공 디텍터의 입력은 x축 방향에서 로우 레벨의 위치가 한쪽으로 치우친 찌그러진 형태의 U 자 곡선으로 나타날 수 있다. 반면 사용자가 위쪽 또는 아래쪽 방향을 바라보고 있다면, 동공 디텍터의 입력은 y축 방향에서 로우 레벨의 위치가 한쪽으로 치우친 찌그러진 형태의 U 자 곡선으로 나타날 수 있다. 도 4b는 도 4a에 도시된 실시예에서, 동공의 크기 및 위치, 각막의 크기 및 위치를 나타낸다. 도 4b를 참조하면, 시선 추적 장치 1000는 스캐너 기반 시선 추적 센서의 동공 디텍터 입력에 기초하여 동공의 크기 및 위치, 각막의 크기 및 위치를 식별할 수 있다.
따라서, 동공 디텍터의 입력이 도 4a와 같이 나타나는 경우 x축 방향으로 Bx~Cx의 구간 및 y축 방향으로 By~Cy의 구간 내에 동공이 위치하는 것으로 추정할 수 있다. 이 때, 동공 디텍터의 입력을 분석하면 동공 디텍터의 입력이 급격히 변화하는 구간(Ax~Bx, Cx~Dx, Ay~By, 및 Cy~Dy)이 각막 영역에 해당하므로, 시선 추적 장치는 동공 디텍터 입력의 기울기를 이용하여 각막의 크기를 획득할 수 있다.
동공 및 각막의 영역은 원 또는 타원의 형태를 가지므로, 동공 300은 [Bx,Cx,By,Cy] 사각형 내의 원 또는 타원으로, 각막 200은 [Ax,Dx,Ay,Dy] 사각형 내의 원 또는 타원으로 추정될 수 있다.
도 5a 및 도 5b는 스캐너 기반의 시선 추적 센서가 사용자의 안구를 센싱하여 눈 특징점 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 5a는 스캐너 기반 시선 추적 센서의 x축 및 y축 방향 각각에 대한 디텍터 입력을 나타낸다.
반짝임 특징점은 안구에서 가장 빛나는 점들로, 사용자 안구 중 반짝임 특징점에서 빛이 가장 많이 반사되므로, 안구의 영역 중 반짝임 특징점의 위치 디텍터 입력이 높게 나타난다. 따라서, 시선 추적 장치 1000는 디텍터 입력이 제3 임계 밝기(TH3) 보다 높게 나타나는 구간 중, 디텍터 입력이 피크값을 나타내는 위치를 글린트의 위치로 결정할 수 있다. 반짝임 특징점의 위치 및 개수는 사용자 안구 특징 또는 제3 임계 밝기 설정에 따라 달라질 수 있다.
도 5a를 참조하면, 디텍터 입력은 제3 임계 밝기보다 높은 밝기를 가지는 구간 중 x축 상 P1x, P2x, P3x, 및 P4x에서 피크값을 나타내고, y축 상 P3y, P1y, P4y, 및 P2y에서 피크값을 나타낸다.
도 5b는 도 5a에 도시된 실시예에서, 반짝임 특징점의 위치를 나타낸다. 안구의 x-y 직교 좌표에 디텍터 입력이 높게 나타난 위치를 표시하면 반짝임 특징점은 P1, P2, P3, 및 P4의 4개가 존재하며 그 위치는 각각 도 5b에 표시된 것과 같이, [P1x, P1y], [P2x, P2y], [P3x, P3y], 및 [P4x, P4y]로 식별될 수 있다. 상기 설명과 같이, 시선 추적 장치 1000는 스캐너 기반 시선 추적 센서의 데이터들을 분석함으로써, 동공의 크기 및 위치, 각막의 크기 및 위치, 안구의 크기 및 위치, 반짝임 특징점의 개수 및 위치에 대한 정보를 포함하는, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있다.
전술한 바와 같이, 센싱 영역이 넓어질수록, 외부 요인(예를 들어, 외부 광에 의한 노이즈, 사용자 안구의 회전 또는 사용자 눈 깜빡임에 의한 동공 가려짐)이 발생하더라도 사용자의 시선 추적에 성공할 가능성이 높아진다. 반면, 센싱 영역이 좁아질수록, 사용자의 시선 추적 정확도가 높아지고 시선 추적 속도가 빨라질 수 있다. 따라서, 외부 요인에 강건(robust)하면서 시선 추적 속도 및 정확도가 보장되는 최적의 센싱 영역을 결정하는 것이 필요하다.
도 6a 및 도 6b는 카메라 기반의 시선 추적 센서가 사용자의 안구를 센싱하는 방법을 설명하기 위한 도면이다.
도 6a는 시선 추적 센서와 사용자의 눈을 측면에서 바라본 모습으로, 도 6a를 참조하면, 시선 추적 센서는 사용자 눈과 서로 마주보는 형태로 배치되며, 카메라 기반의 시선 추적 센서는 적어도 하나의 카메라를 포함할 수 있다. 도 6b는 시선 추적 센서와 사용자의 눈을 정면에서 바라본 모습으로, 도 6b를 참조하면, IR 카메라 기반의 시선 추적 센서는 증강 현실 장치 폼팩터의 프레임에 사용자의 안구 방향으로 실장되고, 적어도 하나의 IR 카메라를 포함할 수 있다.
광 방출부 1520는 IR 광을 방출하는 IR LED이며, 광 수신부 1530는 IR 광을 촬영하는 IR 카메라인 경우, IR 카메라는 사용자의 눈에 의해 반사되는 IR 광을 이용하여 사용자의 눈을 촬영할 수 있다. 광 방출부 1520가 IR LED이며 광 수신부 1530가 IR 카메라인 경우에, 광 방출부 1520는 면광(planar light)의 IR 광을 사용자의 눈을 향하여 방출하며, 광 수신부 1530는 사용자의 눈으로부터 반사된 면광의 IR광을 수신할 수 있다.
IR 카메라 기반 시선 추적 센서에 의해 촬영된 안구 이미지는, 설정된 센싱 영역에 기초하여 사용자 눈의 전체 영역 중 일부의 영역에 대하여 이미지 분석이 수행될 수 있다. 센싱 영역은, IR 카메라에 의해 촬영된 안구 이미지로부터 사용자 시선을 검출하기 위한, 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있는 영역으로 설정될 수 있다.
IR 카메라 기반 시선 추적 센서의 센서 데이터는, IR LED에서 방출된 IR 광이 사용자의 눈에 반사되어 IR 카메라에 의해 촬영되는 로 데이터를 의미하며, 시선 추적 장치 1000는 센서 데이터를 분석하여 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있다.
도 7a 내지 도 7c는 카메라 기반의 시선 추적 센서가 사용자의 안구를 센싱하여 동공 정보 및 눈 특징점 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 7a는 IR 카메라가 촬영한 사용자 안구 이미지를 나타낸다.
도 7a를 참조하면, 카메라 기반의 시선 추적 방법은, IR 카메라로 촬영한 안구 이미지를 픽셀 분석하여 사용자의 안구 및 시선에 관련된 정보를 획득할 수 있다.
홍채의 외형을 원으로 가정하고, 가변 탬플릿을 이용하여 홍채를 탐지한다. 글린트는 홍태 영역 내에 존재하고, 가장 높은 밝기의 화소값을 가지는 특징이 있으므로 홍채 영역 내에서 이진화를 수행하여 글린트를 검출할 수 있다. 동공은 글린트의 위치에 따라 일부 폐색되어 원이나 타원 검출 방법으로는 정확한 동공을 찾기 어려우므로, 글린트의 위치 정보를 활용하여 동공의 위치를 검출할 수 있다.
카메라 기반의 시선 추적 방법은, IR 카메라로 촬영한 안구 이미지를 픽셀 분석하여 소정 수치 이하의 밝기를 가지는 부분을 동공으로 결정하고 기준 수치 이상의 밝기를 가지는 부분을 글린트로 결정할 수 있다. 본 개시의 일 실시예에 따르면, 기준 수치는 소정 수치일 수 있다. 도 7b를 참조하면 도 7a의 안구 이미지를 분석하여 소정의 밝기 이상으로 밝은 부분을 반짝임 특징점으로 식별할 수 있다.
본 개시의 일 실시예에 따른 카메라 기반 시선 추적 센서를 이용하여 반짝임 특징점을 검출하는 방법은IR 카메라를 사용하여 사용자의 눈 영역 영상을 획득하고, 잡음을 제거하고, valley map을 생성하고, 가변 템플릿을 적용하여 홍채를 탐지하고, 홍채 영역을 추출하고, 이진화 하고, 레이블링하고, 글린트를 검출할 수 있다.
또한, 도 7c를 참조하면 도 7a의 안구 이미지를 분석하여 소정의 밝기 이하로 어두운 부분을 동공의 위치로 식별할 수 있다.
본 개시의 일 실시예에 따른 카메라 기반 시선 추적 센서를 이용하여 동공을 검출하는 방법은 IR 카메라를 사용하여 사용자의 눈 영역 영상을 획득하고, 잡음을 제거하고, 이진화 하고, 침식/팽창 연산을 수행하고, 레이블링을 수행하고, 동공을 검출할 수 있다.
인공 지능 모델을 이용하여 안구 이미지 분석을 수행하는 경우, 처리해야 할 데이터의 양이 늘어나면 속도 및 성능 저하가 발생한다. 따라서, 사용자의 안구 및 시선에 관련된 정보를 획득하기 위한 최적의 안구 촬영 영역 또는 안구 이미지 처리 영역을 결정하는 것이 필요하다.
도 8은 본 개시의 일 실시예에 따른 시선 추적 방법에서, 센싱 영역을 결정하는 방법을 설명하기 위한 도면이다.
시선 추적 센서는 사용자의 눈을 센싱하기 위한 센싱 영역을 결정하기 위하여, 최초 센싱 과정에서 사용자의 눈 위치를 탐색한다. 사용자의 눈 위치를 탐색하기 위하여, 시선 추적 센서를 포함하는 전자 장치(예를 들어, 증강 현실 장치 등)는 사용자에게 정면을 응시한 상태를 소정의 시간동안 유지할 것을 요청할 수 있다. 사용자가 시선을 고정한 상태를 유지하는 동안, 시선 추적 센서는 센싱 가능한 최대 범위(예를 들어, 하드웨어가 지원 가능한 최대 스캔 각도 θ_max)로 사용자의 눈을 센싱할 수 있다.
도 8a를 참조하면, 스캐너 기반의 시선 추적 센서는 최초 센싱을 통해 사용자의 안구 특징점들에 대한 정보가 획득되면, 안구 특징점들에 기초하여 ‘중심 방향’을 결정하고, 고정된 스캔 범위로 사용자의 안구를 스캔하여 시선 추적을 수행할 수 있다. ‘중심 방향’은 안구 특징점들이 가급적 스캔 중심점에 가까이 위치하도록 결정될 수 있다.
도 8b를 참조하면, 스캐너 기반의 시선 추적 센서는 최초 착용시(t=0에서) 사용자 눈의 전 범위를 스캔하여 2차원 센서 데이터 공간 내의 동공 데이터 정보를 획득하고, 동공 데이터 정보에 기초하여 최적화된 센서 데이터 공간을 결정할 수 있다.
최초 센싱을 통해 획득된 최대 범위의 센서 데이터 공간은 동공 데이터 정보에 기초하여 축소함으로써 최적화될 수 있으며(t=t1), 동공의 이동을 감지하여 스캔 영역을 변경함으로써 시선을 추적(tracking)할 수 있다(t=t2). 그러나, 센싱 영역 내의 동공의 이동을 감지하여 스캔 영역을 변경하는 경우, 눈 깜빡임 또는 센서 노이즈등의 원인으로 인해 시선 추적에 실패하는 경우(t=t3)(예를 들어, 동공이 스캔 영역 밖에 위치하는 경우) 이후 스캔 영역을 결정하기 위한 단서가 없으므로, 시선 추적 센서는 다시 센싱 가능한 최대 범위로 사용자의 눈을 센싱하여 사용자의 안구 특징점에 관련된 정보를 획득해야 한다.
전자 장치 사용 중 여러가지 요인으로 인해 시선 추적에 실패할 수 있으며 도8에 도시된 것과 같은 방법으로 센싱 영역을 결정하는 경우, 사용자가 시선 추적 센서를 포함하는 전자 장치를 착용시 매번 최초 센싱이 수행되어야 한다. 또한, 사용자가 전자 장치를 사용하는 중에는 센싱 영역을 업데이트할 수 없으므로, 센싱 영역을 업데이트 하기 위해서는 사용자의 눈 위치를 탐색하기 위한 센싱을 다시 수행해야 한다.
도 9a 내지 도 9c는 본 개시의 일 실시예에 따른 시선 추적 방법에서, 시선 추적에 실패한 경우를 설명하기 위한 도면이다.
도 9a를 참조하면, 잘못된 센싱 영역 설정으로 인해 사용자 안구의 동공 일부가 스캐너의 스캔 영역, 즉 센싱 영역 외부에 위치하는 경우가 발생할 수 있다. 이와 같은 현상은 센싱 영역(예를 들어, 스캐너의 스캔 각도)이 좁은 경우, 눈의 회전에 의해 동공이 센싱 영역 외부로 이동하여 발생할 수 있다. 또는, 전자 장치의 미끄러짐 등으로 인해 시선 추적 센서와 눈의 상대적 위치가 달라진 경우 동공의 위치가 센싱 영역 외부로 이동하여 발생할 수 있다.
도 9b를 참조하면, 잘못된 센싱 영역 설정으로 인해 사용자 안구의 동공 스캔 결과가 왜곡되는 경우가 발생할 수 있다. 이와 같은 현상은 센싱 영역(예를 들어, 스캐너의 스캔 각도)이 넓은 경우, 센싱을 위한 시간이 길어지게 되는데 한번의 스캔 주기 내에서 동공이 빠르게 이동하면 동공의 모양을 제대로 획득할 수 없다. 예를 들어, 한번의 스캔 주기 내의 시점 t1에서 위쪽에 위치하던 동공이 빠르게 회전하여 시점 t2에서 아래쪽에 위치하는 경우를 가정한다. 이 때, 실제의 동공 모양은 점선으로 표시된, t1 시점에 위쪽을 바라보고 t2 시점에 아래쪽을 바라보는 두개의 작은 타원모양이지만, 시선 추적 센서가 t1과 t2를 포함하는 스캔 주기 내에서 센싱한 동공 모양은 위쪽과 아래쪽을 포함하는, 실선으로 표시된 커다란 타원 모양으로 획득되게 된다.
도 9c를 참조하면, 카메라 기반의 시선 추적 센서는, 카메라의 이미지 센서를 분할하여 일부 센서 부분만 동작하도록 하여 시선 추적을 수행할 수있다. 구체적으로, 시선 추적 센서는 최초 센싱을 수행하고, 최초 센싱에서 눈의 외형에 대한 센싱 결과를 획득하지 못할 경우, 센싱 영역을 확장하여 눈의 외형 정보 획득을 다시 시도할 수 있다. 센싱 영역을 확장하여 눈의 외형 획득에 성공하면, 획득된 눈의 외형에 기초하여 시선 추적을 위하여 필요한 센싱 영역을 최적화할 수 있다. 그러나, 카메라 기반의 시선 추적 센서는 눈의 외형을 확인하기 위해 상대적으로 넓은 동작 영역이 필요하며, 동작 영역이 넓어지면 이미지 처리를 위한 데이터의 양이 많아지므로 시선 추적을 위한 인공 지능 모델의 추론 및 학습 성능이 저하되게 된다.
도 10은 본 개시의 일 실시예에 따른 시선 추적 방법에서, 스캔 영역을 결정하는 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 본 개시의 일 실시예 따른 시선 추적 방법은, 시선 추적 센서가 시선 추적을 위한 센싱 중 사용자의 안구가 이동한 경우 안구 이동에 따라 안구 모델을 업데이트하고, 업데이트된 안구 모델에 기초하여 시선 추적 중심점을 변경함으로써 시선 추적 센서의 센싱 영역을 변경할 수 있다.
전술한 바와 같이, 시선 추적 센서가 실장된 전자 장치의 미끄러짐 등으로 인해 시선 추적 센서의 위치가 변경된 경우, 시선 추적 센서의 위치와 상대적인 관계로 결정되는 사용자의 안구 위치가 이동하게 된다. 이로 인해 센싱 영역 내에 동공이 위치하지 않는 경우 시선 추적 센서는 시선 추적에 실패하게 되며, 기존의 센싱 방법에 따르면 시선 추적 센서는 센싱 가능한 최대 범위로 초기 센싱을 다시 수행하여 사용자 안구에 대한 정보를 획득해야 한다. 또한, 시선 추적 중에는 사용자 안구에 대한 정보를 획득하고, 센싱 영역을 변경하기 위한 센싱을 수행할 수 없으므로 시선 추적을 중단하고 사용자 안구에 대한 정보를 획득한 후, 다시 시선 추적을 수행해야 한다.
그러나, 본 개시의 일 실시예에 따르면, 전자 장치는 사용자의 안구 모델을 확보하고 있으므로, 사용자의 안구가 이동한 것이 식별되면 안구 이동에 따라 사용자 안구 모델을 업데이트하고 업데이트된 사용자 안구 모델에 기초하여 시선 추적의 중심점(예를 들어, 동공의 중심 방향)을 이동함으로써 시선 추적 센서의 센싱 영역을 변경할 수 있다.
따라서, 본 개시의 일 실시예에 따른 시선 추적 방법에 의하면, 사용자의 시선 추적에 실패한 경우라도 업데이트된 안구 모델을 이용하여 시선 추적 센서의 센싱 범위를 결정함으로써, 별도의 스캔 없이 시선 추적 센서의 센싱 범위를 결정할 수 있다. 또한, 시선 추적 중 획득된 정보에 기초하여 실시간으로 센싱 영역을 변경할 수 있다.
도 11은 본 개시의 일 실시예에 따른 시선 추적을 위한 센싱 영역을 결정하는 방법의 흐름도이다.
시선 추적 장치 1000의 사용자가 시선 추적 장치 1000를 새로 장착한 경우, 시선 추적 장치 1000는 사용자의 시선을 추적하기 위한 정보가 전혀 없는 상태이므로, 시선 추적 장치 1000의 사용자가 증강 현실 장치(1000)를 새로 장착한 것이 식별되면 시선 추적 장치 1000는 사용자 시선 검출을 위한 최초의 센싱을 진행할 수 있다.
본 개시의 일 실시예에 따르면, 시선 추적 장치 1000가 수행하는 사용자 시선 검출을 위한 센싱은 시선 검출 모듈 1500의 센서부 1510의 광 방출부 1520를 이용하여 사용자 안구를 향해 IR 광을 방출하고, 광 수신부 1530를 이용하여 사용자 안구에서 반사된 IR 광을 수신함으로서 사용자의 안구 및 시선에 관련된 정보를 포함하는 센서 데이터를 획득하는 일련의 과정을 의미할 수 있다.
최초의 센싱 과정에서, 시선 추적 장치 1000는 시선 추적 장치 1000의 사용자에게 시선을 정면에 고정한 채 소정의 시간동안 유지하거나 안구를 특정 방향으로 이동할 것을 요청하는 사용자 인터페이스(예를 들어, 디스플레이에 표시하거나 음성을 출력)를 제공할 수 있다.
최초의 센싱을 위한 센싱 영역은 시선 추적 장치 1000에 설정된 초기 설정값에 기초하여 결정되거나 시선 검출 모듈 1500이 가동 가능한 최대 범위로 결정될 수 있다.
전술한 바와 같이, 사용자 시선 추적을 위한 센싱 영역이 넓어질수록, 외부 요인(예를 들어, 외부 광에 의한 노이즈 또는 사용자 눈 깜빡임에 의한 동공 가려짐)이 발생하더라도 사용자의 시선 추적에 성공할 가능성이 높아지므로, 안정적인 정보 획득을 위하여 가급적 넓은 범위에서 최초 센싱을 수행하는 것이 일반적이다.본 개시의 일 실시예에 따르면, 최초 센싱을 통해 사용자 안구 및 시선에 대한 정보를 포함하는 센서 데이터가 획득되면, 시선 추적 장치 1000는 획득된 센서 데이터에 기초하여 사용자의 3D 안구 모델을 획득하고, 사용자 안구 특징점들이 모두 포함될 수 있도록 이후의 센싱 영역을 결정할 수 있다.
3D 안구 모델 1741은 안구 특징 검출 모듈 1730에서 획득한 사용자의 안구 및 시선에 관련된 특징과 동공 위치 검출 모듈 1731에서 획득한 사용자의 눈의 동공의 위치에 기초하여 생성된다. 예를 들어, 프로세서 1800는 시선 판단 모듈(1740)을 실행함으로써 안구 특징 검출 모듈 1730에서 검출한 사용자의 눈의 동공의 특징점(pupil feature point)의 위치, 눈의 반짝임 특징점(glint feature point)의 위치 및 동공의 위치에 기초하여 사용자의 안구를 3D 모델링 할 수 있다.
이 때, 최초 센싱을 통해 결정된 이후의 센싱 영역을 제1 센싱 영역이라 하며, 센싱 영역은 센싱 중심점 및 센싱 범위(예를 들어 각도)에 대한 정보를 포함할 수 있다.
단계 1110에서, 시선 추적 장치 1000는 시선 추적 센서의 제1 센싱 영역 에서 제1 안구 데이터를 획득할 수 있다.
본 개시의 일 실시예에 따르면, 제1 센싱 영역은 최초 센싱을 통해 결정된 센싱 영역을 의미할 수 있고, 시선 추적 센서는 증간 현실 장치 1000의 광 방출부 1520를 이용하여 사용자 안구의 제1 센싱 영역을 향해 IR 광을 방출하고, 광 수신부 1530를 이용하여 사용자 안구에서 반사된 IR 광을 수신함으로서 제1 센싱 영역에서 사용자의 안구에 관련된 정보를 포함하는 제1 안구 데이터를 획득할 수 있다.
안구 데이터는, 시선 추적 센서에서 획득한 사용자의 안구 및 시선에 관련된 정보를 포함하는 2D 센서 데이터를 의미하며, 사용자 안구의 반짝임 특징점(glint feature point)의 위치, 안구의 크기와 위치, 동공(pupil)의 크기와 위치, 홍채(iris)의 크기와 위치, 및 각막(cornea)의 크기와 위치에 대한 정보 중 적어도 하나를 포함할 수 있다.
단계 1120에서, 시선 추적 장치 1000는 시선 추적 센서로부터 획득한 제1 안구 데이터에 기초하여 안구 모델을 획득할 수 있다.
시선 추적 센서에서 획득한 센서 데이터는 3D 공간(3D space) 상의 안구에 대한 정보가 2D 평면(2D image space)으로 투영된 2D 데이터를 의미할 수 있으며, z 축에 해당하는 깊이 정보(시선 추적 센서와 사용자 안구 사이의 거리)는, 시선 검출 모듈 1510에 포함되는 복수의 광 수신부의 수신 데이터를 분석함으로써 획득될 수 있다. 위와 같은 관계에 따라, 3D 공간의 실제 안구 정보는 센서 데이터를 역투영함으로써 획득될 수 있다.
본 개시의 일 실시예에 따르면, 기존의 안구 모델이 존재하는 경우 시선 추적 장치 1000는 기존의 안구 모델을 업데이트함으로써 사용자의 시선 검출을 위한 안구 모델을 획득할 수 있다.
시선 추적 장치 1000의 사용자가 시선 추적 장치 1000를 사용하던 중, 사용자의 눈과 증강 현실 장치의 상대적 위치가 달라지거나 사용자 안구가 회전한 경우 기존의 안구 모델로는 정확한 시선 검출 결과를 획득할 수 없다. 따라서, 증강 현실 장치는 주기적으로 획득되는 센서 데이터에 기초하여 사용자의 시선 검출을 위한 안구 모델을 주기적으로 업데이트 하거나, 새로 생성할 수 있다.
3D 모델 공간은 3D 공간의 실제 안구 정보를 이용하여 안구 모델 E을 획득하고, 안구 모델을 업데이트함으로써 생성될 수 있다.
단계 1130에서, 시선 추적 장치 1000는 안구 모델에 기초하여 제2 센싱 영역을 결정할 수 있다.
본 개시의 일 실시예에 따르면, 시선 추적 장치 1000는 제2 센싱 영역에서 사용자의 안구 및 시선에 관련된 정보를 포함하는 제2 센서 데이터를 3D 안구 모델에 적용하여 사용자의 시선 정보를 획득할 수 있다.
사용자의 시선 정보는 사용자의 시선에 관련된 정보로서, 센서 데이터를 분석함으로써 생성될 수 있으며, 예를 들어, 3D 공간에서 사용자의 동공의 위치, 동공의 중심점의 위치, 사용자의 홍채의 위치, 사용자의 눈의 중심, 사용자의 눈의 반짝임 특징점의 위치, 사용자의 응시점, 사용자의 시선 방향 등에 관한 정보를 포함할 수 있으나, 이에 제한되지 않는다. 사용자의 시선 방향은, 예를 들어, 사용자의 눈의 중심으로부터 사용자가 응시하는 응시점을 향하는 시선의 방향일 수 있다. 예를 들어, 사용자의 시선 방향은, 사용자의 좌측 눈의 중심으로부터 응시점을 향하는 벡터 값 및 사용자의 우측 눈의 중심으로부터 응시점을 향하는 벡터 값에 의해 나타내어질 수 있으나, 이에 제한되지 않는다.
본 개시의 일 실시예에 따르면, 시선 추적 장치 1000는 제1 센서 데이터를 3D 안구 모델에 적용하여 획득한 데이터와 제1 센서 데이터를 3D 공간으로 역투영(unprojection)하여 획득된 데이터의 비교 결과에 기초하여 제2 센싱 영역을 결정할 수 있다.
본 개시의 일 실시예에 따르면, 시선 추적 장치 1000는 사용자의 3D 안구 모델의 동공의 중심과 제1 센서 데이터에 포함된 동공의 중심에 대한 정보를 3D 공간으로 역투영하여 획득된 동공의 중심의 차이, 사용자의 3D 안구 모델의 동공 크기(반지름)과 제1 센서 데이터에 포함된 동공의 크기(반지름)에 대한 정보를 3D 공간으로 역투영하여 획득된 동공의 크기(반지름)의 비율, 및 사용자의 3D 안구 모델의 반짝임 특징점 위치와 제1 센서 데이터에 포함된 반짝임 특징점에 대한 정보를 역투영하여 획득된 반짝임 특징점의 위치의 차이에 기초하여 제2 센싱 영역을 결정할 수 있다.
도 12는 사람의 안구의 구조 및 간략화된 안구 구조를 나타낸다.
도 12를 참조하면, 안구의 구조에서 중심와(fovea)는 각막(cornea)과 수정체(lens) 중심을 수직으로 지나 빛이 맺히는 부분으로, 시선의 방향은 중심와로부터 수정체 중심을 지나는 시축(visual axis)를 의미한다. 안구의 회전 중심으로부터 동공을 지나는 선을 광축(optical axis)라고 하며, 실에 시선의 방향인 시축과 광축의 사이각을 카파각(kappa angle)이라 하며, 시축은 광축으로부터 동공의 중심 방향에서 수평 안쪽 방향으로 약 5도, 수직 아래 방향으로 약 1도 기울어져 있다.
안구를 구성하는 각 요소들에 대한 실제 데이터는 영상 분석을 통해 획득하기 어려우므로, 안구 모델을 사용하거나, 사용자에 따른 보정을 통해 시선 추적 데이터를 획득하게 된다.
사람의 안구를 단순화하여 표현하면 서로 다른 곡률을 가지는 두개의 구가 겹쳐지는 형태로 구성되며, 안구 310에 대응되는 제1 구에 제2 구의 일부가 튀어나온 형태로 제2 구에서 튀어나온 부분을 각막 320으로, 제2 구의 앞부분의 일부를 동공 330으로 형상화할 수 있다.
단순화된 안구 모델에서, 시선 추적은 안구의 중심 311으로부터 동공의 중심점 331을 향하는 벡터, 즉 시선 벡터(gaze vector) 400를 획득하는 것을 의미한다. 사용자의 시선을 추적하는 것은 안구의 움직임을 추적하여 측정함으로써 구현가능하다.
다만, 구체적인 시선 추적 방법은, 적용되는 안구 모델 및 시선 추적 알고리즘에 따라 달라질 수 있다.
도 13은 본 개시의 일 실시예에 따른 안구 모델 및 안구 모델을 업데이트하고 센싱 영역을 결정하는 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 시선 추적 센서에서 획득한 센서 데이터는 3D 공간(3D space) 상의 안구에 대한 정보가 2D 평면(2D image space)으로 투영된 2D 데이터를 의미할 수 있으며, z 축에 해당하는 깊이 정보(시선 추적 센서와 사용자 안구 사이의 거리)는, 시선 검출 모듈 1510에 포함되는 복수의 광 수신부의 수신 데이터를 분석함으로써 획득될 수 있다. 위와 같은 관계에 따라, 3D 공간의 실제 안구 정보는 센서 데이터를 역투영함으로써 획득될 수 있다.
3D 모델 공간은 3D 공간의 실제 안구 정보를 이용하여 안구 모델 E을 획득하고, 안구 모델을 업데이트함으로써 생성될 수 있다.
이하에서, 각 공간의 안구 데이터를 설명하기 위하여, 2D 평면의 센서 데이터는 (u, v) 좌표를 이용하여 표시되며, 센서 데이터를 역투영하여 획득되는 3D 공간의 안구 정보는 (x, y, z)좌표를 이용하여 표시된다.
전술한 바와 같이, 사용자가 시선 추적 장치 1000를 최초로 착용하면, 시선 추적 장치 1000는 최초 센싱 영역(예를 들어, 센싱 중심점 방향
Figure PCTKR2022019737-appb-img-000001
, 및 센싱 각도
Figure PCTKR2022019737-appb-img-000002
)에서 시선 추적 센서를 동작하여, 사용자의 안구 특징점 정보를 획득하고 제1 센싱 영역(예를 들어, 센싱 중심점 방향
Figure PCTKR2022019737-appb-img-000003
, 및 센싱 각도
Figure PCTKR2022019737-appb-img-000004
)을 결정할 수 있다. 이 때, 시선 추적 장치 1000의 최초 착용에 따른 시선 추적 센서의 최초 센싱 범위(센싱 중심점 방향
Figure PCTKR2022019737-appb-img-000005
, 및 센싱 각도
Figure PCTKR2022019737-appb-img-000006
)는 공장 초기 설정에 따른 센싱 중심점 방향 및 하드웨어가 지원 가능한 최대 센싱 각도로 결정될 수 있다. 획득된 최초 센서 데이터로부터 사용자의 안구 및 시선과 관련된 특징점들을 식별하는데 실패하면, 시선 추적 장치 1000는 사용자에게 시선 추적 장치 1000를 재착용하고 안구를 다시 센싱할 것을 권고하도록 동작할 수 있다.
시선 추적 센서는 결정된 제1 센싱 영역, 센싱 중심점 방향
Figure PCTKR2022019737-appb-img-000007
, 및 센싱 각도
Figure PCTKR2022019737-appb-img-000008
,에서 시선 추적을 수행하여 센서 데이터를 획득할 수 있다.
센서 데이터는 동공의 반지름
Figure PCTKR2022019737-appb-img-000009
, 2D 동공 중심 위치
Figure PCTKR2022019737-appb-img-000010
, 및 적어도 하나의 2D 반짝임 특징점 위치
Figure PCTKR2022019737-appb-img-000011
를 포함할 수 있다.
센서 데이터는 2D 평면을 3D 공간으로 역투영하는 매트릭스
Figure PCTKR2022019737-appb-img-000012
에 의해 3D 데이터로 변환될 수 있다. 시선 추적 장치 1000는 2D 동공 중심 위치
Figure PCTKR2022019737-appb-img-000013
를 역투영하여 3D 동공 중심 위치
Figure PCTKR2022019737-appb-img-000014
를, 반짝임 특징점 위치
Figure PCTKR2022019737-appb-img-000015
를 역투영하여 3D 반짝임 특징점 위치
Figure PCTKR2022019737-appb-img-000016
를 획득할 수 있다. 또한, 시선 추적 장치 1000는 시선 추적 센서에서 획득한 2D 평면의 동공의 반지름 데이터 및 z 축에 해당하는 깊이 정보에 기초하여 3D 공간에서 동공의 반지름
Figure PCTKR2022019737-appb-img-000017
를 획득할 수 있다.
이를 일반화하면, 2D 센서 데이터 중 반짝임 특징점에 관련된 정보를 g, 동공과 관련된 정보를 p라 할 때, 3D 공간의 반짝임 특징점에 관련된 정보는
Figure PCTKR2022019737-appb-img-000018
, 3D 공간의 동공과 관련된 정보는
Figure PCTKR2022019737-appb-img-000019
로 표현할 수 있다. 이 때, 역투영 매트릭스
Figure PCTKR2022019737-appb-img-000020
는 안구의 위치와 시선 추적 장치 1000에 포함되는 광 조사부1520의 위치
Figure PCTKR2022019737-appb-img-000021
, 및 광 수신부 1530의 위치에 기초하여 결정될 수 있다. 3D 공간에서 사용자의 안구 및 시선과 관련된 정보는 이 외에도 안구의 중심 위치
Figure PCTKR2022019737-appb-img-000022
를 포함할 수 있다. 시선 추적 장치 1000는 센서의 위치
Figure PCTKR2022019737-appb-img-000023
로부터 센싱 중심 위치로의 방향을 나타내는 벡터
Figure PCTKR2022019737-appb-img-000024
및 센싱 범위를 나타내는 각도 θ에 기초하여 센싱 영역을 결정할 수 있다. 센싱 중심 위치를 안구의 중심 위치
Figure PCTKR2022019737-appb-img-000025
로 설정하는 경우, 센싱 중심 위치로의 방향을 나타내는 벡터
Figure PCTKR2022019737-appb-img-000026
Figure PCTKR2022019737-appb-img-000027
로 결정될 수 있다. 본 개시의 일 실시예에 따르면, 안구의 중심 위치
Figure PCTKR2022019737-appb-img-000028
로부터 동공 중심 위치
Figure PCTKR2022019737-appb-img-000029
를 가로지르는 벡터
Figure PCTKR2022019737-appb-img-000030
가 게이즈(gaze) 벡터로, 시선의 방향이 된다.
시선 추적 장치 1000가 사용자의 시선을 추적하던 중 시선 추적에 실패하면, 시선 추적 장치 1000는 시선 추적 센서의 센싱 영역을 변경해야 한다. 그러나, 일반적인 경우 센싱 영역을 결정하기 위한 초기 센싱과 시선을 추적하기 위한 센싱은 서로 별개로 동작한다. 따라서 시선 추적에 실패한 경우 ‘추적’을 위한 단서가 없어 센싱 영역을 즉시 변경하는 것이 불가능하고, 시선을 추적하던 중 시선 추적에 실패하면 센싱 영역을 결정하기 위한 최대 범위의 센싱(최초 센싱)을 다시 수행해야 한다.
본 개시의 일 실시예에 따르면, 시선 추적을 위한 센서 데이터를 이용하여 안구 모델을 생성하고, 추가로 획득되는 시선 추적을 위한 센서 데이터에 기초하여 안구 모델을 업데이트함으로써, 시선 추적 센서의 센싱 영역을 실시간으로 변경/결정할 수 있다. 또한, 본 개시의 일 실시예에 따르면, 사용자 특유의 안구 및 시선 정보에 기초하여 안구 모델이 생성되고 업데이트 되므로, 본 개시의 일 실시예에 따른 안구 모델에 기초하여 시선 추적을 수행하고, 센싱 영역을 결정하는 경우 시선 추적 성능이 개선될 수 있다.
도 14는 본 개시의 일 실시예에 따른 안구 모델을 획득하고 시선 추적을 위한 센싱 영역을 결정하는 알고리즘의 예시를 나타낸다.
도 14를 참조하면, 본 개시의 일 실시예에 따른 안구 모델을 획득하고 센싱 영역을 결정하는 알고리즘은, 시선 추적 센서가 사용자 안구를 센싱하여 획득한 센서 데이터에 기초하여 안구 특징(g, p,…) 정보를 획득하고, 획득된 안구 특징 정보에 기초하여 안구 모델
Figure PCTKR2022019737-appb-img-000031
, 안구 모델의 신뢰도 및 오차(conf, ε)를 획득하고, 획득된 안구 모델, 안구모델의 신뢰도 및 오차에 기초하여 센싱 영역
Figure PCTKR2022019737-appb-img-000032
을 결정한다. 이 때, 안구 모델은 기존에 작성된 안구 모델이 있는 경우 사용자의 안구 특징 정보를 반영하여 갱신되며, 기존에 작성된 안구 모델이 없는 경우 사용자의 안구 특징 정보를 반영하여 생성된다. 또한, 안구 모델은 사용자 정보를 반영하여, 사용자별로 별도로 생성, 관리될 수 있다.
본 개시의 일 실시예에 따른 시선 추적 센서가 장착된 시선 추적 장치는, 결정된 센싱 영역에 따라 센서를 제어하여, 시선 추적을 수행할 수 있다.
2D 센서 데이터를 역투영하여 3D 데이터가 획득되면, 시선 추적 장치 1000는 획득된 3D 데이터를 3D 안구 모델에 적용하여 3D 안구 모델 상에서 반짝임 특징점에 관련된 정보 및 동공과 관련된 정보 등을 획득할 수 있다.
시선 추적 장치 1000는, 시선 추적 센서로부터 센서 데이터가 획득되면 센서 데이터로부터 사용자의 안구 및 시선과 관련된 특징점들(예를 들어, g, p, … 등)을 식별하고, 사용자의 안구 및 시선과 관련된 특징점들에 기초하여 3D 사용자 안구 모델을 생성할 수 있다. 본 개시의 일 실시예에 따른 3D 안구 모델은
Figure PCTKR2022019737-appb-img-000033
와 같이 정의될 수 있다.
시선 추적 센서는 센싱 중심 방향 벡터
Figure PCTKR2022019737-appb-img-000034
및 센싱 범위 θ의 센싱 영역에서 2D 센서 데이터 (g,p,…)를 획득할 수 있으며, 시선 추적 장치 1000는 2D 센서 데이터를 역투영하여 획득된 3D 데이터를 3D 안구 모델에 적용하여 3D 안구 모델에서의 안구의 반지름
Figure PCTKR2022019737-appb-img-000035
, 동공의 반지름
Figure PCTKR2022019737-appb-img-000036
, 및 3D 안구 모델에서 3D 동공 중심 위치
Figure PCTKR2022019737-appb-img-000037
, 및 적어도 하나의 반짝임 특징점의 위치
Figure PCTKR2022019737-appb-img-000038
를 획득할 수 있다.
시선 추적 장치 1000는, 제1 센싱 영역(예를 들어,
Figure PCTKR2022019737-appb-img-000039
Figure PCTKR2022019737-appb-img-000040
)에서 사용자 안구를 센싱하여 제1 센서 데이터를 획득할 수 있다.
시선 추적 장치 1000는, 제1 센서 데이터로부터 사용자의 안구 및 시선과 관련된 특징점들에 대한 정보 (g, p,…)을 식별하고, 사용자의 안구 및 시선과 관련된 특징점들에 기초하여 3D 사용자 안구 모델을 갱신할 수 있다.
본 개시의 일 실시예에 따르면, 시선 추적 장치 1000는 제1 센서 데이터로부터 식별된 사용자의 안구 및 시선과 관련된 특징점들에 대한 정보 (g, p,…) 에 기초하여 3D 사용자 안구 모델
Figure PCTKR2022019737-appb-img-000041
을 갱신할 수 있다. 만일, 이전 단계에서 3D 사용자 안구 모델이 생성되지 않았다면, 시선 추적 장치 1000는, 제1 센서 데이터로부터 식별된 사용자의 안구 및 시선과 관련된 특징점들에 대한 정보 (g, p,…) 에 기초하여 3D 안구 모델을 새로 생성할 수 있다.
시선 추적 장치 1000는, 3D 사용자 안구 모델 E를 이용하여, 3D 모델 공간에서의 눈 특징점에 대한 정보
Figure PCTKR2022019737-appb-img-000042
를 획득할 수 있다.
시선 추적 장치 1000는 사용자의 안구 및 시선과 관련된 특징점들에 대한 정보 (g, p,…)를 3차원 공간으로 역투영한
Figure PCTKR2022019737-appb-img-000043
와 3D 모델 공간에서의 눈 특징점에 대한 정보
Figure PCTKR2022019737-appb-img-000044
의 차이에 기초하여 안구 모델의 오차
Figure PCTKR2022019737-appb-img-000045
를 획득할 수 있다.
본 개시의 일 실시예에 따르면,
Figure PCTKR2022019737-appb-img-000046
는 3D 공간의 실제 동공과 3D 모델 공간에서의 동공의 중심 위치 차이를 의미하며, 다음과 같이 정의된다.
Figure PCTKR2022019737-appb-img-000047
Figure PCTKR2022019737-appb-img-000048
은 3D 공간의 실제 동공과 3D 모델 공간에서의 동공의 크기(반지름) 비율을 의미하며, 다음과 같이 정의된다.
Figure PCTKR2022019737-appb-img-000049
Figure PCTKR2022019737-appb-img-000050
는 실제 반짝임 특징점과 3D 모델 공간에서의 반짝임 특징점의 위치 차이를 의미하며 다음과 같이 정의된다.
Figure PCTKR2022019737-appb-img-000051
시선 추적 장치 1000는 3D 모델 공간에서의 안구 데이터인 안구 모델 E와 3D 공간상 안구 데이터의 오차 ε에 기초하여 제2 센싱 영역(예를 들어,
Figure PCTKR2022019737-appb-img-000052
Figure PCTKR2022019737-appb-img-000053
)를 결정할 수 있다.
이후, 시선 추적 장치 1000는 제2 센싱 영역에서 사용자의 안구를 센싱하여 제2 센서 데이터를 획득하고, 제2 센서 데이터에 기초하여3D 사용자 안구 모델을 갱신하고, 갱신된 안구 모델에 기초하여 새로운 센싱 영역을 결정하는 과정을 반복할 수 있다.
시선 추적 장치 1000는 실시간으로 사용자의 시선 추적을 위한 센싱을 수행하며, 기존의 센싱 데이터에 기초하여 생성되고 업데이트된 안구 모델을 이용할 수 있으므로, 시선 추적에 실패하더라도 안구 모델을 이용하여 센싱 영역을 실시간으로 결정 및 변경할 수 있다.
도 15는 본 개시의 일 실시예에 따른 시선 추적 센서의 센싱 영역을 나타낸다.
도 15를 참조하면, 시선 추적 센서의 센싱 영역은, 센서의 위치에 대한 정보, 동공 중심의 위치에 대한 정보, 센싱 각도에 대한 정보, 및 동공의 반지름에 대한 정보에 기초하여 결정될 수 있다.
도 15를 참조하면, 센서의 3차원 위치가
Figure PCTKR2022019737-appb-img-000054
, 3D 공간에서 동공의 중심의 위치가
Figure PCTKR2022019737-appb-img-000055
, 동공의 반지름이
Figure PCTKR2022019737-appb-img-000056
로 정의되고, 나머지 변수들은 도 13의 정의를 따른다.
이와 같은 경우, 센싱 방향
Figure PCTKR2022019737-appb-img-000057
는 센서로부터 눈의 중심을 향하는 방향 벡터로 3D 안구 모델의 위치 에러(positional error)를 보정하여 다음과 같이 결정될 수 있다.
Figure PCTKR2022019737-appb-img-000058
또한, 센싱 범위 θ는 동공의 면적을 포함하는 원뿔의 최소 중심각으로, 동공 스케일링 에러를 보정하여 다음과 같이 결정될 수 있다.
Figure PCTKR2022019737-appb-img-000059
도 16은 본 개시의 일 실시예에 따른 시선 추적 센서가, 시선 추적에 실패한 경우 센싱 영역을 단계적으로 확장하는 방법을 설명하기 위한 도면이다.
고정된 안구 모델을 사용하는 시선 추적 장치 1000는, 사용자의 눈 깜빡임, 또는 센서의 노이즈 등으로 인하여 시선 추적에 실패할 수 있고, 시선 추적에 실패하는 경우 시선 ‘추적’을 위한 단서가 없으므로 추적이 불가능하여 센싱 영역 결정에 실패하고 센싱 영역 결정을 위한 최초 센싱을 수행해야 한다.
본 개시의 실시예에 따른 시선 추적 센서는, 시선 추적 센서 데이터에 기초하여 안구 모델을 실시간으로 업데이트 함으로써, 센싱 영역을 실시간으로 변경할 수 있다.
도 16을 참조하면, 본 개시의 실시예에 따른 시선 추적 센서는, 소정 요인으로 인하여 시선 추적에 실패한 경우, 기존 센싱 영역보다 센싱 영역을 넓혀 센싱하고, 센싱 영역을 넓혔음에도 시선 추적에 실패하는 경우 보다 넓은 센싱 영역으로 단계적인 센싱 영역 확장을 시도할 수 있다. 예를 들어, 시선 추적에 실패한 경우 시선 추적 센서는 1차로 현재 안구 모델의 홍채 범위로 센싱 영역을 확대하여 안구 데이터 획득을 시도하고, 홍채 영역에서 안구 데이터를 획득하지 못한 경우 2차로 현재 안구 모델의 안구 전체 범위로 센싱 영역을 확대하여 안구 데이터 획득을 시도할 수 있다.
본 개시의 일 실시예에 따르면, 시선 추적 센서는 기설정된 범위 및 횟수에 따라 센싱 영역 확장을 시도하고, 임계 횟수(n_max)까지 안구 데이터 획득에 실패할 경우 시선 추적 센서의 센싱 가능 최대 범위(예를 들어, 하드웨어가 지원 가능한 최대 스캔 각도 θ_max)에서 센싱을 수행할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.

Claims (15)

  1. 시선 추적 센서의 센싱 영역을 결정하는 방법에 있어서,
    제1 센싱 영역에서 제1 안구 데이터를 획득(1110)하는 단계;
    상기 획득된 제1 안구 데이터에 기초하여 안구 모델을 획득(1120)하는 단계;
    상기 획득된 안구 모델에 기초하여 제2 센싱 영역을 결정(1130)하는 단계;를 포함하는, 방법.
  2. 제1 항에 있어서, 상기 안구 모델을 획득하는 단계는,
    상기 제1 안구 데이터에 기초하여 기존 안구 모델을 갱신하는 단계;를 포함하는, 방법.
  3. 제1 항 내지 제2 항 중 어느 한 항에 있어서,
    상기 제1 안구 데이터는, 상기 사용자 안구의 반짝임 특징점(glint feature point)의 위치, 안구의 크기와 위치, 동공(pupil)의 크기와 위치, 홍채(iris)의 크기와 위치, 및 각막(cornea)의 크기와 위치에 대한 정보 중 적어도 하나를 포함하는, 방법.
  4. 제1 항 내지 제3 항 중 어느 한 항에 있어서,
    상기 제2 센싱 영역을 식별하는 단계는, 상기 제1 센서 데이터를 3차원 공간으로 역투영(unprojection)하여 획득된 제1 데이터와 상기 제1 센서 데이터를 상기 안구 모델에 적용하여 획득된 제2 데이터를 비교하는 단계; 및
    상기 비교 결과에 기초하여, 상기 제2 센싱 영역을 결정하는 단계;를 포함하는, 방법.
  5. 제1 항 내지 제4 항 중 어느 한 항에 있어서,
    상기 제1 센싱 영역 및 상기 제2 센싱 영역은, 각각 센싱 중심점 및 센싱 범위에 기초하여 결정되는, 방법.
  6. 제1 항 내지 제5 항 중 어느 한 항 에 있어서,
    상기 제1 센싱 영역은, 상기 시선 추적 센서가 센싱 가능한 최대 범위에서 획득한 안구 데이터에 기초하여 결정된 센싱 영역인, 방법.
  7. 제1 항 내지 제6 항 중 어느 한 항에 있어서, 상기 방법은,
    상기 제2 센싱 영역에서 제2 안구 데이터를 획득하는 단계; 및
    상기 제2 안구 데이터를 이용한 시선 추적 실패에 기초하여, 제3 센싱 영역에서 제3 안구 데이터를 획득하는 단계;를 더 포함하고,
    상기 제3 센싱 영역은 상기 제2 센싱 영역과 센싱 중심점이 동일하고, 상기 제2 센싱 영역보다 센싱 범위가 더 넓은, 방법.
  8. 제1 센싱 영역으로 광을 방출하도록 구성되는 적어도 하나의 광 방출부(1520); 및
    적어도 하나의 광 수신부(1530);를 포함하고,
    상기 적어도 하나의 광 수신부(1530)는, 상기 적어도 하나의 광 방출부(1520)가 상기 제1 센싱 영역으로 방출한 광이 안구에 반사된 광에 기초하여 제1 안구 데이터를 획득하도록 구성되고,
    상기 적어도 하나의 광 방출부(1520)는, 상기 제1 안구 데이터에 기초하여 생성된 안구 모델에 기초하여 결정된 제2 센싱 영역으로 광을 방출하도록 구성되는, 시선 추적 센서.
  9. 시선 추적 장치에 있어서,
    광 방출부 및 광 수신부를 포함하는 적어도 하나의 센서(1510);
    적어도 하나의 명령어(instruction)를 포함하는 프로그램을 저장하는 저장부(1700); 및
    상기 저장부에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서(1800)를 포함하고,
    상기 적어도 하나의 프로세서는 상기 적어도 하나의 명령어를 실행함으로써,
    상기 적어도 하나의 센서로부터, 제1 센싱 영역에서 제1 안구 데이터를 획득(1110)하고,
    상기 제1 안구 데이터에 기초하여 안구 모델을 획득(1120)하고,
    상기 안구 모델에 기초하여 제2 센싱 영역을 결정(1130)하도록 구성되는, 장치.
  10. 제9 항에 있어서, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 명령어를 실행함으로써,
    상기 제1 안구 데이터에 기초하여 기존 안구 모델을 갱신하여, 상기 안구 모델을 획득하도록 구성되는, 장치.
  11. 제9 항 내지 제10 항 중 어느 한 항에 있어서,
    상기 제1 안구 데이터는, 상기 사용자 안구의 반짝임 특징점(glint feature point)의 위치, 안구의 크기와 위치, 동공(pupil)의 크기와 위치, 홍채(iris)의 크기와 위치, 및 각막(cornea)의 크기와 위치에 대한 정보 중 적어도 하나를 포함하는, 장치.
  12. 제9 항 내지 제11 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 명령어를 실행함으로써,
    상기 제1 센서 데이터를 3차원 공간으로 역투영(unprojection)하여 획득된 제1 데이터와 상기 제1 센서 데이터를 상기 안구 모델에 적용하여 획득된 제2 데이터를 비교하고, 상기 비교 결과에 기초하여, 상기 제2 센싱 영역을 결정하도록 구성되는, 장치.
  13. 제9 항 내지 제12 항 중 어느 한 항에 있어서,
    상기 제1 센싱 영역 및 상기 제2 센싱 영역은, 센싱 중심점 및 센싱 범위에 기초하여 식별되는, 장치.
  14. 제9 항 내지 제13 항 중 어느 한 항에 있어서,
    상기 제1 센싱 영역은, 상기 시선 추적 센서가 센싱 가능한 최대 범위에서 획득한 안구 데이터에 기초하여 식별되는, 장치.
  15. 제9 항 내지 제14 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 명령어를 실행함으로써,
    상기 제2 센싱 영역에서 제2 안구 데이터를 획득하고,
    상기 제2 안구 데이터를 이용한 시선 추적 실패에 기초하여, 제3 센싱 영역에서 제3 안구 데이터를 획득하도록 구성되며,
    상기 제3 센싱 영역은 상기 제2 센싱 영역과 센싱 중심점이 동일하고, 상기 제2 센싱 영역보다 센싱 범위가 더 넓은, 장치.
PCT/KR2022/019737 2021-12-29 2022-12-06 안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서 Ceased WO2023128358A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202280086780.9A CN118475967A (zh) 2021-12-29 2022-12-06 基于眼球模型确定感测范围的视线跟踪方法和设备、以及视线跟踪传感器
EP22916504.8A EP4414952A4 (en) 2021-12-29 2022-12-06 GAZE TRACKING METHOD AND DEVICE FOR DETERMINING THE DETECTION AREA BASED ON AN EYEBALL MODEL AND GAZE TRACKING SENSOR
US18/084,084 US12579664B2 (en) 2021-12-29 2022-12-19 Eye tracking method, apparatus and sensor for determining sensing coverage based on eye model

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210191799A KR20230101580A (ko) 2021-12-29 2021-12-29 안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서
KR10-2021-0191799 2021-12-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/084,084 Continuation US12579664B2 (en) 2021-12-29 2022-12-19 Eye tracking method, apparatus and sensor for determining sensing coverage based on eye model

Publications (1)

Publication Number Publication Date
WO2023128358A1 true WO2023128358A1 (ko) 2023-07-06

Family

ID=86999507

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/019737 Ceased WO2023128358A1 (ko) 2021-12-29 2022-12-06 안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서

Country Status (2)

Country Link
KR (1) KR20230101580A (ko)
WO (1) WO2023128358A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130043366A (ko) * 2011-10-20 2013-04-30 경북대학교 산학협력단 시선 추적 장치와 이를 이용하는 디스플레이 장치 및 그 방법
KR20140045873A (ko) * 2012-10-09 2014-04-17 한국전자통신연구원 시선 추적 장치 및 방법
KR20140125713A (ko) * 2013-04-19 2014-10-29 삼성전자주식회사 카메라 어레이에 기반하여 시선을 추적하는 방법 및 장치
KR20170046413A (ko) * 2015-10-21 2017-05-02 삼성전자주식회사 피사체의 눈 검출 방법 및 그 전자 장치
KR20210104107A (ko) * 2019-03-18 2021-08-24 베이징 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드 주시 영역 검출 방법, 장치 및 전자 디바이스

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130043366A (ko) * 2011-10-20 2013-04-30 경북대학교 산학협력단 시선 추적 장치와 이를 이용하는 디스플레이 장치 및 그 방법
KR20140045873A (ko) * 2012-10-09 2014-04-17 한국전자통신연구원 시선 추적 장치 및 방법
KR20140125713A (ko) * 2013-04-19 2014-10-29 삼성전자주식회사 카메라 어레이에 기반하여 시선을 추적하는 방법 및 장치
KR20170046413A (ko) * 2015-10-21 2017-05-02 삼성전자주식회사 피사체의 눈 검출 방법 및 그 전자 장치
KR20210104107A (ko) * 2019-03-18 2021-08-24 베이징 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드 주시 영역 검출 방법, 장치 및 전자 디바이스

Also Published As

Publication number Publication date
KR20230101580A (ko) 2023-07-06

Similar Documents

Publication Publication Date Title
WO2020209491A1 (en) Head-mounted display device and operating method of the same
WO2022139375A1 (en) Augmented reality device and operating method thereof
US10395111B2 (en) Gaze-tracking system and method
WO2020242085A1 (en) Augmented reality device for adjusting focus region according to direction of user's view and operating method of the same
WO2018155892A1 (en) Method for displaying virtual image, storage medium and electronic device therefor
WO2019147021A1 (en) Device for providing augmented reality service, and method of operating the same
WO2020171637A1 (en) Apparatus and method for displaying contents on an augmented reality device
EP3818431A1 (en) Augmented reality device for adjusting focus region according to direction of user's view and operating method of the same
US12579664B2 (en) Eye tracking method, apparatus and sensor for determining sensing coverage based on eye model
WO2021125903A1 (en) Wearable device including eye tracking apparatus and operation method of the wearable device
WO2021246777A1 (en) Device and method for displaying augmented reality
WO2019151817A1 (en) Apparatus and method for tracking a focal point in a head mounted display system
WO2022186546A1 (ko) 차량의 윈드 쉴드에 이미지를 투사하는 전자 장치 및 그 동작 방법
WO2022215895A1 (ko) 복수의 카메라를 포함하는 웨어러블 전자 장치
WO2022270852A1 (ko) 가변 초점 렌즈를 포함하는 증강 현실 디바이스 및 그 동작 방법
WO2022164094A1 (ko) Hmd(head mounted display)의 영상 처리 방법 및 이 방법을 실행하는 hmd
WO2022010152A1 (ko) 사용자의 시력을 교정하고 캘리브레이션을 수행하는 디바이스 및 방법
WO2021230559A1 (ko) 전자 장치 및 그 동작 방법
WO2022231206A1 (ko) 객체의 깊이 정보를 획득하는 증강 현실 디바이스 및 그 동작 방법
WO2023128358A1 (ko) 안구 모델에 기초하여 센싱 범위를 결정하는 시선 추적 방법, 장치 및 시선 추적 센서
WO2025014092A1 (ko) 증강 현실 장치 및 그 동작 방법
WO2023282524A1 (ko) 시력 측정 및 시력 교정을 제공하는 증강 현실 장치 및 방법
WO2022146018A1 (ko) 전자 장치 및 그의 제어 방법
WO2026063609A1 (ko) 헤드 마운트 디스플레이 장치 및 그 동작 방법
WO2022158795A1 (ko) 사용자의 시선을 검출하는 증강 현실 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22916504

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022916504

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022916504

Country of ref document: EP

Effective date: 20240506

WWE Wipo information: entry into national phase

Ref document number: 202280086780.9

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE