KR102225002B1 - Deep neural network based object detecting apparatus and method - Google Patents
Deep neural network based object detecting apparatus and method Download PDFInfo
- Publication number
- KR102225002B1 KR102225002B1 KR1020180086435A KR20180086435A KR102225002B1 KR 102225002 B1 KR102225002 B1 KR 102225002B1 KR 1020180086435 A KR1020180086435 A KR 1020180086435A KR 20180086435 A KR20180086435 A KR 20180086435A KR 102225002 B1 KR102225002 B1 KR 102225002B1
- Authority
- KR
- South Korea
- Prior art keywords
- eye
- search area
- state
- area
- detecting
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000013528 artificial neural network Methods 0.000 title description 2
- 238000001514 detection method Methods 0.000 claims abstract description 76
- 230000000193 eyeblink Effects 0.000 claims abstract description 49
- 230000004397 blinking Effects 0.000 claims abstract description 46
- 238000012706 support-vector machine Methods 0.000 claims abstract description 29
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 19
- 238000005259 measurement Methods 0.000 claims description 21
- 238000000611 regression analysis Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 240000001436 Antirrhinum majus Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 208000029257 vision disease Diseases 0.000 description 1
Images
Classifications
-
- G06K9/00597—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/18—Eye characteristics, e.g. of the iris
-
- G06K9/4642—
-
- G06K9/481—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/469—Contour-based spatial representations, e.g. vector-coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/766—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using regression, e.g. by projecting features on hyperplanes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Ophthalmology & Optometry (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
효율적인 동시에 신뢰성 있게 눈 깜빡임(eye blinking)을 검출할 수 있는 눈 깜빡임 검출 장치 및 눈 깜빡임 검출 방법이 개시된다. 본 발명의 실시예에 따른 눈 깜빡임 검출 방법은 서포트 벡터 머신을 기반으로, 입력 화상 프레임에서 눈 영역을 검출하는 단계; 및 콘볼루션 신경망 모델을 기반으로, 눈 영역 내에서 눈 깜빡임 상태를 판단하는 단계를 포함한다.Disclosed are an eye blink detection apparatus and a method for detecting eye blinking capable of efficiently and reliably detecting eye blinking. An eye blink detection method according to an embodiment of the present invention includes: detecting an eye area in an input image frame based on a support vector machine; And determining an eye blinking state within the eye area based on the convolutional neural network model.
Description
본 발명은 심층신경망 기반 객체 검출 장치 및 방법에 관한 것으로, 보다 상세하게는 효율적인 동시에 신뢰성 있게 눈 깜빡임(eye blinking)을 검출할 수 있는 눈 깜빡임 검출 장치 및 눈 깜빡임 검출 방법에 관한 것이다.The present invention relates to an apparatus and method for detecting objects based on a deep neural network, and more particularly, to an apparatus for detecting eye blinking and a method for detecting eye blinking that can efficiently and reliably detect eye blinking.
눈 깜빡임 검출 또는 눈 추적 알고리즘들은 모바일 환경(예컨대, 스마트폰 플랫폼)에서 다양한 응용들을 가지고 있다. 예를 들어, 눈 깜빡임 검출 알고리즘은 얼굴 인식 시스템에서 스푸핑(spoofing)을 방지하기 위해 사용될 수 있다. 다른 예로, 눈 깜빡임 검출 시스템들은 많은 스마트폰 사용자들이 겪고 있는 컴퓨터 비전 질환을 경감시킬 수 있도록, 스마트폰 사용자들에게 사용자들의 눈 깜빡임 습관에 관하여 충고를 하는데 사용될 수 있다.Eye blink detection or eye tracking algorithms have various applications in a mobile environment (eg, a smartphone platform). For example, an eye blink detection algorithm can be used to prevent spoofing in a face recognition system. As another example, the eye blink detection systems may be used to advise smartphone users about their eye blink habits so as to alleviate computer vision disorders that many smartphone users suffer from.
비디오 입력을 기반으로 하는 눈 추적 및 눈 깜빡임 검출 알고리즘들에 관하여 다양한 연구가 있어 왔다. 그러나, 종래의 기법들은 데스크탑 환경을 위해 개발되었으며, 스마트폰의 연산 자원 제한 및/또는 입력 비디오 프레임에서 사용자 움직임에 의한 눈의 잦은 위치 변경으로 인해, 모바일/스마트폰 환경에서 적절히 작동하지 않을 수 있다.There have been various studies on eye tracking and eye blink detection algorithms based on video input. However, conventional techniques have been developed for a desktop environment, and may not operate properly in a mobile/smart phone environment due to the limitation of computational resources of the smartphone and/or frequent change of the position of the eye due to the user's movement in the input video frame. .
본 발명은 효율적인 동시에 신뢰성 있게 눈 깜빡임(eye blinking)을 검출할 수 있는 눈 깜빡임 검출 장치, 눈 깜빡임 검출 방법 및 기록 매체를 제공하기 위한 것이다.The present invention is to provide an apparatus for detecting eye blinking, a method for detecting eye blinking, and a recording medium capable of efficiently and reliably detecting eye blinking.
또한, 본 발명은 스마트폰과 같은 모바일 단말기의 한정된 연산 자원을 이용하여 눈 깜빡임을 높은 신뢰도로 검출할 수 있는 눈 깜빡임 검출 장치, 눈 깜빡임 검출 방법 및 기록 매체를 제공하기 위한 것이다.In addition, the present invention is to provide an eye blink detection apparatus, an eye blink detection method, and a recording medium capable of detecting eye blink with high reliability using limited computational resources of a mobile terminal such as a smart phone.
본 발명이 해결하고자 하는 과제는 이상에서 언급된 과제로 제한되지 않는다. 언급되지 않은 다른 기술적 과제들은 이하의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the problems mentioned above. Other technical problems not mentioned will be clearly understood by those of ordinary skill in the art from the following description.
본 발명의 일 측면에 따른 눈 깜빡임 검출 방법은 서포트 벡터 머신을 기반으로, 입력 화상 프레임에서 눈 영역을 검출하는 단계; 및 콘볼루션 신경망 모델을 기반으로, 상기 눈 영역 내에서 눈 깜빡임 상태를 판단하는 단계를 포함한다.An eye blink detection method according to an aspect of the present invention includes: detecting an eye area in an input image frame based on a support vector machine; And determining an eye blinking state within the eye area based on the convolutional neural network model.
상기 눈 영역을 검출하는 단계는, 상기 서포트 벡터 머신 및 에지 방향 히스토그램 특징을 기반으로 상기 눈 영역을 검출할 수 있다.In the detecting of the eye area, the eye area may be detected based on the support vector machine and edge direction histogram features.
상기 눈 깜빡임 상태를 판단하는 단계는, LeNet-5 콘볼루션 신경망 모델을 기반으로 상기 눈 깜빡임 상태를 판단할 수 있다.In determining the eye blinking state, the eye blinking state may be determined based on a LeNet-5 convolutional neural network model.
상기 눈 깜빡임 상태를 판단하는 단계는, 상기 눈 영역에 대해 감은 눈 상태, 뜬 눈 상태 및 배경 상태 중의 어느 하나를 결정할 수 있다.In determining the eye blinking state, any one of a closed eye state, an open eye state, and a background state for the eye area may be determined.
상기 눈 깜빡임 검출 방법은 상기 입력 화상 프레임에서 눈 검출을 위한 탐색 영역을 설정하는 단계를 더 포함할 수 있다.The eye blink detection method may further include setting a search area for eye detection in the input image frame.
상기 눈 영역을 검출하는 단계는, 상기 탐색 영역 내에서 상기 서포트 벡터 머신을 기반으로 상기 눈 영역을 검출할 수 있다.In the detecting of the eye area, the eye area may be detected in the search area based on the support vector machine.
상기 탐색 영역을 설정하는 단계는, 상기 입력 화상 프레임을 획득한 모바일 단말기에 의해 측정되는 방향 측정값을 기반으로 상기 탐색 영역을 설정할 수 있다.In the step of setting the search area, the search area may be set based on a direction measurement value measured by the mobile terminal that has obtained the input image frame.
상기 눈 깜빡임 검출 방법은, 상기 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들 및 상기 이미지들이 획득된 시점들에서의 상기 모바일 단말기의 방향 정보들을 기반으로, 회귀 분석에 의해 상기 눈 위치 정보들 및 상기 방향 정보들 간의 관계를 나타내는 회귀 방정식을 결정하는 단계를 더 포함할 수 있다.The eye blink detection method includes, based on eye position information on images acquired by the mobile terminal and direction information of the mobile terminal at points when the images are acquired, the eye position information by regression analysis. It may further include determining a regression equation representing a relationship between the directional information and the direction information.
상기 탐색 영역을 설정하는 단계는, 상기 회귀 방정식에 상기 방향 측정값을 적용하여 상기 눈 위치를 추정하는 단계; 및 추정된 상기 눈 위치를 중심으로 상기 탐색 영역을 설정하는 단계를 포함할 수 있다.The setting of the search area may include estimating the eye position by applying the direction measurement value to the regression equation; And setting the search area around the estimated eye position.
상기 탐색 영역의 크기는 상기 회귀 방정식에 대한 편차 정보를 기반으로 설정될 수 있다.The size of the search area may be set based on deviation information for the regression equation.
상기 눈 영역을 검출하는 단계는, 상기 탐색 영역을 복수개의 상이한 크기를 가지는 슬라이딩 윈도우들로 스캔하는 단계; 상기 슬라이딩 윈도우들에 대해, 상기 서포트 벡터 머신을 기반으로 눈 모양과의 유사도를 나타내는 스코어들을 산출하는 단계; 및 상기 스코어들을 기반으로 상기 탐색 영역에서 상기 눈 위치를 검출하는 단계를 포함할 수 있다.The detecting of the eye area may include scanning the search area with sliding windows having a plurality of different sizes; Calculating scores representing a similarity to an eye shape for the sliding windows based on the support vector machine; And detecting the eye position in the search area based on the scores.
상기 눈 영역을 검출하는 단계는, 설정된 기준값 이상의 스코어를 가지는 적어도 하나의 슬라이딩 윈도우 중 가장 작은 크기의 슬라이딩 윈도우를 기반으로 상기 눈 영역을 검출할 수 있다.In the detecting of the eye area, the eye area may be detected based on a sliding window having a smallest size among at least one sliding window having a score equal to or greater than a set reference value.
본 발명의 다른 측면에 따르면, 상기 눈 깜빡임 검출 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.According to another aspect of the present invention, a computer-readable recording medium in which a program for executing the eye blink detection method is recorded is provided.
본 발명의 또 다른 측면에 따르면, 서포트 벡터 머신을 기반으로, 입력 화상 프레임에서 눈 영역을 검출하도록 구성되는 검출부; 및 콘볼루션 신경망 모델을 기반으로, 상기 눈 영역 내에서 눈 깜빡임 상태를 판단하도록 구성되는 판단부를 포함하는 눈 깜빡임 검출 장치가 제공된다.According to another aspect of the present invention, there is provided a detection unit configured to detect an eye area in an input image frame based on a support vector machine; And a determination unit configured to determine an eye blink state within the eye region based on a convolutional neural network model.
상기 검출부는, 상기 서포트 벡터 머신 및 에지 방향 히스토그램 특징을 기반으로 상기 눈 영역을 검출할 수 있다.The detection unit may detect the eye region based on features of the support vector machine and edge direction histogram.
상기 판단부는, LeNet-5 콘볼루션 신경망 모델을 기반으로, 감은 눈 상태, 뜬 눈 상태 및 배경 상태 중에서 눈 깜빡임 상태를 결정할 수 있다.The determination unit may determine an eye blinking state from among a closed eye state, an open eye state, and a background state based on the LeNet-5 convolutional neural network model.
상기 눈 깜빡임 검출 장치는, 상기 입력 화상 프레임에서 눈 검출을 위한 탐색 영역을 설정하도록 구성되는 설정부를 더 포함할 수 있다.The eye blink detection apparatus may further include a setting unit configured to set a search area for eye detection in the input image frame.
상기 설정부는, 상기 입력 화상 프레임을 획득한 모바일 단말기에 의해 측정되는 방향 측정값을 기반으로 상기 탐색 영역을 설정하도록 구성될 수 있다.The setting unit may be configured to set the search area based on a direction measurement value measured by the mobile terminal that has obtained the input image frame.
상기 검출부는, 상기 탐색 영역 내에서 상기 서포트 벡터 머신을 기반으로 상기 눈 영역을 검출하도록 구성될 수 있다.The detection unit may be configured to detect the eye area in the search area based on the support vector machine.
상기 설정부는, 상기 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들 및 상기 이미지들이 획득된 시점들에서의 상기 모바일 단말기의 방향 정보들을 기반으로, 회귀 분석에 의해 상기 눈 위치 정보들 및 상기 방향 정보들 간의 관계를 나타내는 회귀 방정식을 결정하도록 구성될 수 있다.The setting unit, based on the eye position information on the images acquired by the mobile terminal and the direction information of the mobile terminal at the time points at which the images are acquired, the eye position information and the It can be configured to determine a regression equation representing the relationship between the direction information.
상기 설정부는, 상기 회귀 방정식에 상기 방향 측정값을 적용하여 상기 눈 위치를 추정하고; 상기 회귀 방정식에 대한 편차 정보를 기반으로 상기 탐색 영역의 크기를 결정하고; 그리고 추정된 상기 눈 위치 및 상기 탐색 영역의 크기를 기반으로 상기 탐색 영역을 설정하도록 구성될 수 있다.The setting unit estimates the eye position by applying the direction measurement value to the regression equation; Determining the size of the search area based on the deviation information for the regression equation; And it may be configured to set the search area based on the estimated eye position and the size of the search area.
상기 검출부는, 상기 탐색 영역을 복수개의 상이한 크기를 가지는 슬라이딩 윈도우들로 스캔하고; 상기 슬라이딩 윈도우들에 대해 상기 서포트 벡터 머신을 기반으로 눈 모양과의 유사도를 나타내는 스코어들을 산출하고; 상기 스코어들을 기반으로 상기 탐색 영역에서 상기 눈 위치를 검출하고; 그리고 설정된 기준값 이상의 스코어를 가지는 적어도 하나의 슬라이딩 윈도우 중 가장 작은 크기의 슬라이딩 윈도우를 기반으로 상기 눈 영역을 검출하도록 구성될 수 있다.The detection unit scans the search area with a plurality of sliding windows having different sizes; Calculating scores representing a similarity to an eye shape for the sliding windows based on the support vector machine; Detecting the eye position in the search area based on the scores; In addition, it may be configured to detect the eye region based on a sliding window having a smallest size among at least one sliding window having a score equal to or greater than a set reference value.
본 발명의 실시예에 의하면, 효율적인 동시에 신뢰성 있게 눈 깜빡임(eye blinking)을 검출할 수 있는 눈 깜빡임 검출 장치, 눈 깜빡임 검출 방법 및 기록 매체가 제공된다.According to an embodiment of the present invention, an apparatus for detecting eye blinking, a method for detecting eye blinking, and a recording medium capable of efficiently and reliably detecting eye blinking are provided.
또한, 본 발명의 실시예에 의하면, 스마트폰과 같은 모바일 단말기의 한정된 연산 자원을 이용하여 눈 깜빡임을 높은 신뢰도로 검출할 수 있는 눈 깜빡임 검출 장치, 눈 깜빡임 검출 방법 및 기록 매체가 제공된다.In addition, according to an embodiment of the present invention, an eye blink detection apparatus, an eye blink detection method, and a recording medium capable of detecting eye blink with high reliability using limited computational resources of a mobile terminal such as a smart phone are provided.
본 발명의 효과는 상술한 효과들로 제한되지 않는다. 언급되지 않은 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.The effects of the present invention are not limited to the above-described effects. Effects not mentioned will be clearly understood by those of ordinary skill in the art from the present specification and the accompanying drawings.
도 1은 본 발명의 일 실시예에 따른 눈 깜빡임 검출 방법의 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 눈 깜빡임 검출 장치의 구성도이다.
도 3은 본 발명의 실시예에 따라 입력 화상 프레임에서 탐색 영역을 설정하고, 눈 영역을 검출한 것을 보여주는 예시도이다.
도 4는 본 발명의 실시예에 따른 눈 깜빡임 검출 방법의 상태 전환도이다.
도 5는 도 1의 단계 S10의 흐름도이다.
도 6은 본 발명의 실시예에 따른 눈 깜빡임 검출 장치를 구성하는 설정부의 구성도이다.
도 7은 도 1의 단계 S20의 흐름도이다.
도 8은 본 발명의 실시예에 따른 눈 깜빡임 검출 방법의 정확도를 보여주는 도면이다.1 is a flowchart of an eye blink detection method according to an embodiment of the present invention.
2 is a block diagram of an apparatus for detecting eye blinking according to an embodiment of the present invention.
3 is an exemplary diagram illustrating setting a search area and detecting an eye area in an input image frame according to an embodiment of the present invention.
4 is a state transition diagram of an eye blink detection method according to an embodiment of the present invention.
5 is a flowchart of step S10 of FIG. 1.
6 is a configuration diagram of a setting unit configuring an apparatus for detecting blinking eyes according to an exemplary embodiment of the present invention.
7 is a flowchart of step S20 of FIG. 1.
8 is a diagram showing the accuracy of a method for detecting eye blinking according to an embodiment of the present invention.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술하는 실시예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되지 않으며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 갖는다. 공지된 구성에 대한 일반적인 설명은 본 발명의 요지를 흐리지 않기 위해 생략될 수 있다. 본 발명의 도면에서 동일하거나 상응하는 구성에 대하여는 가급적 동일한 도면부호가 사용된다. 본 발명의 이해를 돕기 위하여, 도면에서 일부 구성은 다소 과장되거나 축소되어 도시될 수 있다.Other advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments to be described later in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, and the present invention is only defined by the scope of the claims. Even if not defined, all terms (including technical or scientific terms) used herein have the same meaning as commonly accepted by universal technology in the prior art to which this invention belongs. A general description of known configurations may be omitted so as not to obscure the subject matter of the present invention. In the drawings of the present invention, the same reference numerals are used as much as possible for the same or corresponding configurations. In order to help the understanding of the present invention, some configurations in the drawings may be somewhat exaggerated or reduced.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다", "가지다" 또는 "구비하다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise", "have" or "have" are intended to designate the existence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification. It is to be understood that the possibility of the presence or addition of other features, numbers, steps, actions, components, parts, or combinations thereof, or any further features, is not preliminarily excluded.
본 명세서 전체에서 사용되는 '~부'는 적어도 하나의 기능이나 동작을 처리하는 단위로서, 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부'가 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.The'~ unit' used throughout this specification is a unit that processes at least one function or operation, and may mean, for example, a hardware component such as software, FPGA, or ASIC. However,'~ part' does not mean limited to software or hardware. The'~ unit' may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors.
일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함할 수 있다. 구성요소와 '~부'에서 제공하는 기능은 복수의 구성요소 및 '~부'들에 의해 분리되어 수행될 수도 있고, 다른 추가적인 구성요소와 통합될 수도 있다.As an example,'~ unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, and subs. Routines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The components and functions provided by the'~ units' may be performed separately by a plurality of elements and the'~ units', or may be integrated with other additional elements.
본 발명의 실시예에 의하면, 자원이 한정된 스마트폰 플랫폼에서 눈 깜빡임의 효율적 검출을 위해 사용될 수 있는 눈 깜빡임 검출 장치, 눈 깜빡임 검출 방법 및 기록 매체가 제공된다.According to an embodiment of the present invention, there is provided an eye blink detection apparatus, an eye blink detection method, and a recording medium that can be used for efficient detection of eye blink in a smartphone platform with limited resources.
신뢰성 있는 눈 깜빡임 검출을 위해서는 실시간 처리가 요구되며, 10 fps 이상의 처리율이 요구된다. 따라서, 눈 추적 알고리즘에 적용되는 경우에 비해 눈 깜빡임 검출 알고리즘의 경우, 콘볼루션 신경망 모델의 적용이 어려울 수 있다.Real-time processing is required for reliable eye blink detection, and a throughput of 10 fps or more is required. Therefore, it may be difficult to apply the convolutional neural network model in the case of the eye blink detection algorithm compared to the case where it is applied to the eye tracking algorithm.
본 발명의 실시예에 따른 눈 깜빡임 검출 방법 및 눈 깜빡임 검출 장치는 서포트 벡터 머신(Support Vector Machine)과, 콘볼루션 신경망(Convolutional Neural Network) 모델을 포함하는 이종 혼성 학습(Hybrid learning) 시스템에 의해 눈 깜빡임(Eye-blinking)을 검출한다.An eye blink detection method and an eye blink detection apparatus according to an embodiment of the present invention are provided by a hybrid learning system including a support vector machine and a convolutional neural network model. It detects eye-blinking.
본 발명의 실시예에 의하면, 서포트 벡터 머신과 콘볼루션 신경망에 의한 이종 혼성 학습 시스템에 의해, 효율적이고 신뢰성 있게 사용자의 눈 깜빡임을 검출할 수 있으며, 스마트폰과 같은 모바일 단말기의 한정된 연산 자원을 이용하여 눈 깜빡임을 검출할 수 있다.According to an embodiment of the present invention, by a heterogeneous hybrid learning system using a support vector machine and a convolutional neural network, it is possible to efficiently and reliably detect the user's blinking, and use limited computational resources of a mobile terminal such as a smartphone. Thus, the blinking of an eye can be detected.
본 발명의 실시예에 따른 눈 깜빡임 검출 방법 및 눈 깜빡임 검출 장치는 먼저 서포트 벡터 머신을 기반으로 입력 화상 프레임에서 눈 영역을 검출한 후, 서포트 벡터 머신을 기반으로 검출된 눈 영역 내에서 서포트 벡터 머신 대신 콘볼루션 신경망 모델을 기반으로 눈 깜빡임 상태를 판단한다.The eye blink detection method and the eye blink detection apparatus according to an embodiment of the present invention first detect an eye region in an input image frame based on a support vector machine, and then a support vector machine within the detected eye region based on a support vector machine. Instead, it determines the blinking state based on the convolutional neural network model.
또한, 본 발명의 실시예에 따른 눈 깜빡임 검출 방법 및 눈 깜빡임 검출 장치는 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들과 모바일 단말기에 의해 측정된 방향 정보들을 기반으로, 회귀 분석에 의해 눈 위치 정보들 및 방향 정보들 간의 관계를 나타내는 회귀 방정식을 결정하고, 회귀 방정식에 입력 화상 프레임을 획득한 모바일 단말기의 방향 측정값을 적용하여 탐색 영역을 설정한다. 이에 따라, 사용자의 모바일 단말기 사용 습관을 반영하여, 사용자의 눈 위치를 검출하기 위한 탐색 영역을 정확하고 효율적으로 설정할 수 있다.In addition, the eye blink detection method and the eye blink detection apparatus according to an embodiment of the present invention are based on eye position information on images acquired by the mobile terminal and direction information measured by the mobile terminal, by regression analysis. A regression equation representing a relationship between eye position information and direction information is determined, and a search area is set by applying a direction measurement value of a mobile terminal that has acquired an input image frame to the regression equation. Accordingly, it is possible to accurately and efficiently set a search area for detecting the user's eye position by reflecting the user's habit of using the mobile terminal.
도 1은 본 발명의 일 실시예에 따른 눈 깜빡임 검출 방법의 흐름도이다. 도 2는 본 발명의 일 실시예에 따른 눈 깜빡임 검출 장치의 구성도이다. 도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 눈 깜빡임 검출 방법은 눈 깜빡임 검출 장치(100)에 의해 수행될 수 있다. 눈 깜빡임 검출 장치(100)는 사용자의 모바일 단말기에 제공될 수 있다. 눈 깜빡임 검출 장치(100)는 모바일 단말기에 장착되거나, 앱(Application)으로 설치될 수 있다.1 is a flowchart of an eye blink detection method according to an embodiment of the present invention. 2 is a block diagram of an apparatus for detecting eye blinking according to an embodiment of the present invention. 1 and 2, an eye blink detection method according to an embodiment of the present invention may be performed by the eye
실시예에서, 모바일 단말기(예를 들어, 스마트폰)에 의해 입력 화상 프레임들이 획득될 수 있다. 입력 화상 프레임들은 모바일 단말기의 카메라(도시생략)에 의해 촬영된 입력 비디오/사진 프레임들일 수 있다. 입력 화상 프레임들은 눈 깜빡임 검출 장치(100)로 입력된다. 도 1에 도시된 눈 깜빡임 검출 방법의 단계들(S10 내지 S30)은 연속된 입력 화상 프레임들에 대해 각각 순차적으로 수행될 수 있다.In an embodiment, input image frames may be obtained by a mobile terminal (eg, a smartphone). The input image frames may be input video/photo frames captured by a camera (not shown) of the mobile terminal. The input image frames are input to the eye
눈 깜빡임 검출 장치(100)는 설정부(110), 검출부(120), 판단부(130), 저장부(140) 및 방향 측정부(150)를 포함할 수 있다. 도 3은 본 발명의 실시예에 따라 입력 화상 프레임에서 탐색 영역을 설정하고, 눈 영역을 검출한 것을 보여주는 예시도이다. 도 1 내지 도 3을 참조하면, 설정부(110)는 입력 화상 프레임에서 눈 검출을 위한 탐색 영역(ROI; Region of Interest)을 설정한다(S10).The eye
실시예에서, 설정부(110)는 입력 화상 프레임을 획득한 모바일 단말기에 의해 측정되는 방향 측정값을 기반으로 회귀 분석(regression analysis)에 의해 탐색 영역(ROI)을 설정할 수 있다. 회귀 분석에 의해 입력 화상 프레임에서 탐색 영역(ROI)을 설정하기 위한 구체적인 방법에 대하여는 후술하기로 한다.In an embodiment, the
입력 화상 프레임에서 탐색 영역(ROI)이 설정되면, 검출부(120)는 서포트 벡터 머신을 기반으로, 입력 화상 프레임의 탐색 영역(ROI) 내에서 눈 영역(CR)을 검출한다(S20). 실시예에서, 검출부(120)는 서포트 벡터 머신 및 에지 방향 히스토그램(HOG; Histogram of Oriented Gradients) 특징을 기반으로 눈 영역(CR)을 검출할 수 있다.When the search area ROI is set in the input image frame, the
실시예에서, 탐색 영역(ROI) 내에서 두 개의 눈 영역(CR)이 검출될 수 있다. 도 3의 도시와 다르게, 두 개의 탐색 영역(ROI) 내에서 각각 하나씩 눈 영역(CR)을 검출하거나, 하나의 탐색 영역(ROI) 내에서 하나의 눈 영역(CR) 만 검출하는 것도 가능하다.In an embodiment, two eye regions CR may be detected within the search region ROI. Unlike the illustration of FIG. 3, it is possible to detect one eye area CR within two search areas ROI, or detect only one eye area CR within one search area ROI.
입력 화상 프레임에서 눈 영역(CR)이 검출되면, 판단부(130)는 콘볼루션 신경망 모델을 기반으로, 눈 영역(CR) 내에서 눈 깜빡임 상태를 판단한다(S30). 실시예에서, 판단부(130)는 LeNet-5 콘볼루션 신경망 모델을 기반으로 사용자의 눈 깜빡임 상태를 판단할 수 있다.When the eye area CR is detected in the input image frame, the
판단부(130)는 눈 영역(CR)에 대해 감은 눈(Closed eye) 상태, 뜬 눈(Opened eye) 상태 및 배경(Background) 상태 중의 어느 하나의 눈 깜빡임 상태를 결정할 수 있다.The
감은 눈 상태는 입력 화상 프레임에서 사용자가 눈을 감은 상태를 의미하고, 뜬 눈 상태는 입력 화상 프레임에서 사용자가 눈을 뜬 상태를 의미한다. 판단부(130)가 눈 영역(CR)을 배경 상태(Background class)로 분류하는 경우, 눈이 검출될 수 없는 잘못된 영역일 가능성이 높은 것을 의미한다.The closed eye state means a state in which the user's eyes are closed in the input image frame, and the open eye state means the state in which the user's eyes are open in the input image frame. When the
본 발명의 실시예에 의하면, 1차로, 입력 화상 프레임의 탐색 영역(ROI) 내에서 서포트 벡터 머신에 의해 눈 영역(CR)을 검출한 후, 2차로, 전체 탐색 영역(ROI)을 이용하여 눈 깜빡임 상태를 검출하지 않고, 서포트 벡터 머신을 기반으로 검출된 눈 영역(CR) 만을 이용하여 눈 깜빡임 상태를 검출하므로, 효율적으로 사용자의 눈 깜빡임을 검출할 수 있다.According to an embodiment of the present invention, firstly, after detecting the eye area CR by a support vector machine within the search area ROI of the input image frame, secondly, the eye area CR is detected using the entire search area ROI. Since the blinking state is detected using only the eye region CR detected based on the support vector machine without detecting the blinking state, it is possible to efficiently detect the blinking of the user's eyes.
본 발명의 실시예에 의하면, 서포트 벡터 머신의 장점과, 콘볼루션 신경망 모델의 장점을 얻을 수 있다. 즉, 서포트 벡터 머신의 적용에 의해 연산 효율성을 높이고, 높은 프레임 처리율을 얻을 수 있는 동시에, 콘볼루션 신경망 모델의 적용에 의해 신뢰성 있게 눈 깜빡임을 검출할 수 있으며, 실제 눈 깜빡임이 없었으나 눈 깜빡임으로 검출하는 부정 오류(false-negative) 검출을 최소화할 수 있다.According to an embodiment of the present invention, the advantages of the support vector machine and the convolutional neural network model can be obtained. In other words, by applying a support vector machine, it is possible to increase computational efficiency and obtain a high frame throughput, and at the same time, by applying a convolutional neural network model, eye blinking can be reliably detected. It is possible to minimize the detection of false-negative.
저장부(140)는 입력 화상 프레임들, 입력 화상 프레임들에서 눈 깜빡임 검출을 위한 프로그램(알고리즘)과, 모바일 단말기의 방향 측정값, 탐색 영역의 추정을 위한 회귀 분석 데이터, 회귀 분석 데이터의 생성을 위한 이미지들에서의 눈 위치 정보들 및 이미지들의 촬영 시점에서의 모바일 단말기의 방향 정보들, 등의 각종 정보들을 저장할 수 있다.The
방향 측정부(150)는 모바일 단말기의 방향을 측정하기 위한 것으로, 예를 들어, 자이로 센서 등의 가속도 센서, 지자기 센서 등을 포함할 수 있다. 방향 측정부(150)는 3축 가속도 측정 값을 기반으로, 모바일 단말기의 방향(자세) 정보를 측정할 수 있다. 모바일 단말기의 방향 측정값은 입력 화상 프레임에서 탐색 영역의 추정을 위해 활용될 수 있으며, 이에 대하여는 후술하기로 한다.The
도 4는 본 발명의 실시예에 따른 눈 깜빡임 검출 방법의 상태 전환도이다. 도 4를 참조하면, 본 발명의 실시예에 따른 눈 깜빡임 검출 방법은 탐지 상태와, 추적 상태의 두 상태들 간을 전환하면서 입력 화상 프레임들로부터 사용자의 눈 깜빡임을 검출할 수 있다.4 is a state transition diagram of an eye blink detection method according to an embodiment of the present invention. Referring to FIG. 4, the eye blink detection method according to an embodiment of the present invention may detect a user's eye blink from input image frames while switching between two states of a detection state and a tracking state.
탐지 상태는 사용자의 눈이 탐지되지 못한 경우, 사용자의 눈을 탐지하기 위한 상태이다. 탐지 상태 중에 사용자의 눈이 탐지되면, 추적 상태로 전환된다. 추적 상태는 사용자의 눈이 탐지된 경우, 사용자의 눈을 추적하기 위한 상태이다. 추적 상태 중에 사용자의 눈을 탐지하는데 실패하는 경우, 탐지 상태로 전환된다.The detection state is a state for detecting the user's eyes when the user's eyes are not detected. If the user's eyes are detected during the detection state, it is switched to the tracking state. The tracking state is a state for tracking the user's eyes when the user's eyes are detected. If it fails to detect the user's eyes during the tracking state, the detection state is switched.
사용자의 눈이 탐지되지 않은 경우, 탐지 상태에서 눈 깜빡임을 검출하기 위한 단계들이 수행되며, 탐지 상태에서의 초기 탐색 영역은 입력 화상 프레임의 전체 영역으로 설정될 수 있다. 사용자의 눈이 탐지되는 경우, 탐색 영역은 탐지된(또는 추정된) 눈의 위치를 기반으로 설정될 수 있다.When the user's eyes are not detected, steps for detecting eye blinking in the detection state are performed, and the initial search area in the detection state may be set as the entire area of the input image frame. When the user's eyes are detected, the search area may be set based on the detected (or estimated) position of the eyes.
추적 상태에서 탐색 영역 내에서 눈의 위치를 찾는데 실패하는 경우, 탐색 상태로 전환하기 전에, 눈 위치를 예측하여 탐색 영역을 재설정하고, 재설정된 탐색 영역에서 눈 위치가 검출되는 경우, 추적 상태로 유지된다. 만약, 재설정된 탐색 영역에서도 눈 위치가 검출되지 않는 경우, 탐색 상태로 전환될 수 있다.In the case of failure to find the eye position within the search area in the tracking state, before switching to the search state, the search area is predicted and the search area is reset, and if the eye position is detected in the reset search area, the tracking state is maintained. do. If the eye position is not detected even in the reset search area, it may be switched to the search state.
탐색 영역의 재설정을 위해, 방향 센서의 측정값들이 이용될 수 있다. 입력 화상 프레임에서 사용자의 눈의 위치는 스마트폰(모바일 단말기)의 종류, 사용자의 폰사용 습관 등의 여러 요인들에 따라 다양하게 변동할 수 있다.To reset the search area, measurements of the direction sensor may be used. The position of the user's eyes in the input image frame may vary in various ways depending on various factors such as the type of smartphone (mobile terminal) and the user's phone usage habit.
이러한 모바일 단말기의 종류, 사용자의 습관 등의 요인들을 고려하여, 효율적으로 탐색 영역을 설정하기 위하여, 설정부(110)는 모바일 단말기의 방향 측정값을 이용한 회귀 분석 기반으로 눈의 위치를 추정하고, 추정된 눈의 위치를 기준으로 탐색 영역을 설정할 수 있다.In order to efficiently set the search area in consideration of factors such as the type of the mobile terminal and the user's habit, the
도 5는 도 1의 단계 S10의 흐름도이다. 도 6은 본 발명의 실시예에 따른 눈 깜빡임 검출 장치를 구성하는 설정부의 구성도이다. 도 2, 도 5 및 도 6을 참조하면, 설정부(110)는 회귀 분석부(112) 및 탐색영역 설정부(114)를 포함할 수 있다.5 is a flowchart of step S10 of FIG. 1. 6 is a configuration diagram of a setting unit configuring an apparatus for detecting blinking eyes according to an exemplary embodiment of the present invention. 2, 5, and 6, the
탐색 상태 또는 추적 상태에서, 이미지들 또는 입력 화상 프레임들에서 눈이 검출되는 경우, 이미지들 또는 입력 화상 프레임들에서의 눈의 위치가 모바일 단말기의 방향 측정값과 함께 저장부(140)에 저장된다.When eyes are detected in images or input image frames in the search state or tracking state, the position of the eyes in the images or input image frames is stored in the
회귀 분석부(112)는 모바일 단말기의 방향 측정부(150)로부터 입력되는 방향 측정값들과 이미지들 또는 입력 화상 프레임들에서 사용자의 눈 위치를 연관시키기 위해, 실시간 회귀 분석을 이용한다.The
실시예에서, 회귀 분석부(112)는 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들 및 이미지들이 획득된 시점들에서의 모바일 단말기의 방향 정보들을 기반으로, 회귀 분석(Regression analysis)에 의해 눈 위치 정보들 및 방향 정보들 간의 관계를 나타내는 회귀 방정식과, 회귀 방정식의 편차 정보(표준편차, 분산, 결정계수 등)를 결정할 수 있다(S12).In an embodiment, the
실시예에서, 회귀 방정식은 모바일 단말기의 각 축방향 자세와, 입력 화상 프레임의 X축(가로 방향) 및 Y축(세로 방향) 위치의 선형 관계를 나타내는 선형계수들과, 회귀 방정식의 오차를 나타내는 편차 정보를 포함할 수 있다.In an embodiment, the regression equation is linear coefficients representing a linear relationship between each axial posture of the mobile terminal, the X-axis (horizontal direction) and Y-axis (vertical direction) positions of the input image frame, and the error of the regression equation. It may include deviation information.
탐색영역 설정부(114)는 회귀 방정식에 모바일 단말기에 의해 획득된 방향 측정값을 적용하여 눈 위치를 추정하고, 추정된 눈 위치를 중심으로 탐색 영역을 설정할 수 있다(S14).The search
실시예에서, 탐색 영역의 크기는 회귀 방정식에 대한 편차 정보를 기반으로 설정될 수 있다. 회귀 분석의 데이터 편차가 커질수록 탐색 영역의 크기(면적)가 증가하도록 탐색 영역을 설정할 수 있다.In an embodiment, the size of the search area may be set based on deviation information for the regression equation. The search area can be set so that the size (area) of the search area increases as the data deviation of the regression analysis increases.
회귀 분석의 데이터 편차에 따라 탐색 영역의 크기를 조절하면, 데이터 편차가 큰 모바일 단말기 사용 습관을 가진 사용자에 대해서는 탐색 영역의 크기를 증가시켜 눈 검출 성공률을 높이고, 데이터 편차가 작은 모바일 단말기 사용 습관을 가진 사용자에 대해서는 탐색 영역의 크기를 최소화하여 눈 검출을 위한 연산 효율을 높일 수 있다.If the size of the search area is adjusted according to the data deviation of the regression analysis, the size of the search area is increased for users with a habit of using a mobile terminal with a large data deviation, increasing the eye detection success rate, and improving the habit of using a mobile terminal with a small data deviation With respect to the possessed user, the size of the search area can be minimized to increase the computational efficiency for eye detection.
탐색 영역 내에서 눈이 검출되는 경우, 해당 탐색 영역 내에서 눈 깜빡임이 검출된다. 만약, 단계 S14에서 설정된 탐색 영역 내에서 눈이 검출되지 않는 경우, 추적 상태에서 탐색 상태로 전환하여 전체 입력 화상 프레임을 대상으로 눈을 검출하는 과정이 수행될 수 있다.When eyes are detected within the search area, eye blinking is detected within the search area. If no eyes are detected in the search area set in step S14, a process of detecting eyes for the entire input image frame may be performed by switching from the tracking state to the search state.
입력 화상 프레임에서 눈의 객체 크기는 카메라와 사용자의 눈 간의 거리에 따라 변화한다. 따라서, 카메라와 사용자 간의 거리에 적응적으로, 입력 화상 프레임의 탐색 영역에서 적절한 눈 영역을 검출하기 위하여, 검출부(120)는 복수개의 상이한 크기의 슬라이딩 윈도우들을 탐색 영역에 병렬 스캔하여 눈 영역을 검출할 수 있다.The size of the eye object in the input image frame changes according to the distance between the camera and the user's eye. Therefore, in order to adaptively detect the eye area in the search area of the input image frame, adaptively to the distance between the camera and the user, the
도 7은 도 1의 단계 S20의 흐름도이다. 도 2 및 도 7을 참조하면, 먼저 검출부(120)는 탐색 영역을 복수개의 상이한 크기를 가지는 슬라이딩 윈도우들로 스캔할 수 있다(S22). 각 슬라이딩 윈도우는 탐색 영역보다 작은 크기를 가지도록 설정된다.7 is a flowchart of step S20 of FIG. 1. Referring to FIGS. 2 and 7, first, the
예를 들어, 입력 화상 프레임의 크기가 240×360인 경우, 검출부(120)는 79×106 크기의 탐색 영역에서 25×25, 28×28, 31×31의 상이한 크기를 가지는 사각형 슬라이딩 윈도우들을 병렬 스캔할 수 있다.For example, when the size of the input image frame is 240×360, the
검출부(120)는 각 슬라이딩 윈도우들에 대해, 서포트 벡터 머신을 기반으로 눈 모양과의 유사도를 나타내는 스코어를 산출하고(S24), 슬라이딩 윈도우들에 대해 산출된 스코어들을 기반으로 탐색 영역에서 눈 위치를 검출할 수 있다(S26).The
실시예에서, 검출부(120)는 설정된 기준값 이상의 스코어를 가지는 적어도 하나의 슬라이딩 윈도우 중 가장 작은 크기의 슬라이딩 윈도우를 기반으로 눈 영역을 검출할 수 있다. 검출부(120)는 눈 영역은 non-maximum suppression 기법을 이용하여, 슬라이딩 윈도우 별로 눈 영역을 결정할 수 있다.In an embodiment, the
즉, 판단부(130)에서 최소한의 크기를 가지는 눈 여역에 대해 눈 깜빡임을 검출하도록 하여 연산 처리량을 줄이고, 판단부(130)가 자원 한정된 모바일 단말기에서 연산 효율적인 동시에 신뢰성 있게 눈 깜빡임을 검출할 수 있도록 하기 위하여, 검출부(120)는 눈일 확률이 큰 높은 스코어를 가지는 슬라이딩 윈도우들의 눈 영역들 중, 가장 작은 크기의 슬라이딩 윈도우의 눈 영역을 선택한다.That is, by allowing the
상용 스마트폰들에 대한 실험 결과들은 본 발명이 94% 이상의 높은 정확도와, 22 fps 이상의 높은 처리율을 가지는 것을 보여준다. 본 발명에 대한 실험 결과들은 상용 스마트폰들에서 nave 알고리즘 대비 25% 포인트 향상된 성능을 나타내었다. 이하에서 보다 상세히 본 발명의 실시예에 대해 설명한다.Experimental results for commercial smartphones show that the present invention has a high accuracy of 94% or more and a high throughput of 22 fps or more. Experimental results for the present invention are na Compared to the ve algorithm, the performance is improved by 25% points. Hereinafter, embodiments of the present invention will be described in more detail.
뜬 눈 및 감은 눈 이미지 클립들로 이루어진 CEW 데이터 집합과, 배경 이미지 클립들의 데이터 집합을 이용하여, 서포트 벡터 머신 및 콘볼루션 신경망(LeNet-5)을 포함하는 두 개의 분류기들을 학습하였다.Two classifiers including a support vector machine and a convolutional neural network (LeNet-5) were trained using a CEW data set consisting of open and closed eye image clips and a data set of background image clips.
서포트 벡터 머신은 뜬 눈 및 감은 눈 이미지들(총 9692개의 이미지들)을 양성 클래스로 분류하고, 9810개의 배경 이미지 클립들은 음성 클래스로 분류하여, 학습하였다. LeNet-5은 3개의 상이한 라벨들, 즉 4924개의 뜬 눈 이미지들, 4870개의 감은 눈 이미지들 및 4905개의 배경 이미지들을 이용하여 학습하였다.The support vector machine classified open-eye and closed-eye images (a total of 9692 images) into a positive class, and 9810 background image clips were classified into a negative class, and learned. LeNet-5 was trained using 3 different labels: 4924 open eye images, 4870 closed eye images and 4905 background images.
실험은 Qualcomm Snapdragon 820 프로세서를 갖는 LG V20 스마트폰(모바일 단말기)을 이용하여 수행되었으며, 240×360의 비디오 입력 해상도를 사용하였다. 탐색 단계에서 입력 화상 프레임에 눈이 검출되면, 탐색 영역은 눈 위치를 중심으로 79×106 영역으로 설정하였다.The experiment was performed using an LG V20 smartphone (mobile terminal) with a Qualcomm Snapdragon 820 processor, and a video input resolution of 240×360 was used. When eyes are detected in the input image frame in the search step, the search area is set to a 79×106 area around the eye position.
도 8은 본 발명의 실시예에 따른 눈 깜빡임 검출 방법의 정확도를 보여주는 도면이다. 도 8에서, 정확도(Precision)와, 리콜(Recall) 비율은 참긍정(true positives), 긍정오류(false positives) 및 실제긍정(actual positives) 개수를 기반으로 산출되었으며, 정확도는 참긍정/(참긍정+긍정오류) 개수 비율, 리콜 비율은 참긍정/실제긍정 개수 비율이다. 도 8에 나타낸 바와 같이, 본 발명의 정확도는 94.4%로 높은 수치를 보였으며, 리콜 비율(89.7%) 보다 높은 것으로 나타났다.8 is a diagram showing the accuracy of a method for detecting eye blinking according to an embodiment of the present invention. In FIG. 8, the accuracy and recall ratio were calculated based on the number of true positives, false positives, and actual positives, and the accuracy was true positive/(true). Positive + positive errors) count ratio, recall ratio is the true positive/actual positive number ratio. As shown in FIG. 8, the accuracy of the present invention was 94.4%, which was high, and was higher than the recall rate (89.7%).
본 발명의 실시예에 의하면, 두 개의 기계 학습 분류기들(HOG 특징들을 가지는 선형 SVM 분류기, LeNet-5 콘볼루션 신경망 모델)을 결합한 하이브리드 분류 시스템에 의해, 자원 한정된 모바일 단말기에서 효율적이고 신뢰성 있게 눈 깜빡임(eye blinking)을 검출할 수 있다.According to an embodiment of the present invention, by a hybrid classification system combining two machine learning classifiers (a linear SVM classifier with HOG features, a LeNet-5 convolutional neural network model), eye blinking efficiently and reliably in a resource-limited mobile terminal (eye blinking) can be detected.
본 발명의 실시예에 따른 방법은 예를 들어 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 SRAM(Static RAM), DRAM(Dynamic RAM), SDRAM(Synchronous DRAM) 등과 같은 휘발성 메모리, ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리 장치, PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM)과 같은 불휘발성 메모리, 플로피 디스크, 하드 디스크 또는 광학적 판독 매체 예를 들어 시디롬, 디브이디 등과 같은 형태의 저장매체일 수 있으나, 이에 제한되지는 않는다.The method according to the embodiment of the present invention can be written as a program that can be executed on a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. Computer-readable recording media include volatile memories such as SRAM (Static RAM), DRAM (Dynamic RAM), SDRAM (Synchronous DRAM), Read Only Memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Nonvolatile memory such as Electrically Erasable and Programmable ROM (EEPROM), flash memory device, phase-change RAM (PRAM), magnetic RAM (MRAM), resistive RAM (RRAM), ferroelectric RAM (FRAM), floppy disk, hard disk, or The optical reading medium may be, for example, a storage medium such as a CD-ROM or a DVD, but is not limited thereto.
이상의 실시예들은 본 발명의 이해를 돕기 위하여 제시된 것으로, 본 발명의 범위를 제한하지 않으며, 이로부터 다양한 변형 가능한 실시예들도 본 발명의 범위에 속하는 것임을 이해하여야 한다. 본 발명의 기술적 보호범위는 특허청구범위의 기술적 사상에 의해 정해져야 할 것이며, 본 발명의 기술적 보호범위는 특허청구범위의 문언적 기재 그 자체로 한정되는 것이 아니라 실질적으로는 기술적 가치가 균등한 범주의 발명까지 미치는 것임을 이해하여야 한다.It should be understood that the above embodiments have been presented to aid the understanding of the present invention, and do not limit the scope of the present invention, and various deformable embodiments are also within the scope of the present invention. The technical protection scope of the present invention should be determined by the technical idea of the claims, and the technical protection scope of the present invention is not limited to the literal description of the claims itself, but a scope that has substantially equal technical value. It should be understood that it extends to the invention of.
100: 눈 깜빡임 검출 장치
110: 설정부
112: 회귀 분석부
114: 탐색영역 설정부
120: 검출부
130: 판단부
140: 저장부
150: 방향 측정부
ROI: 탐색 영역
CR: 눈 영역100: eye blink detection device
110: setting unit
112: regression analysis unit
114: search area setting unit
120: detection unit
130: judgment unit
140: storage unit
150: direction measuring unit
ROI: navigation area
CR: eye area
Claims (17)
서포트 벡터 머신을 기반으로, 상기 입력 화상 프레임의 상기 탐색 영역 내에서 눈 영역을 검출하는 단계; 및
콘볼루션 신경망 모델을 기반으로, 상기 눈 영역 내에서 눈 깜빡임 상태를 판단하는 단계를 포함하며,
상기 눈 영역을 검출하는 단계는,
상기 탐색 영역을 복수개의 상이한 크기를 가지는 슬라이딩 윈도우들로 스캔하는 단계;
상기 슬라이딩 윈도우들에 대해, 상기 서포트 벡터 머신을 기반으로 눈 모양과의 유사도를 나타내는 스코어들을 산출하는 단계; 및
설정된 기준값 이상의 스코어를 가지는 적어도 하나의 슬라이딩 윈도우 중 가장 작은 크기의 슬라이딩 윈도우를 기반으로 상기 눈 영역을 검출하는 단계를 포함하는,
눈 깜빡임 검출 방법.Setting a search area for eye detection in the input image frame;
Detecting an eye area within the search area of the input image frame based on a support vector machine; And
Based on the convolutional neural network model, comprising the step of determining an eye blinking state within the eye region,
The step of detecting the eye area,
Scanning the search area with a plurality of sliding windows having different sizes;
Calculating scores representing a similarity to an eye shape for the sliding windows based on the support vector machine; And
Including the step of detecting the eye region based on a sliding window having a smallest size among at least one sliding window having a score equal to or greater than a set reference value,
How to detect blinking.
상기 눈 영역을 검출하는 단계는, 상기 서포트 벡터 머신 및 에지 방향 히스토그램 특징을 기반으로 상기 눈 영역을 검출하고,
상기 눈 깜빡임 상태를 판단하는 단계는, LeNet-5 콘볼루션 신경망 모델을 기반으로 상기 눈 깜빡임 상태를 판단하는 눈 깜빡임 검출 방법.The method of claim 1,
The detecting of the eye area includes detecting the eye area based on the support vector machine and edge direction histogram features,
The determining of the eye blinking state may include determining the eye blinking state based on a LeNet-5 convolutional neural network model.
상기 눈 깜빡임 상태를 판단하는 단계는, 상기 눈 영역에 대해 감은 눈 상태, 뜬 눈 상태 및 배경 상태 중의 어느 하나를 결정하는 눈 깜빡임 검출 방법.The method of claim 1,
The determining of the eye blinking state includes determining one of a closed eye state, an open eye state, and a background state for the eye area.
상기 탐색 영역을 설정하는 단계는, 상기 입력 화상 프레임을 획득한 모바일 단말기에 의해 측정되는 방향 측정값을 기반으로 상기 탐색 영역을 설정하는 눈 깜빡임 검출 방법.The method of claim 1,
The setting of the search area includes setting the search area based on a direction measurement value measured by a mobile terminal that has acquired the input image frame.
상기 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들 및 상기 이미지들이 획득된 시점들에서의 상기 모바일 단말기의 방향 정보들을 기반으로, 회귀 분석에 의해 상기 눈 위치 정보들 및 상기 방향 정보들 간의 관계를 나타내는 회귀 방정식을 결정하는 단계를 더 포함하는 눈 깜빡임 검출 방법.The method of claim 5,
Between the eye position information and the direction information by regression analysis based on eye position information on the images acquired by the mobile terminal and the direction information of the mobile terminal at the time points at which the images are acquired. An eye blink detection method further comprising the step of determining a regression equation representing the relationship.
상기 탐색 영역을 설정하는 단계는,
상기 회귀 방정식에 상기 방향 측정값을 적용하여 상기 눈 위치를 추정하는 단계; 및
추정된 상기 눈 위치를 중심으로 상기 탐색 영역을 설정하는 단계를 포함하는 눈 깜빡임 검출 방법.The method of claim 6,
The step of setting the search area,
Estimating the eye position by applying the direction measurement value to the regression equation; And
And setting the search area around the estimated eye position.
상기 탐색 영역의 크기는 상기 회귀 방정식에 대한 편차 정보를 기반으로 설정되는 눈 깜빡임 검출 방법.The method of claim 6,
The size of the search area is set based on deviation information for the regression equation.
서포트 벡터 머신을 기반으로, 상기 입력 화상 프레임의 상기 탐색 영역 내에서 눈 영역을 검출하도록 구성되는 검출부; 및
콘볼루션 신경망 모델을 기반으로, 상기 눈 영역 내에서 눈 깜빡임 상태를 판단하도록 구성되는 판단부를 포함하고,
상기 검출부는,
상기 탐색 영역을 복수개의 상이한 크기를 가지는 슬라이딩 윈도우들로 스캔하고;
상기 슬라이딩 윈도우들에 대해 상기 서포트 벡터 머신을 기반으로 눈 모양과의 유사도를 나타내는 스코어들을 산출하고;
상기 스코어들을 기반으로 상기 탐색 영역에서 상기 눈 위치를 검출하고; 그리고
설정된 기준값 이상의 스코어를 가지는 적어도 하나의 슬라이딩 윈도우 중 가장 작은 크기의 슬라이딩 윈도우를 기반으로 상기 눈 영역을 검출하도록 구성되는,
눈 깜빡임 검출 장치.A setting unit configured to set a search area for eye detection in the input image frame;
A detection unit configured to detect an eye area within the search area of the input image frame based on a support vector machine; And
Based on the convolutional neural network model, including a determination unit configured to determine an eye blinking state within the eye region,
The detection unit,
Scanning the search area with a plurality of sliding windows having different sizes;
Calculating scores representing a similarity to an eye shape for the sliding windows based on the support vector machine;
Detecting the eye position in the search area based on the scores; And
Configured to detect the eye region based on a sliding window having a smallest size among at least one sliding window having a score equal to or greater than a set reference value,
Eye blink detection device.
상기 검출부는, 상기 서포트 벡터 머신 및 에지 방향 히스토그램 특징을 기반으로 상기 눈 영역을 검출하고,
상기 판단부는, LeNet-5 콘볼루션 신경망 모델을 기반으로, 감은 눈 상태, 뜬 눈 상태 및 배경 상태 중에서 눈 깜빡임 상태를 결정하는 눈 깜빡임 검출 장치.The method of claim 12,
The detection unit detects the eye region based on the support vector machine and edge direction histogram features,
The determining unit, based on the LeNet-5 convolutional neural network model, determines an eye blinking state from among a closed eye state, an open eye state, and a background state.
상기 설정부는, 상기 입력 화상 프레임을 획득한 모바일 단말기에 의해 측정되는 방향 측정값을 기반으로 상기 탐색 영역을 설정하도록 구성되는 눈 깜빡임 검출 장치.The method of claim 12,
The setting unit is configured to set the search area based on a direction measurement value measured by the mobile terminal that has obtained the input image frame.
상기 설정부는, 상기 모바일 단말기에 의해 획득된 이미지들 상에서의 눈 위치 정보들 및 상기 이미지들이 획득된 시점들에서의 상기 모바일 단말기의 방향 정보들을 기반으로, 회귀 분석에 의해 상기 눈 위치 정보들 및 상기 방향 정보들 간의 관계를 나타내는 회귀 방정식을 결정하도록 구성되는 눈 깜빡임 검출 장치.The method of claim 14,
The setting unit, based on the eye position information on the images acquired by the mobile terminal and the direction information of the mobile terminal at the time points at which the images are acquired, the eye position information and the An eye blink detection device configured to determine a regression equation representing a relationship between direction information.
상기 설정부는,
상기 회귀 방정식에 상기 방향 측정값을 적용하여 상기 눈 위치를 추정하고;
상기 회귀 방정식에 대한 편차 정보를 기반으로 상기 탐색 영역의 크기를 결정하고; 그리고
추정된 상기 눈 위치 및 상기 탐색 영역의 크기를 기반으로 상기 탐색 영역을 설정하도록 구성되는 눈 깜빡임 검출 장치.The method of claim 15,
The setting unit,
Estimating the eye position by applying the direction measurement to the regression equation;
Determining the size of the search area based on the deviation information for the regression equation; And
An apparatus for detecting eye blinking, configured to set the search area based on the estimated eye position and the size of the search area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180086435A KR102225002B1 (en) | 2018-07-25 | 2018-07-25 | Deep neural network based object detecting apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180086435A KR102225002B1 (en) | 2018-07-25 | 2018-07-25 | Deep neural network based object detecting apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200017576A KR20200017576A (en) | 2020-02-19 |
KR102225002B1 true KR102225002B1 (en) | 2021-03-10 |
Family
ID=69669701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180086435A KR102225002B1 (en) | 2018-07-25 | 2018-07-25 | Deep neural network based object detecting apparatus and method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102225002B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022058326A1 (en) * | 2020-09-17 | 2022-03-24 | Essilor International | A device and a computer-implemented method for determining a behavior of a target user |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009176005A (en) * | 2008-01-24 | 2009-08-06 | Toyota Motor Corp | Characteristic point detection method for face image and its device |
JP2009211180A (en) * | 2008-02-29 | 2009-09-17 | Canon Inc | Device, method and program for deciding opening/closing degree of eye, and imaging apparatus |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160118508A (en) * | 2015-04-02 | 2016-10-12 | 삼성에스디에스 주식회사 | Apparatus and method for user authentication |
-
2018
- 2018-07-25 KR KR1020180086435A patent/KR102225002B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009176005A (en) * | 2008-01-24 | 2009-08-06 | Toyota Motor Corp | Characteristic point detection method for face image and its device |
JP2009211180A (en) * | 2008-02-29 | 2009-09-17 | Canon Inc | Device, method and program for deciding opening/closing degree of eye, and imaging apparatus |
Also Published As
Publication number | Publication date |
---|---|
KR20200017576A (en) | 2020-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9292745B2 (en) | Object detection apparatus and method therefor | |
US10417773B2 (en) | Method and apparatus for detecting object in moving image and storage medium storing program thereof | |
WO2019237516A1 (en) | Target tracking method and apparatus, computer device, and storage medium | |
JP4830650B2 (en) | Tracking device | |
JP4501937B2 (en) | Face feature point detection device, feature point detection device | |
US10748294B2 (en) | Method, system, and computer-readable recording medium for image object tracking | |
JP6007682B2 (en) | Image processing apparatus, image processing method, and program | |
US11216629B2 (en) | Two-dimensional code identification and positioning | |
KR20190139262A (en) | Method and apparatus, server and terminal device for acquiring vehicle loss evaluation image | |
US9245206B2 (en) | Image processing apparatus and image processing method | |
JP2018509678A (en) | Target acquisition method and apparatus | |
US8977060B2 (en) | Motion stabilization and detection of articulated objects | |
JP4533836B2 (en) | Fluctuating region detection apparatus and method | |
US9105101B2 (en) | Image tracking device and image tracking method thereof | |
JP2020149111A (en) | Object tracking device and object tracking method | |
JP7354767B2 (en) | Object tracking device and object tracking method | |
US20150116543A1 (en) | Information processing apparatus, information processing method, and storage medium | |
JP2020149642A (en) | Object tracking device and object tracking method | |
US20160350615A1 (en) | Image processing apparatus, image processing method, and storage medium storing program for executing image processing method | |
WO2017094140A1 (en) | Object detection device and object detection method | |
KR20130091441A (en) | Object tracking device and method for controlling thereof | |
CN109753886B (en) | Face image evaluation method, device and equipment | |
KR102225002B1 (en) | Deep neural network based object detecting apparatus and method | |
EP3686844A1 (en) | Moving target tracking method and system | |
KR100977259B1 (en) | Method for a human searching and tracking using a multifulscale histogram of oriented gradient |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |